comparison src/os/unix/ngx_freebsd_rfork_thread.h @ 112:408f195b3482 NGINX_0_3_3

nginx 0.3.3 *) Change: the "bl" and "af" parameters of the "listen" directive was renamed to the "backlog" and "accept_filter". *) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen" directive. *) Change: the "$msec" log parameter does not require now the additional the gettimeofday() system call. *) Feature: the -t switch now tests the "listen" directives. *) Bugfix: if the invalid address was specified in the "listen" directive, then after the -HUP signal nginx left an open socket in the CLOSED state. *) Bugfix: the mime type may be incorrectly set to default value for index file with variable in the name; bug appeared in 0.3.0. *) Feature: the "timer_resolution" directive. *) Feature: the millisecond "$upstream_response_time" log parameter. *) Bugfix: a temporary file with client request body now is removed just after the response header was transferred to a client. *) Bugfix: OpenSSL 0.9.6 compatibility. *) Bugfix: the SSL certificate and key file paths could not be relative. *) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in the ngx_imap_ssl_module. *) Bugfix: the "ssl_protocols" directive allowed to specify the single protocol only.
author Igor Sysoev <http://sysoev.ru>
date Wed, 19 Oct 2005 00:00:00 +0400
parents cf3d6edb3ad6
children df17fbafec8f
comparison
equal deleted inserted replaced
111:a175b609c76d 112:408f195b3482
53 53
54 extern char *ngx_freebsd_kern_usrstack; 54 extern char *ngx_freebsd_kern_usrstack;
55 extern size_t ngx_thread_stack_size; 55 extern size_t ngx_thread_stack_size;
56 56
57 57
58 static ngx_inline ngx_int_t ngx_gettid() 58 static ngx_inline ngx_int_t
59 ngx_gettid()
59 { 60 {
60 char *sp; 61 char *sp;
61 62
62 if (ngx_thread_stack_size == 0) { 63 if (ngx_thread_stack_size == 0) {
63 return 0; 64 return 0;
95 96
96 ngx_err_t ngx_thread_set_tls(ngx_tls_key_t key, void *value); 97 ngx_err_t ngx_thread_set_tls(ngx_tls_key_t key, void *value);
97 #define ngx_thread_set_tls_n "the tls key setting" 98 #define ngx_thread_set_tls_n "the tls key setting"
98 99
99 100
100 static void *ngx_thread_get_tls(ngx_tls_key_t key) 101 static void *
102 ngx_thread_get_tls(ngx_tls_key_t key)
101 { 103 {
102 if (key >= NGX_THREAD_KEYS_MAX) { 104 if (key >= NGX_THREAD_KEYS_MAX) {
103 return NULL; 105 return NULL;
104 } 106 }
105 107
106 return ngx_tls[key * NGX_THREAD_KEYS_MAX + ngx_gettid()]; 108 return ngx_tls[key * NGX_THREAD_KEYS_MAX + ngx_gettid()];
107 } 109 }
108 110
109 111
110 #define ngx_mutex_trylock(m) ngx_mutex_dolock(m, 1) 112 #define ngx_mutex_trylock(m) ngx_mutex_dolock(m, 1)
111 #define ngx_mutex_lock(m) ngx_mutex_dolock(m, 0) 113 #define ngx_mutex_lock(m) (void) ngx_mutex_dolock(m, 0)
112 ngx_int_t ngx_mutex_dolock(ngx_mutex_t *m, ngx_int_t try); 114 ngx_int_t ngx_mutex_dolock(ngx_mutex_t *m, ngx_int_t try);
113 ngx_int_t ngx_mutex_unlock(ngx_mutex_t *m); 115 void ngx_mutex_unlock(ngx_mutex_t *m);
114 116
115 117
116 typedef int (*ngx_rfork_thread_func_pt)(void *arg); 118 typedef int (*ngx_rfork_thread_func_pt)(void *arg);
117 119
118 120