Mercurial > hg > nginx-vendor-1-0
diff src/event/ngx_event_openssl.c @ 480:549994537f15 NGINX_0_7_52
nginx 0.7.52
*) Feature: the first native Windows binary release.
*) Bugfix: in processing HEAD method while caching.
*) Bugfix: in processing the "If-Modified-Since", "If-Range", etc.
client request header lines while caching.
*) Bugfix: now the "Set-Cookie" and "P3P" header lines are hidden in
cacheable responses.
*) Bugfix: if nginx was built with the ngx_http_perl_module and with a
perl which supports threads, then during a master process exit the
message "panic: MUTEX_LOCK" might be issued.
*) Bugfix: nginx could not be built --without-http-cache; the bug had
appeared in 0.7.48.
*) Bugfix: nginx could not be built on platforms different from i386,
amd64, sparc, and ppc; the bug had appeared in 0.7.42.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 20 Apr 2009 00:00:00 +0400 |
parents | 56baf312c1b5 |
children | ed5e10fb40fc |
line wrap: on
line diff
--- a/src/event/ngx_event_openssl.c +++ b/src/event/ngx_event_openssl.c @@ -1387,7 +1387,7 @@ ngx_ssl_session_cache(ngx_ssl_t *ssl, ng } } - SSL_CTX_set_timeout(ssl->ctx, timeout); + SSL_CTX_set_timeout(ssl->ctx, (long) timeout); if (shm_zone) { shm_zone->init = ngx_ssl_session_cache_init; @@ -1421,6 +1421,11 @@ ngx_ssl_session_cache_init(ngx_shm_zone_ return NGX_OK; } + if (shm_zone->shm.exists) { + 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)); @@ -1428,12 +1433,15 @@ ngx_ssl_session_cache_init(ngx_shm_zone_ return NGX_ERROR; } + shpool->data = cache; + shm_zone->data = cache; + ngx_rbtree_init(&cache->session_rbtree, &cache->sentinel, ngx_ssl_session_rbtree_insert_value); ngx_queue_init(&cache->expire_queue); - len = sizeof(" in SSL session shared cache \"\"") + shm_zone->name.len; + len = sizeof(" in SSL session shared cache \"\"") + shm_zone->shm.name.len; shpool->log_ctx = ngx_slab_alloc(shpool, len); if (shpool->log_ctx == NULL) { @@ -1441,9 +1449,7 @@ ngx_ssl_session_cache_init(ngx_shm_zone_ } ngx_sprintf(shpool->log_ctx, " in SSL session shared cache \"%V\"%Z", - &shm_zone->name); - - shm_zone->data = cache; + &shm_zone->shm.name); return NGX_OK; }