我可以在调用X509\u STORE\u add\u cert(X509\u STORE*ctx,X509*x)后释放X509*x吗?
我有几个问题 1.假设我有以下代码我可以在调用X509\u STORE\u add\u cert(X509\u STORE*ctx,X509*x)后释放X509*x吗?,c,ssl,C,Ssl,我有几个问题 1.假设我有以下代码 X509 *cert = NULL; //point cert to some valid certs in the memory. const SSL_METHOD *tlsv1x_method = TLSv1_2_method(); SSL_CTX *ctx = SSL_CTX_new(tlsv1x_method); X509_STORE *x509_store = SSL_CTX_get_cert_store(ctx); X509_STORE_add_
X509 *cert = NULL;
//point cert to some valid certs in the memory.
const SSL_METHOD *tlsv1x_method = TLSv1_2_method();
SSL_CTX *ctx = SSL_CTX_new(tlsv1x_method);
X509_STORE *x509_store = SSL_CTX_get_cert_store(ctx);
X509_STORE_add_cert(x509_store,cert);
在调用此后,ssl将保留证书的本地副本。还是会引用这个
指针(证书)始终有效。我是否可以释放/覆盖此指针(证书),而不会对ssl产生任何不利影响
while(ssl_ctx->references >0){
SSL_CTX_free(ssl_ctx);
}
这背后的想法是释放与ctx相关的所有结构,因为SSL_ctx_free仅在引用计数为0时释放所有结构(证书等)
任何帮助都将不胜感激。我有一个类似于你第一个问题的问题。回答(大部分)您的问题: