1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

call getpid() once at child init and save in the SSLModConfigRec

to avoid getpid() calls at request time
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92231 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Doug MacEachern
2001-11-29 05:04:22 +00:00
parent bcb88ba28a
commit 1c3ac886e0
3 changed files with 5 additions and 1 deletions

View File

@@ -465,6 +465,7 @@ typedef struct {
#define SSLConnLogApplies(sslconn, level) (sslconn->log_level >= level) #define SSLConnLogApplies(sslconn, level) (sslconn->log_level >= level)
typedef struct { typedef struct {
pid_t pid;
apr_pool_t *pPool; apr_pool_t *pPool;
BOOL bFixed; BOOL bFixed;
int nInitCount; int nInitCount;

View File

@@ -964,6 +964,9 @@ STACK_OF(X509_NAME) *ssl_init_FindCAList(server_rec *s, apr_pool_t *pp, const ch
void ssl_init_Child(apr_pool_t *p, server_rec *s) void ssl_init_Child(apr_pool_t *p, server_rec *s)
{ {
SSLModConfigRec *mc = myModConfig(s);
mc->pid = getpid(); /* only call getpid() once per-process */
/* open the mutex lockfile */ /* open the mutex lockfile */
ssl_mutex_reinit(s, p); ssl_mutex_reinit(s, p);
return; return;

View File

@@ -136,7 +136,7 @@ int ssl_rand_seed(server_rec *s, apr_pool_t *p, ssl_rsctx_t nCtx, char *prefix)
/* /*
* seed in the current process id (usually just 4 bytes) * seed in the current process id (usually just 4 bytes)
*/ */
pid = getpid(); pid = mc->pid;
l = sizeof(pid_t); l = sizeof(pid_t);
RAND_seed((unsigned char *)&pid, l); RAND_seed((unsigned char *)&pid, l);
nDone += l; nDone += l;