Mercurial > hg > nginx
diff src/event/ngx_event_openssl.h @ 1014:5ffd76a9ccf3
optimize the SSL session cache allocations
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 11 Jan 2007 17:39:02 +0000 |
parents | 8dfb3aa75de2 |
children | ee25c79bea34 |
line wrap: on
line diff
--- a/src/event/ngx_event_openssl.h Thu Jan 11 17:05:18 2007 +0000 +++ b/src/event/ngx_event_openssl.h Thu Jan 11 17:39:02 2007 +0000 @@ -55,33 +55,25 @@ #define NGX_SSL_NO_BUILTIN_SCACHE -3 -typedef struct ngx_ssl_cached_sess_s ngx_ssl_cached_sess_t; - +#define NGX_SSL_MAX_SESSION_SIZE (4096) -#define NGX_SSL_MAX_SESSION_SIZE (4096 - offsetof(ngx_ssl_cached_sess_t, asn1)) +typedef struct ngx_ssl_sess_id_s ngx_ssl_sess_id_t; - -typedef struct { +struct ngx_ssl_sess_id_s { ngx_rbtree_node_t node; u_char *id; size_t len; - ngx_ssl_cached_sess_t *session; -} ngx_ssl_sess_id_t; - - -struct ngx_ssl_cached_sess_s { - ngx_ssl_cached_sess_t *prev; - ngx_ssl_cached_sess_t *next; + u_char *session; + ngx_ssl_sess_id_t *prev; + ngx_ssl_sess_id_t *next; time_t expire; - ngx_ssl_sess_id_t *sess_id; - u_char asn1[1]; }; typedef struct { ngx_rbtree_t *session_rbtree; - ngx_ssl_cached_sess_t session_cache_head; - ngx_ssl_cached_sess_t session_cache_tail; + ngx_ssl_sess_id_t session_cache_head; + ngx_ssl_sess_id_t session_cache_tail; } ngx_ssl_session_cache_t;