Plan 9 from Bell Labs’s /usr/web/sources/contrib/jas/root/sys/lib/python2.7/test/crashers/gc_has_finalizer.pyc

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


��Qc@stdZddlZddd��YZe�Ze�Zdeje<ee_ee_ej�[[ej�dS(s�
The gc module can still invoke arbitrary Python code and crash.
This is an attack against _PyInstance_Lookup(), which is documented
as follows:

    The point of this routine is that it never calls arbitrary Python
    code, so is always "safe":  all it does is dict lookups.

But of course dict lookups can call arbitrary Python code.
The following code causes mutation of the object graph during
the call to has_finalizer() in gcmodule.c, and that might
segfault.
i�NtAcBseZd�Zd�ZRS(cCs
td�S(Nt__del__(thash(tself((s4/sys/lib/python2.7/test/crashers/gc_has_finalizer.pyt__hash__scCs
|`tS(N(tothertFalse(RR((s4/sys/lib/python2.7/test/crashers/gc_has_finalizer.pyt__eq__s(t__name__t
__module__RR(((s4/sys/lib/python2.7/test/crashers/gc_has_finalizer.pyRs	((t__doc__tgcRtatbt__dict__Rtcollect(((s4/sys/lib/python2.7/test/crashers/gc_has_finalizer.pyt<module>
s		
		


Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to webmaster@9p.io.