Mercurial > hg > nginx-ranges
view src/event/ngx_event_posted.h @ 70:8ad297c88dcb NGINX_0_1_35
nginx 0.1.35
*) Feature: the "working_directory" directive.
*) Feature: the "port_in_redirect" directive.
*) Bugfix: the segmentation fault was occurred if the backend response
header was in several packets; bug appeared in 0.1.29.
*) Bugfix: if more than 10 servers were configured or some server did
not use the "listen" directive, then the segmentation fault was
occurred on the start.
*) Bugfix: the segmentation fault might occur if the response was
bigger than the temporary file.
*) Bugfix: nginx returned the 400 response on requests like
"GET http://www.domain.com/uri HTTP/1.0"; bug appeared in 0.1.28.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Tue, 07 Jun 2005 00:00:00 +0400 |
parents | 46833bd150cb |
children | 408f195b3482 |
line wrap: on
line source
/* * Copyright (C) Igor Sysoev */ #ifndef _NGX_EVENT_POSTED_H_INCLUDED_ #define _NGX_EVENT_POSTED_H_INCLUDED_ #include <ngx_config.h> #include <ngx_core.h> #include <ngx_event.h> #define ngx_post_event(ev) \ if (ev->prev == NULL) { \ ev->next = (ngx_event_t *) ngx_posted_events; \ ev->prev = (ngx_event_t **) &ngx_posted_events; \ ngx_posted_events = ev; \ if (ev->next) { \ ev->next->prev = &ev->next; \ } \ ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, \ "post event %p", ev); \ } else { \ ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, \ "update posted event %p", ev); \ } #define ngx_delete_posted_event(ev) \ *(ev->prev) = ev->next; \ if (ev->next) { \ ev->next->prev = ev->prev; \ } \ ev->prev = NULL; \ ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, \ "delete posted event %p", ev); void ngx_event_process_posted(ngx_cycle_t *cycle); void ngx_wakeup_worker_thread(ngx_cycle_t *cycle); extern ngx_thread_volatile ngx_event_t *ngx_posted_events; #if (NGX_THREADS) ngx_int_t ngx_event_thread_process_posted(ngx_cycle_t *cycle); extern ngx_mutex_t *ngx_posted_events_mutex; #endif #endif /* _NGX_EVENT_POSTED_H_INCLUDED_ */