Mercurial > hg > nginx-mail
comparison src/event/ngx_event_openssl.c @ 50:72eb30262aac NGINX_0_1_25
nginx 0.1.25
*) Bugfix: nginx did run on Linux parisc.
*) Feature: nginx now does not start under FreeBSD if the sysctl
kern.ipc.somaxconn value is too big.
*) Bugfix: if a request was internally redirected by the
ngx_http_index_module module to the ngx_http_proxy_module or
ngx_http_fastcgi_module modules, then the index file was not closed
after request completion.
*) Feature: the "proxy_pass" can be used in location with regular
expression.
*) Feature: the ngx_http_rewrite_filter_module module supports the
condition like "if ($HTTP_USER_AGENT ~ MSIE)".
*) Bugfix: nginx started too slow if the large number of addresses and
text values were used in the "geo" directive.
*) Change: a variable name must be declared as "$name" in the "geo"
directive. The previous variant without "$" is still supported, but
will be removed soon.
*) Feature: the "%{VARIABLE}v" logging parameter.
*) Feature: the "set $name value" directive.
*) Bugfix: gcc 4.0 compatibility.
*) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Sat, 19 Mar 2005 00:00:00 +0300 |
parents | bc4fc02c96a3 |
children | b55cbf18157e |
comparison
equal
deleted
inserted
replaced
49:93dabbc9efb9 | 50:72eb30262aac |
---|---|
18 | 18 |
19 | 19 |
20 ngx_int_t | 20 ngx_int_t |
21 ngx_ssl_init(ngx_log_t *log) | 21 ngx_ssl_init(ngx_log_t *log) |
22 { | 22 { |
23 ENGINE *engine; | |
24 | |
25 SSL_library_init(); | 23 SSL_library_init(); |
26 SSL_load_error_strings(); | 24 SSL_load_error_strings(); |
27 ENGINE_load_builtin_engines(); | 25 ENGINE_load_builtin_engines(); |
28 | 26 |
29 return NGX_OK; | 27 return NGX_OK; |
34 ngx_ssl_create_session(ngx_ssl_ctx_t *ssl_ctx, ngx_connection_t *c, | 32 ngx_ssl_create_session(ngx_ssl_ctx_t *ssl_ctx, ngx_connection_t *c, |
35 ngx_uint_t flags) | 33 ngx_uint_t flags) |
36 { | 34 { |
37 ngx_ssl_t *ssl; | 35 ngx_ssl_t *ssl; |
38 | 36 |
39 if (!(ssl = ngx_pcalloc(c->pool, sizeof(ngx_ssl_t)))) { | 37 ssl = ngx_pcalloc(c->pool, sizeof(ngx_ssl_t)); |
38 if (ssl == NULL) { | |
40 return NGX_ERROR; | 39 return NGX_ERROR; |
41 } | 40 } |
42 | 41 |
43 if (!(ssl->buf = ngx_create_temp_buf(c->pool, NGX_SSL_BUFSIZE))) { | 42 ssl->buf = ngx_create_temp_buf(c->pool, NGX_SSL_BUFSIZE); |
43 if (ssl->buf == NULL) { | |
44 return NGX_ERROR; | 44 return NGX_ERROR; |
45 } | 45 } |
46 | 46 |
47 if (flags & NGX_SSL_BUFFER) { | 47 if (flags & NGX_SSL_BUFFER) { |
48 ssl->buffer = 1; | 48 ssl->buffer = 1; |
584 | 584 |
585 va_start(args, fmt); | 585 va_start(args, fmt); |
586 p = ngx_vsnprintf(errstr, sizeof(errstr) - 1, fmt, args); | 586 p = ngx_vsnprintf(errstr, sizeof(errstr) - 1, fmt, args); |
587 va_end(args); | 587 va_end(args); |
588 | 588 |
589 p = ngx_cpystrn(p, " (SSL: ", last - p); | 589 p = ngx_cpystrn(p, (u_char *) " (SSL: ", last - p); |
590 | 590 |
591 ERR_error_string_n(ERR_get_error(), (char *) p, last - p); | 591 ERR_error_string_n(ERR_get_error(), (char *) p, last - p); |
592 | 592 |
593 ngx_log_error(level, log, err, "%s)", errstr); | 593 ngx_log_error(level, log, err, "%s)", errstr); |
594 } | 594 } |