Mercurial > hg > nginx-vendor-current
comparison src/imap/ngx_imap_ssl_module.c @ 126:df17fbafec8f NGINX_0_3_10
nginx 0.3.10
*) Change: the "valid_referers" directive and the "$invalid_referer"
variable were moved to the new ngx_http_referer_module from the
ngx_http_rewrite_module.
*) Change: the "$apache_bytes_sent" variable name was changed to
"$body_bytes_sent".
*) Feature: the "$sent_http_..." variables.
*) Feature: the "if" directive supports the "=" and "!=" operations.
*) Feature: the "proxy_pass" directive supports the HTTPS protocol.
*) Feature: the "proxy_set_body" directive.
*) Feature: the "post_action" directive.
*) Feature: the ngx_http_empty_gif_module.
*) Feature: the "worker_cpu_affinity" directive for Linux.
*) Bugfix: the "rewrite" directive did not unescape URI part in
redirect, now it is unescaped except the %00-%25 and %7F-%FF
characters.
*) Bugfix: nginx could not be built by the icc 9.0 compiler.
*) Bugfix: if the SSI was enabled for zero size static file, then the
chunked response was encoded incorrectly.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Tue, 15 Nov 2005 00:00:00 +0300 |
parents | d25a1d6034f1 |
children | 91372f004adf |
comparison
equal
deleted
inserted
replaced
125:97504de1f89e | 126:df17fbafec8f |
---|---|
25 static char ngx_imap_ssl_openssl097[] = "OpenSSL 0.9.7 and higher"; | 25 static char ngx_imap_ssl_openssl097[] = "OpenSSL 0.9.7 and higher"; |
26 | 26 |
27 #endif | 27 #endif |
28 | 28 |
29 | 29 |
30 static ngx_conf_bitmask_t ngx_imap_ssl_protocols[] = { | 30 static ngx_conf_bitmask_t ngx_imap_ssl_protocols[] = { |
31 { ngx_string("SSLv2"), NGX_SSL_SSLv2 }, | 31 { ngx_string("SSLv2"), NGX_SSL_SSLv2 }, |
32 { ngx_string("SSLv3"), NGX_SSL_SSLv3 }, | 32 { ngx_string("SSLv3"), NGX_SSL_SSLv3 }, |
33 { ngx_string("TLSv1"), NGX_SSL_TLSv1 }, | 33 { ngx_string("TLSv1"), NGX_SSL_TLSv1 }, |
34 { ngx_null_string, 0 } | 34 { ngx_null_string, 0 } |
35 }; | 35 }; |
122 static u_char ngx_imap_session_id_ctx[] = "IMAP"; | 122 static u_char ngx_imap_session_id_ctx[] = "IMAP"; |
123 | 123 |
124 | 124 |
125 static void * | 125 static void * |
126 ngx_imap_ssl_create_conf(ngx_conf_t *cf) | 126 ngx_imap_ssl_create_conf(ngx_conf_t *cf) |
127 { | 127 { |
128 ngx_imap_ssl_conf_t *scf; | 128 ngx_imap_ssl_conf_t *scf; |
129 | 129 |
130 scf = ngx_pcalloc(cf->pool, sizeof(ngx_imap_ssl_conf_t)); | 130 scf = ngx_pcalloc(cf->pool, sizeof(ngx_imap_ssl_conf_t)); |
131 if (scf == NULL) { | 131 if (scf == NULL) { |
132 return NGX_CONF_ERROR; | 132 return NGX_CONF_ERROR; |
133 } | 133 } |
134 | 134 |
135 /* | 135 /* |
136 * set by ngx_pcalloc(): | 136 * set by ngx_pcalloc(): |
137 * | 137 * |
138 * scf->protocols = 0; | 138 * scf->protocols = 0; |
139 * | 139 * |
140 * scf->certificate.len = 0; | 140 * scf->certificate.len = 0; |
141 * scf->certificate.data = NULL; | 141 * scf->certificate.data = NULL; |
238 SSL_CTX_set_timeout(conf->ssl.ctx, conf->session_timeout); | 238 SSL_CTX_set_timeout(conf->ssl.ctx, conf->session_timeout); |
239 | 239 |
240 return NGX_CONF_OK; | 240 return NGX_CONF_OK; |
241 } | 241 } |
242 | 242 |
243 | 243 |
244 #if !defined (SSL_OP_CIPHER_SERVER_PREFERENCE) | 244 #if !defined (SSL_OP_CIPHER_SERVER_PREFERENCE) |
245 | 245 |
246 static char * | 246 static char * |
247 ngx_imap_ssl_nosupported(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) | 247 ngx_imap_ssl_nosupported(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) |
248 { | 248 { |
249 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, | 249 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, |
250 "\"%V\" directive is available only in %s,", | 250 "\"%V\" directive is available only in %s,", |
251 &cmd->name, cmd->post); | 251 &cmd->name, cmd->post); |
252 | 252 |
253 return NGX_CONF_ERROR; | 253 return NGX_CONF_ERROR; |