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:
@@ -465,6 +465,7 @@ typedef struct {
|
||||
#define SSLConnLogApplies(sslconn, level) (sslconn->log_level >= level)
|
||||
|
||||
typedef struct {
|
||||
pid_t pid;
|
||||
apr_pool_t *pPool;
|
||||
BOOL bFixed;
|
||||
int nInitCount;
|
||||
|
@@ -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)
|
||||
{
|
||||
SSLModConfigRec *mc = myModConfig(s);
|
||||
mc->pid = getpid(); /* only call getpid() once per-process */
|
||||
|
||||
/* open the mutex lockfile */
|
||||
ssl_mutex_reinit(s, p);
|
||||
return;
|
||||
|
@@ -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)
|
||||
*/
|
||||
pid = getpid();
|
||||
pid = mc->pid;
|
||||
l = sizeof(pid_t);
|
||||
RAND_seed((unsigned char *)&pid, l);
|
||||
nDone += l;
|
||||
|
Reference in New Issue
Block a user