From d8fbce1deb24a174f327786684f862cc39b5ac0a Mon Sep 17 00:00:00 2001 From: Sergey Kandaurov Date: Thu, 31 Mar 2016 23:38:37 +0300 Subject: [PATCH] SSL: X509 was made opaque in OpenSSL 1.1.0. To increment reference counters we now use newly introduced X509_up_ref() function. --- src/event/ngx_event_openssl_stapling.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/event/ngx_event_openssl_stapling.c b/src/event/ngx_event_openssl_stapling.c index 3f2351c56..5322b1b12 100644 --- a/src/event/ngx_event_openssl_stapling.c +++ b/src/event/ngx_event_openssl_stapling.c @@ -285,7 +285,11 @@ ngx_ssl_stapling_issuer(ngx_conf_t *cf, ngx_ssl_t *ssl) for (i = 0; i < n; i++) { issuer = sk_X509_value(chain, i); if (X509_check_issued(issuer, cert) == X509_V_OK) { +#if OPENSSL_VERSION_NUMBER >= 0x10100001L + X509_up_ref(issuer); +#else CRYPTO_add(&issuer->references, 1, CRYPTO_LOCK_X509); +#endif ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ssl->log, 0, "SSL get issuer: found %p in extra certs", issuer);