Staging
v0.5.1
https://github.com/python/cpython
Raw File
Tip revision: 73b4a7a7943026b90b3d04932ffb1efd0d6b107e authored by Larry Hastings on 10 August 2015, 04:37:20 UTC
Merged fixes for two bad bugs. This will be the new Python 3.5.0rc1.
Tip revision: 73b4a7a
bogus_code_obj.py
"""
Broken bytecode objects can easily crash the interpreter.

This is not going to be fixed.  It is generally agreed that there is no
point in writing a bytecode verifier and putting it in CPython just for
this.  Moreover, a verifier is bound to accept only a subset of all safe
bytecodes, so it could lead to unnecessary breakage.

For security purposes, "restricted" interpreters are not going to let
the user build or load random bytecodes anyway.  Otherwise, this is a
"won't fix" case.

"""

import types

co = types.CodeType(0, 0, 0, 0, 0, b'\x04\x71\x00\x00',
                    (), (), (), '', '', 1, b'')
exec(co)
back to top