diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2013-10-14 13:59:35 +0400 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2013-10-14 13:59:35 +0400 |
commit | a8ad0c02cc19f9684a357aace70a5fbbf9106fc1 (patch) | |
tree | c90179fbd3fcc277519b33f816728612ff7e00e3 /src | |
parent | 87a607a031cb42289d01768239d58abcb439b8ff (diff) | |
download | nginx-a8ad0c02cc19f9684a357aace70a5fbbf9106fc1.tar.gz nginx-a8ad0c02cc19f9684a357aace70a5fbbf9106fc1.zip |
SSL: SSL_CTX_set_timeout() now always called.
The timeout set is used by OpenSSL as a hint for clients in TLS Session
Tickets. Previous code resulted in a default timeout (5m) used for TLS
Sessions Tickets if there was no session cache configured.
Prodded by Piotr Sikora.
Diffstat (limited to 'src')
-rw-r--r-- | src/event/ngx_event_openssl.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c index df8f7e1a3..6a3a2b5db 100644 --- a/src/event/ngx_event_openssl.c +++ b/src/event/ngx_event_openssl.c @@ -1704,6 +1704,8 @@ ngx_ssl_session_cache(ngx_ssl_t *ssl, ngx_str_t *sess_ctx, { long cache_mode; + SSL_CTX_set_timeout(ssl->ctx, (long) timeout); + if (builtin_session_cache == NGX_SSL_NO_SCACHE) { SSL_CTX_set_session_cache_mode(ssl->ctx, SSL_SESS_CACHE_OFF); return NGX_OK; @@ -1749,8 +1751,6 @@ ngx_ssl_session_cache(ngx_ssl_t *ssl, ngx_str_t *sess_ctx, } } - SSL_CTX_set_timeout(ssl->ctx, (long) timeout); - if (shm_zone) { SSL_CTX_sess_set_new_cb(ssl->ctx, ngx_ssl_new_session); SSL_CTX_sess_set_get_cb(ssl->ctx, ngx_ssl_get_cached_session); |