mirror of
https://github.com/python/cpython.git
synced 2025-08-03 16:39:00 +00:00
Deny eval() direct access to builtins (GH-20713)
This commit is contained in:
parent
7633371dac
commit
3ff51d425e
1 changed files with 2 additions and 1 deletions
|
@ -407,7 +407,8 @@ def namedtuple(typename, field_names, *, rename=False, defaults=None, module=Non
|
|||
# Create all the named tuple methods to be added to the class namespace
|
||||
|
||||
s = f'lambda _cls, {arg_list}: _tuple_new(_cls, ({arg_list}))'
|
||||
namespace = {'_tuple_new': tuple_new, '__name__': f'namedtuple_{typename}'}
|
||||
namespace = {'_tuple_new': tuple_new, '__builtins__': None,
|
||||
'__name__': f'namedtuple_{typename}'}
|
||||
__new__ = eval(s, namespace)
|
||||
__new__.__doc__ = f'Create new instance of {typename}({arg_list})'
|
||||
if defaults is not None:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue