[issue18227] Use Python memory allocators in external libraries like zlib or OpenSSL

STINNER Victor report at bugs.python.org
Fri Jun 21 23:19:28 CEST 2013


STINNER Victor added the comment:

It looks like CRYPTO_set_mem_functions() of OpenSSL 1.0.1e-4.fc18 does not work: CRYPTO_set_mem_functions() calls indirectly CRYPTO_malloc() which sets "allow_customize = 0;" and so CRYPTO_set_mem_functions() does nothing (just return 0, instead of 1).

Gdb trace with a modified _ssl module:

#0  0x0000003803463100 in CRYPTO_malloc () from /lib64/libcrypto.so.10
#1  0x0000003803542fae in FIPS_drbg_new () from /lib64/libcrypto.so.10
#2  0x00000038035448e1 in FIPS_drbg_health_check () from /lib64/libcrypto.so.10
#3  0x0000003803542e88 in FIPS_drbg_init () from /lib64/libcrypto.so.10
#4  0x00000038034cf9d1 in RAND_init_fips () from /lib64/libcrypto.so.10
#5  0x0000003803465764 in OPENSSL_init_library () from /lib64/libcrypto.so.10
#6  0x0000003803462c61 in CRYPTO_set_mem_functions () from /lib64/libcrypto.so.10
#7  0x00007ffff135bc6c in PyInit__ssl () at /home/haypo/prog/python/default/Modules/_ssl.c:3180

See the code:
http://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=crypto/mem.c;h=f7984fa958eb1edd6c61f6667f3f2b29753be662;hb=HEAD#l124

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue18227>
_______________________________________


More information about the Python-bugs-list mailing list