]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
* Check if we are having an SSL connection before looking up SSL related
authorRuediger Pluem <rpluem@apache.org>
Fri, 10 Oct 2014 17:54:33 +0000 (17:54 +0000)
committerRuediger Pluem <rpluem@apache.org>
Fri, 10 Oct 2014 17:54:33 +0000 (17:54 +0000)
  variables during expression evaluation to avoid a crash. If not return
  an empty string.

PR: 57070

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1630947 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/ssl/ssl_engine_vars.c

diff --git a/CHANGES b/CHANGES
index c1db503d40ed84abb237417c5078a52e82ea7b36..52e6ad412866f5acb3515010776770420560e265 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,9 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache 2.5.0
 
+  *) mod_ssl: Do not crash when looking up SSL related variables during
+     expression evaluation on non SSL connections. PR 57070 [Ruediger Pluem]
+
   *) core: Ensure that httpd exits with an error status when the MPM fails
      to run.  [Yann Ylavic]
 
index fa0b0e1fe142deb891a34ea540228bbb438137df..be55ba31d9bb2c01e2ec6b4177d1249d1325a7fc 100644 (file)
@@ -142,7 +142,9 @@ static apr_array_header_t *expr_peer_ext_list_fn(ap_expr_eval_ctx_t *ctx,
 static const char *expr_var_fn(ap_expr_eval_ctx_t *ctx, const void *data)
 {
     char *var = (char *)data;
-    return ssl_var_lookup_ssl(ctx->p, ctx->c, ctx->r, var);
+    SSLConnRec *sslconn = myConnConfig(ctx->c);
+
+    return sslconn ? ssl_var_lookup_ssl(ctx->p, ctx->c, ctx->r, var) : "";
 }
 
 static int ssl_expr_lookup(ap_expr_lookup_parms *parms)