diff options
author | Igor Sysoev <igor@sysoev.ru> | 2007-01-02 23:55:05 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2007-01-02 23:55:05 +0000 |
commit | 528cdb7c2cfa53012da651e4c16b9bb7ba8ddcd2 (patch) | |
tree | baf19b833ce6f560cb1c9449f260468bc0603708 /src/http/modules/ngx_http_ssl_module.h | |
parent | 28c7f76635909a219078d2e1bc2ec7a45b408554 (diff) | |
download | nginx-528cdb7c2cfa53012da651e4c16b9bb7ba8ddcd2.tar.gz nginx-528cdb7c2cfa53012da651e4c16b9bb7ba8ddcd2.zip |
ssl_session_cache
Diffstat (limited to 'src/http/modules/ngx_http_ssl_module.h')
-rw-r--r-- | src/http/modules/ngx_http_ssl_module.h | 53 |
1 files changed, 42 insertions, 11 deletions
diff --git a/src/http/modules/ngx_http_ssl_module.h b/src/http/modules/ngx_http_ssl_module.h index 85803096e..7a5c6d5ad 100644 --- a/src/http/modules/ngx_http_ssl_module.h +++ b/src/http/modules/ngx_http_ssl_module.h @@ -13,25 +13,56 @@ #include <ngx_http.h> +typedef struct ngx_http_ssl_cached_sess_s ngx_http_ssl_cached_sess_t; + + +typedef struct { + ngx_rbtree_node_t node; + u_char *id; + size_t len; + ngx_http_ssl_cached_sess_t *session; +} ngx_http_ssl_sess_id_t; + + +struct ngx_http_ssl_cached_sess_s { + ngx_http_ssl_cached_sess_t *prev; + ngx_http_ssl_cached_sess_t *next; + time_t expire; + ngx_http_ssl_sess_id_t *sess_id; + u_char asn1[1]; +}; + + +typedef struct { + ngx_rbtree_t *session_rbtree; + ngx_http_ssl_cached_sess_t session_cache_head; + ngx_http_ssl_cached_sess_t session_cache_tail; +} ngx_http_ssl_sesssion_cache_t; + + typedef struct { - ngx_flag_t enable; + ngx_flag_t enable; + + ngx_ssl_t ssl; + + ngx_flag_t prefer_server_ciphers; - ngx_ssl_t ssl; + ngx_uint_t protocols; - ngx_flag_t prefer_server_ciphers; + ngx_int_t verify; + ngx_int_t verify_depth; - ngx_uint_t protocols; + ssize_t builtin_session_cache; - ngx_int_t verify; - ngx_int_t verify_depth; + time_t session_timeout; - time_t session_timeout; + ngx_str_t certificate; + ngx_str_t certificate_key; + ngx_str_t client_certificate; - ngx_str_t certificate; - ngx_str_t certificate_key; - ngx_str_t client_certificate; + ngx_str_t ciphers; - ngx_str_t ciphers; + ngx_shm_zone_t *shm_zone; } ngx_http_ssl_srv_conf_t; |