equal
deleted
inserted
replaced
|
1 """ |
|
2 Broken bytecode objects can easily crash the interpreter. |
|
3 |
|
4 This is not going to be fixed. It is generally agreed that there is no |
|
5 point in writing a bytecode verifier and putting it in CPython just for |
|
6 this. Moreover, a verifier is bound to accept only a subset of all safe |
|
7 bytecodes, so it could lead to unnecessary breakage. |
|
8 |
|
9 For security purposes, "restricted" interpreters are not going to let |
|
10 the user build or load random bytecodes anyway. Otherwise, this is a |
|
11 "won't fix" case. |
|
12 |
|
13 """ |
|
14 |
|
15 import types |
|
16 |
|
17 co = types.CodeType(0, 0, 0, 0, '\x04\x71\x00\x00', (), |
|
18 (), (), '', '', 1, '') |
|
19 exec co |