What | Removed | Added |
---|---|---|
Status | NEW | IN_PROGRESS |
CC | vcizek@suse.com |
Here's why the crash occurs: The problem is that OPENSSL_init_crypto() will fail with the OPENSSL_INIT_NO_LOAD_CONFIG flag if it was previously called with OPENSSL_INIT_LOAD_CONFIG and vice versa. And that's exactly what happened here. Python in init_ssl() calls OpenSSL_add_all_algorithms() which in openssl 1.1 is a macro that expands to: OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS | OPENSSL_INIT_LOAD_CONFIG, NULL); Later, through various imports, salt-call in rsax931.py's _init_libcrypto() calls OPENSSL_init_crypto(OPENSSL_INIT_NO_LOAD_CONFIG | OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, NULL) This latter call fails and results in the backtrace from comment 0. I'll do some more investigation next week.