summaryrefslogtreecommitdiffhomepage
path: root/src/event/ngx_event_openssl.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2007-01-09 15:59:20 +0000
committerIgor Sysoev <igor@sysoev.ru>2007-01-09 15:59:20 +0000
commit4e77a2bb83260015bd60156916178f0eb658da82 (patch)
treeedc252404be7793cf28b9ecf5a67daa9293b02b9 /src/event/ngx_event_openssl.c
parent1691aaf290e90da6206b3ca5eea53676764f8432 (diff)
downloadnginx-4e77a2bb83260015bd60156916178f0eb658da82.tar.gz
nginx-4e77a2bb83260015bd60156916178f0eb658da82.tar.bz2
pass the inherited shm_zone data
Diffstat (limited to 'src/event/ngx_event_openssl.c')
-rw-r--r--src/event/ngx_event_openssl.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c
index 7d61dfe46..dff23ae31 100644
--- a/src/event/ngx_event_openssl.c
+++ b/src/event/ngx_event_openssl.c
@@ -23,7 +23,8 @@ static void ngx_ssl_shutdown_handler(ngx_event_t *ev);
static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
ngx_err_t err, char *text);
-static ngx_int_t ngx_ssl_session_cache_init(ngx_shm_zone_t *shm_zone);
+static ngx_int_t ngx_ssl_session_cache_init(ngx_shm_zone_t *shm_zone,
+ void *data);
static int ngx_ssl_new_session(ngx_ssl_conn_t *ssl_conn,
ngx_ssl_session_t *sess);
static ngx_ssl_session_t *ngx_ssl_get_cached_session(ngx_ssl_conn_t *ssl_conn,
@@ -1184,12 +1185,17 @@ ngx_ssl_session_cache(ngx_ssl_t *ssl, ngx_str_t *sess_ctx,
static ngx_int_t
-ngx_ssl_session_cache_init(ngx_shm_zone_t *shm_zone)
+ngx_ssl_session_cache_init(ngx_shm_zone_t *shm_zone, void *data)
{
ngx_slab_pool_t *shpool;
ngx_rbtree_node_t *sentinel;
ngx_ssl_session_cache_t *cache;
+ if (data) {
+ shm_zone->data = data;
+ return NGX_OK;
+ }
+
shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
cache = ngx_slab_alloc(shpool, sizeof(ngx_ssl_session_cache_t));