]> granicus.if.org Git - apache/commitdiff
change existing ssl_init_ctx() to ssl_init_ctx_protocol()
authorDoug MacEachern <dougm@apache.org>
Fri, 29 Mar 2002 02:20:58 +0000 (02:20 +0000)
committerDoug MacEachern <dougm@apache.org>
Fri, 29 Mar 2002 02:20:58 +0000 (02:20 +0000)
new ssl_init_ctx() inits the lot: protocol, session_cache, callbacks,
verify, cipher suite, crl, cert_chain

new ssl_init_server_ctx function inits everything for sc->server

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

modules/ssl/ssl_engine_init.c

index 2ca7b01493fa7b2a0dcaee902a2b6b266de1e371..547d7999fd2fe618e94bc6aac47ce9ebb8fce071 100644 (file)
@@ -401,10 +401,10 @@ static void ssl_init_server_check(server_rec *s,
     }
 }
 
-static void ssl_init_ctx(server_rec *s,
-                         apr_pool_t *p,
-                         apr_pool_t *ptemp,
-                         modssl_ctx_t *mctx)
+static void ssl_init_ctx_protocol(server_rec *s,
+                                  apr_pool_t *p,
+                                  apr_pool_t *ptemp,
+                                  modssl_ctx_t *mctx)
 {
     SSL_CTX *ctx = NULL;
     SSL_METHOD *method = NULL;
@@ -694,6 +694,29 @@ static void ssl_init_ctx_cert_chain(server_rec *s,
             n, n == 1 ? "" : "s");
 }
 
+static void ssl_init_ctx(server_rec *s,
+                         apr_pool_t *p,
+                         apr_pool_t *ptemp,
+                         modssl_ctx_t *mctx)
+{
+    ssl_init_ctx_protocol(s, p, ptemp, mctx);
+
+    ssl_init_ctx_session_cache(s, p, ptemp, mctx);
+
+    ssl_init_ctx_callbacks(s, p, ptemp, mctx);
+
+    ssl_init_ctx_verify(s, p, ptemp, mctx);
+
+    ssl_init_ctx_cipher_suite(s, p, ptemp, mctx);
+
+    ssl_init_ctx_crl(s, p, ptemp, mctx);
+
+    if (mctx->pks) {
+        /* XXX: proxy support? */
+        ssl_init_ctx_cert_chain(s, p, ptemp, mctx);
+    }
+}
+
 static int ssl_server_import_cert(server_rec *s,
                                   modssl_ctx_t *mctx,
                                   const char *id,
@@ -878,6 +901,18 @@ static void ssl_init_server_certs(server_rec *s,
     }
 }
 
+static void ssl_init_server_ctx(server_rec *s,
+                                apr_pool_t *p,
+                                apr_pool_t *ptemp,
+                                SSLSrvConfigRec *sc)
+{
+    ssl_init_server_check(s, p, ptemp, sc->server);
+
+    ssl_init_ctx(s, p, ptemp, sc->server);
+
+    ssl_init_server_certs(s, p, ptemp, sc->server);
+}
+
 /*
  * Configure a particular server
  */
@@ -886,23 +921,7 @@ void ssl_init_ConfigureServer(server_rec *s,
                               apr_pool_t *ptemp,
                               SSLSrvConfigRec *sc)
 {
-    ssl_init_server_check(s, p, ptemp, sc->server);
-
-    ssl_init_ctx(s, p, ptemp, sc->server);
-
-    ssl_init_ctx_session_cache(s, p, ptemp, sc->server);
-
-    ssl_init_ctx_callbacks(s, p, ptemp, sc->server);
-
-    ssl_init_ctx_verify(s, p, ptemp, sc->server);
-
-    ssl_init_ctx_cipher_suite(s, p, ptemp, sc->server);
-
-    ssl_init_ctx_crl(s, p, ptemp, sc->server);
-
-    ssl_init_ctx_cert_chain(s, p, ptemp, sc->server);
-
-    ssl_init_server_certs(s, p, ptemp, sc->server);
+    ssl_init_server_ctx(s, p, ptemp, sc);
 }
 
 void ssl_init_CheckServers(server_rec *base_server, apr_pool_t *p)