Hi, all:
In one of our components, there is a call to OpenSSL_add_all_algorithms() in a
function AppInit() which is called when the application is initialized.
From a debugger, I am seeing the AppInit() is definitely called, however, when
it comes to make call to PEM_bio_read_PrivateKey(), it failed with SSL error:
error:0906B072:PEM routines:PEM_get_EVP_CIPHER_INFO: :unsupported encryption
As an experiment, I add OpenSSL_add_all_algorithm right before the call to
PEM_bio_read_PrivateKey(), then the call succeeds.
From Openssl documents, OpenSSL_add_all_algorithm loads the global table for
all the ciphers and the application should only call it once and clean it up
when the application exits.
The behavior I am seeing during my test is not consistent with what the
document describes. I am wondering if you guys have any experience about that.
Is this a multi-thread issue? What is the best practice to initialize the SSL
global cipher table in the application? If I have to call it multiple times,
then that means I have to clean it up afterward multiple times. That would be
very inefficient.
Thanks for any input,
-Yolanda
:��I"Ϯ��r�m����
(����Z+�K�+����1���x��h����[�z�(����Z+���f�y�������f���h��)z{,���