From f3fecbde9faa9c49d57e6ebdd460652a7f919ad5 Mon Sep 17 00:00:00 2001 From: Doug MacEachern Date: Thu, 17 Jan 2002 04:03:09 +0000 Subject: [PATCH] prevent possible segv if SSL_get_current_cipher() returns NULL in ssl_var_lookup_ssl_cipher() git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92883 13f79535-47bb-0310-9956-ffa450edef68 --- modules/ssl/ssl_engine_vars.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/ssl/ssl_engine_vars.c b/modules/ssl/ssl_engine_vars.c index 3c5934f554..17b5e82653 100644 --- a/modules/ssl/ssl_engine_vars.c +++ b/modules/ssl/ssl_engine_vars.c @@ -552,8 +552,10 @@ static char *ssl_var_lookup_ssl_cipher(apr_pool_t *p, conn_rec *c, char *var) ssl = sslconn->ssl; ssl_var_lookup_ssl_cipher_bits(ssl, &usekeysize, &algkeysize); - if (strEQ(var, "")) - result = (ssl != NULL ? (char *)SSL_get_cipher_name(ssl) : NULL); + if (ssl && strEQ(var, "")) { + SSL_CIPHER *cipher = SSL_get_current_cipher(ssl); + result = (cipher != NULL ? (char *)SSL_CIPHER_get_name(cipher) : NULL); + } else if (strcEQ(var, "_EXPORT")) result = (usekeysize < 56 ? "true" : "false"); else if (strcEQ(var, "_USEKEYSIZE")) { -- 2.40.0