Christian Heimes <li...@cheimes.de> added the comment:

It's very much the same for OpenSSL 3.0.0: libssl.so and libcrypto.so.

$ ldd build/lib.linux-x86_64-3.10/_ssl.cpython-310-x86_64-linux-gnu.so 
        linux-vdso.so.1 (0x00007ffffa3cc000)
        libssl.so.3 => 
/home/heimes/dev/python/multissl/openssl/3.0.0-alpha12/lib/libssl.so.3 
(0x00007f1ab0b66000)
        libcrypto.so.3 => 
/home/heimes/dev/python/multissl/openssl/3.0.0-alpha12/lib/libcrypto.so.3 
(0x00007f1ab06b1000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f1ab065f000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f1ab0494000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f1ab048d000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f1ab0c55000)


The external engines and OSSL providers are external plugins. They are very 
much akin to Python's extension modules. OpenSSL loads them with dlopen(), 
dlsym()s an init function and finally calls the init function. It uses either 
RTLD_NOW or RTLD_NOW | RTLD_GLOBAL dlopen() flags.

The engines and OSSL providers depend on libcrypto.so. AFAIK this won't play 
will with static linking.

$ ldd ../multissl/openssl/3.0.0-alpha12/lib/engines-3/afalg.so 
        linux-vdso.so.1 (0x00007fffa417d000)
        libcrypto.so.3 => 
/home/heimes/dev/python/multissl/openssl/3.0.0-alpha12/lib/libcrypto.so.3 
(0x00007fbcb3c75000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fbcb3c3e000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fbcb3c1c000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fbcb3a51000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fbcb4133000)

$ ldd ../multissl/openssl/3.0.0-alpha12/lib/ossl-modules/legacy.so 
        linux-vdso.so.1 (0x00007ffd3ccc0000)
        libcrypto.so.3 => 
/home/heimes/dev/python/multissl/openssl/3.0.0-alpha12/lib/libcrypto.so.3 
(0x00007f5524f36000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f5524eff000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5524edd000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f5524d12000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f5525419000)

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue43466>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to