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);