Mercurial > hg > nginx
comparison src/event/modules/ngx_rtsig_module.c @ 452:23fb87bddda1 release-0.1.1
nginx-0.1.1-RELEASE import
*) Feature: the gzip_types directive.
*) Feature: the tcp_nodelay directive.
*) Feature: the send_lowat directive is working not only on OSes that
support kqueue NOTE_LOWAT, but also on OSes that support SO_SNDLOWAT.
*) Feature: the setproctitle() emulation for Linux and Solaris.
*) Bugfix: the "Location" header rewrite bug fixed while the proxying.
*) Bugfix: the ngx_http_chunked_module module may get caught in an
endless loop.
*) Bugfix: the /dev/poll module bugs fixed.
*) Bugfix: the responses were corrupted when the temporary files were
used while the proxying.
*) Bugfix: the unescaped requests were passed to the backend.
*) Bugfix: while the build configuration on Linux 2.4 the
--with-poll_module parameter was required.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 11 Oct 2004 15:07:03 +0000 |
parents | 42d11f017717 |
children | 295d97d70c69 |
comparison
equal
deleted
inserted
replaced
451:f40362e47689 | 452:23fb87bddda1 |
---|---|
129 | 129 |
130 static ngx_int_t ngx_rtsig_init(ngx_cycle_t *cycle) | 130 static ngx_int_t ngx_rtsig_init(ngx_cycle_t *cycle) |
131 { | 131 { |
132 ngx_rtsig_conf_t *rtscf; | 132 ngx_rtsig_conf_t *rtscf; |
133 | 133 |
134 if (ngx_poll_module_ctx.actions.init(cycle) == NGX_ERROR) { | |
135 return NGX_ERROR; | |
136 } | |
137 | |
138 rtscf = ngx_event_get_conf(cycle->conf_ctx, ngx_rtsig_module); | 134 rtscf = ngx_event_get_conf(cycle->conf_ctx, ngx_rtsig_module); |
139 | 135 |
140 sigemptyset(&set); | 136 sigemptyset(&set); |
141 sigaddset(&set, rtscf->signo); | 137 sigaddset(&set, rtscf->signo); |
142 sigaddset(&set, rtscf->signo + 1); | 138 sigaddset(&set, rtscf->signo + 1); |
168 } | 164 } |
169 | 165 |
170 | 166 |
171 static void ngx_rtsig_done(ngx_cycle_t *cycle) | 167 static void ngx_rtsig_done(ngx_cycle_t *cycle) |
172 { | 168 { |
173 ngx_poll_module_ctx.actions.done(cycle); | 169 ngx_free(overflow_list); |
170 | |
171 overflow_list = NULL; | |
174 } | 172 } |
175 | 173 |
176 | 174 |
177 static ngx_int_t ngx_rtsig_add_connection(ngx_connection_t *c) | 175 static ngx_int_t ngx_rtsig_add_connection(ngx_connection_t *c) |
178 { | 176 { |
695 /* | 693 /* |
696 * Check the current rt queue length to prevent | 694 * Check the current rt queue length to prevent |
697 * the new overflow. | 695 * the new overflow. |
698 * | 696 * |
699 * Learn the /proc/sys/kernel/rtsig-max value because | 697 * Learn the /proc/sys/kernel/rtsig-max value because |
700 * it can be changed sisnce the last checking. | 698 * it can be changed since the last checking. |
701 */ | 699 */ |
702 | 700 |
703 name[0] = CTL_KERN; | 701 name[0] = CTL_KERN; |
704 name[1] = KERN_RTSIGMAX; | 702 name[1] = KERN_RTSIGMAX; |
705 len = sizeof(rtsig_max); | 703 len = sizeof(rtsig_max); |