From 538110d7628e2025b973dd5deb052e7a817bd60d Mon Sep 17 00:00:00 2001 From: Doug MacEachern Date: Thu, 29 Nov 2001 05:08:47 +0000 Subject: [PATCH] move srand() call from ssl_rand_choosenum() to ssl_init_Child() this was being called twice per-connection with 'SSLRandom connect builtin' configured (which is in the default config) this also gets rid of two time() syscalls per-connection PR: Obtained from: Submitted by: Reviewed by: git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92232 13f79535-47bb-0310-9956-ffa450edef68 --- modules/ssl/ssl_engine_init.c | 3 +++ modules/ssl/ssl_engine_rand.c | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/ssl/ssl_engine_init.c b/modules/ssl/ssl_engine_init.c index b3008f3d9e..69b2eb9988 100644 --- a/modules/ssl/ssl_engine_init.c +++ b/modules/ssl/ssl_engine_init.c @@ -967,6 +967,9 @@ void ssl_init_Child(apr_pool_t *p, server_rec *s) SSLModConfigRec *mc = myModConfig(s); mc->pid = getpid(); /* only call getpid() once per-process */ + /* XXX: there should be an ap_srand() function */ + srand((unsigned int)time(NULL)); + /* open the mutex lockfile */ ssl_mutex_reinit(s, p); return; diff --git a/modules/ssl/ssl_engine_rand.c b/modules/ssl/ssl_engine_rand.c index 79a5a5171a..36a57bce05 100644 --- a/modules/ssl/ssl_engine_rand.c +++ b/modules/ssl/ssl_engine_rand.c @@ -203,7 +203,6 @@ static int ssl_rand_choosenum(int l, int h) int i; char buf[50]; - srand((unsigned int)time(NULL)); apr_snprintf(buf, sizeof(buf), "%.0f", (((double)(rand()%RAND_MAX)/RAND_MAX)*(h-l))); i = atoi(buf)+1; -- 2.40.0