(De-)openssl 库的初始化
概述
Openssl 由 2 个库组成:libcrypto
和 libssl
。在 openssl API 可以在应用程序中使用之前,预计将执行强制初始化过程。一旦应用程序完成与 openssl 相关的工作,就应该清理分配的资源。
下面的代码完成初始化,但是,开发人员可以自由初始化他感兴趣的 openssl 内容。
初始化 libcrypto
ERR_load_crypto_strings();
OpenSSL_add_all_algorithms();
OPENSSL_config(NULL); // Load default configuration (e.g. openssl.conf)
初始化 libssl
OPENSSL_init_ssl(0, NULL);
取消初始化
CONF_modules_unload(1);
EVP_cleanup();
CRYPTO_cleanup_all_ex_data();
ERR_remove_state();
ERR_free_strings();