comparison src/mail/ngx_mail.h @ 366:babd3d9efb62 NGINX_0_6_27

nginx 0.6.27 *) Change: now by default the rtsig method is not built on Linux 2.6.18+. *) Change: now a request method is not changed while redirection to a named location via an "error_page" directive. *) Feature: the "resolver" and "resolver_timeout" directives in SMTP proxy. *) Feature: the "post_action" directive supports named locations. *) Bugfix: a segmentation fault occurred in worker process, if a request was redirected from proxy, FastCGI, or memcached location to static named locations. *) Bugfix: browsers did not repeat SSL handshake if there is no valid client certificate in first handshake. Thanks to Alexander V. Inyukhin. *) Bugfix: if response code 495-497 was redirected via an "error_page" directive without code change, then nginx tried to allocate too many memory. *) Bugfix: memory leak in long-lived non buffered connections. *) Bugfix: memory leak in resolver. *) Bugfix: a segmentation fault occurred in worker process, if a request was redirected from proxy, FastCGI, or memcached location to static named locations. *) Bugfix: in the $proxy_host and $proxy_port variables caching. Thanks to Sergey Bochenkov. *) Bugfix: a "proxy_pass" directive with variables used incorrectly the same port as in another "proxy_pass" directive with the same host name and without variables. Thanks to Sergey Bochenkov. *) Bugfix: an alert "sendmsg() failed (9: Bad file descriptor)" on some 64-bit platforms while reconfiguration. *) Bugfix: a segmentation fault occurred in worker process, if empty stub block was used second time in SSI. *) Bugfix: in copying URI part contained escaped symbols into arguments.
author Igor Sysoev <http://sysoev.ru>
date Wed, 12 Mar 2008 00:00:00 +0300
parents 583decdb82a4
children a094317ba307
comparison
equal deleted inserted replaced
365:9b0140fa1132 366:babd3d9efb62
79 79
80 typedef struct { 80 typedef struct {
81 ngx_mail_protocol_t *protocol; 81 ngx_mail_protocol_t *protocol;
82 82
83 ngx_msec_t timeout; 83 ngx_msec_t timeout;
84 ngx_msec_t resolver_timeout;
84 85
85 ngx_flag_t so_keepalive; 86 ngx_flag_t so_keepalive;
86 87
87 ngx_str_t server_name; 88 ngx_str_t server_name;
88 89
89 u_char *file_name; 90 u_char *file_name;
90 ngx_int_t line; 91 ngx_int_t line;
92
93 ngx_resolver_t *resolver;
91 94
92 /* server ctx */ 95 /* server ctx */
93 ngx_mail_conf_ctx_t *ctx; 96 ngx_mail_conf_ctx_t *ctx;
94 } ngx_mail_core_srv_conf_t; 97 } ngx_mail_core_srv_conf_t;
95 98
145 148
146 void **ctx; 149 void **ctx;
147 void **main_conf; 150 void **main_conf;
148 void **srv_conf; 151 void **srv_conf;
149 152
153 ngx_resolver_ctx_t *resolver_ctx;
154
150 ngx_mail_proxy_ctx_t *proxy; 155 ngx_mail_proxy_ctx_t *proxy;
151 156
152 ngx_uint_t mail_state; 157 ngx_uint_t mail_state;
153 158
154 unsigned protocol:3; 159 unsigned protocol:3;
169 ngx_str_t tag; 174 ngx_str_t tag;
170 ngx_str_t tagged_line; 175 ngx_str_t tagged_line;
171 ngx_str_t text; 176 ngx_str_t text;
172 177
173 ngx_str_t *addr_text; 178 ngx_str_t *addr_text;
179 ngx_str_t host;
174 ngx_str_t smtp_helo; 180 ngx_str_t smtp_helo;
175 181
176 ngx_uint_t command; 182 ngx_uint_t command;
177 ngx_array_t args; 183 ngx_array_t args;
178 184