annotate src/core/ngx_cycle.h @ 7360:8f25a44d9add

SSL: logging level of "no suitable key share". The "no suitable key share" errors are reported by OpenSSL 1.1.1 when using TLSv1.3 if there are no shared groups (that is, elliptic curves). In particular, it is easy enough to trigger by using only a single curve in ssl_ecdh_curve: ssl_ecdh_curve secp384r1; and using a different curve in the client: openssl s_client -connect 127.0.0.1:443 -curves prime256v1 On the client side it is seen as "sslv3 alert handshake failure", "SSL alert number 40": 0:error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:ssl/record/rec_layer_s3.c:1528:SSL alert number 40 It can be also triggered with default ssl_ecdh_curve by using a curve which is not in the default list (X25519, prime256v1, X448, secp521r1, secp384r1): openssl s_client -connect 127.0.0.1:8443 -curves brainpoolP512r1 Given that many clients hardcode prime256v1, these errors might become a common problem with TLSv1.3 if ssl_ecdh_curve is redefined. Previously this resulted in not using ECDH with such clients, but with TLSv1.3 it is no longer possible and will result in a handshake failure. The SSL_R_NO_SHARED_GROUP error is what BoringSSL returns in the same situation. Seen at: https://serverfault.com/questions/932102/nginx-ssl-handshake-error-no-suitable-key-share
author Maxim Dounin <mdounin@mdounin.ru>
date Tue, 25 Sep 2018 13:59:53 +0300
parents fc4d82c13c04
children b9071b875194
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
441
da8c5707af39 nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents: 414
diff changeset
1
da8c5707af39 nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents: 414
diff changeset
2 /*
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 441
diff changeset
3 * Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 3880
diff changeset
4 * Copyright (C) Nginx, Inc.
441
da8c5707af39 nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents: 414
diff changeset
5 */
da8c5707af39 nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents: 414
diff changeset
6
da8c5707af39 nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents: 414
diff changeset
7
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 #ifndef _NGX_CYCLE_H_INCLUDED_
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
9 #define _NGX_CYCLE_H_INCLUDED_
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12 #include <ngx_config.h>
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
13 #include <ngx_core.h>
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
14
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15
507
cd3117ad9aab nginx-0.1.28-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 473
diff changeset
16 #ifndef NGX_CYCLE_POOL_SIZE
5124
5482671df278 Use NGX_DEFAULT_POOL_SIZE macro where appropriate.
Ruslan Ermilov <ru@nginx.com>
parents: 4870
diff changeset
17 #define NGX_CYCLE_POOL_SIZE NGX_DEFAULT_POOL_SIZE
507
cd3117ad9aab nginx-0.1.28-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 473
diff changeset
18 #endif
cd3117ad9aab nginx-0.1.28-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 473
diff changeset
19
cd3117ad9aab nginx-0.1.28-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 473
diff changeset
20
461
a88a3e4e158f nginx-0.1.5-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
21 #define NGX_DEBUG_POINTS_STOP 1
a88a3e4e158f nginx-0.1.5-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
22 #define NGX_DEBUG_POINTS_ABORT 2
a88a3e4e158f nginx-0.1.5-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
23
a88a3e4e158f nginx-0.1.5-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
24
972
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
25 typedef struct ngx_shm_zone_s ngx_shm_zone_t;
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
26
993
1b9a4d92173f pass the inherited shm_zone data
Igor Sysoev <igor@sysoev.ru>
parents: 972
diff changeset
27 typedef ngx_int_t (*ngx_shm_zone_init_pt) (ngx_shm_zone_t *zone, void *data);
972
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
28
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
29 struct ngx_shm_zone_s {
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
30 void *data;
860
201d017ea470 slab allocator in shared memory
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
31 ngx_shm_t shm;
972
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
32 ngx_shm_zone_init_pt init;
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
33 void *tag;
7205
fc4d82c13c04 Core: added a stub for additional zone configuration.
Vladimir Homutov <vl@nginx.com>
parents: 7174
diff changeset
34 void *sync;
6103
79ddb0bdb273 Upstream: the "zone" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 6016
diff changeset
35 ngx_uint_t noreuse; /* unsigned noreuse:1; */
972
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
36 };
860
201d017ea470 slab allocator in shared memory
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
37
201d017ea470 slab allocator in shared memory
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
38
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
39 struct ngx_cycle_s {
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
40 void ****conf_ctx;
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
41 ngx_pool_t *pool;
317
1308b98496a2 nginx-0.0.3-2004-04-15-19:34:36 import
Igor Sysoev <igor@sysoev.ru>
parents: 311
diff changeset
42
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
43 ngx_log_t *log;
2785
d478379e51ac *) refactor error_log processing: listen socket log might inherit built-in
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
44 ngx_log_t new_log;
317
1308b98496a2 nginx-0.0.3-2004-04-15-19:34:36 import
Igor Sysoev <igor@sysoev.ru>
parents: 311
diff changeset
45
5240
d8af1005e886 Core: fixed handling of "stderr" in error_log.
Vladimir Homutov <vl@nginx.com>
parents: 5124
diff changeset
46 ngx_uint_t log_use_stderr; /* unsigned log_use_stderr:1; */
d8af1005e886 Core: fixed handling of "stderr" in error_log.
Vladimir Homutov <vl@nginx.com>
parents: 5124
diff changeset
47
543
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
48 ngx_connection_t **files;
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
49 ngx_connection_t *free_connections;
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
50 ngx_uint_t free_connection_n;
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
51
6379
cf5e822cf470 Dynamic modules: changed ngx_modules to cycle->modules.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6335
diff changeset
52 ngx_module_t **modules;
6383
85dea406e18f Dynamic modules.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6379
diff changeset
53 ngx_uint_t modules_n;
85dea406e18f Dynamic modules.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6379
diff changeset
54 ngx_uint_t modules_used; /* unsigned modules_used:1; */
6379
cf5e822cf470 Dynamic modules: changed ngx_modules to cycle->modules.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6335
diff changeset
55
3880
e3cb8e27e413 reuse keepalive connections if there are no free worker connections
Igor Sysoev <igor@sysoev.ru>
parents: 3762
diff changeset
56 ngx_queue_t reusable_connections_queue;
6873
426828549afc Improved connection draining with small number of connections.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6776
diff changeset
57 ngx_uint_t reusable_connections_n;
3880
e3cb8e27e413 reuse keepalive connections if there are no free worker connections
Igor Sysoev <igor@sysoev.ru>
parents: 3762
diff changeset
58
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
59 ngx_array_t listening;
4870
8a9b7b4e9f2d Correct plural form for "path" in the whole source base.
Andrey Belov <defan@nginx.com>
parents: 4549
diff changeset
60 ngx_array_t paths;
6776
1bf4f21b1b72 Core: show file contents only once while dumping configuration.
Vladimir Homutov <vl@nginx.com>
parents: 6474
diff changeset
61
6187
1b7e246e6b38 Core: store and dump processed configuration.
Vladimir Homutov <vl@nginx.com>
parents: 6127
diff changeset
62 ngx_array_t config_dump;
6776
1bf4f21b1b72 Core: show file contents only once while dumping configuration.
Vladimir Homutov <vl@nginx.com>
parents: 6474
diff changeset
63 ngx_rbtree_t config_dump_rbtree;
1bf4f21b1b72 Core: show file contents only once while dumping configuration.
Vladimir Homutov <vl@nginx.com>
parents: 6474
diff changeset
64 ngx_rbtree_node_t config_dump_sentinel;
1bf4f21b1b72 Core: show file contents only once while dumping configuration.
Vladimir Homutov <vl@nginx.com>
parents: 6474
diff changeset
65
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
66 ngx_list_t open_files;
860
201d017ea470 slab allocator in shared memory
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
67 ngx_list_t shared_memory;
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
68
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
69 ngx_uint_t connection_n;
543
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
70 ngx_uint_t files_n;
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
71
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 543
diff changeset
72 ngx_connection_t *connections;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 543
diff changeset
73 ngx_event_t *read_events;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 543
diff changeset
74 ngx_event_t *write_events;
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
75
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
76 ngx_cycle_t *old_cycle;
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
77
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
78 ngx_str_t conf_file;
2073
01b71aa095cc -g switch
Igor Sysoev <igor@sysoev.ru>
parents: 2011
diff changeset
79 ngx_str_t conf_param;
2758
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2738
diff changeset
80 ngx_str_t conf_prefix;
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2738
diff changeset
81 ngx_str_t prefix;
860
201d017ea470 slab allocator in shared memory
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
82 ngx_str_t lock_file;
2011
b56d4b1ebac7 $hostname variable
Igor Sysoev <igor@sysoev.ru>
parents: 1069
diff changeset
83 ngx_str_t hostname;
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
84 };
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
85
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
86
278
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
87 typedef struct {
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
88 ngx_flag_t daemon;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
89 ngx_flag_t master;
300
502b03d9d2a3 nginx-0.0.3-2004-03-31-00:31:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 290
diff changeset
90
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
91 ngx_msec_t timer_resolution;
6930
97c99bb43737 Introduced worker_shutdown_timeout.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6873
diff changeset
92 ngx_msec_t shutdown_timeout;
563
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
93
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
94 ngx_int_t worker_processes;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
95 ngx_int_t debug_points;
300
502b03d9d2a3 nginx-0.0.3-2004-03-31-00:31:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 290
diff changeset
96
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
97 ngx_int_t rlimit_nofile;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
98 off_t rlimit_core;
543
511a89da35ad nginx-0.2.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 521
diff changeset
99
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
100 int priority;
300
502b03d9d2a3 nginx-0.0.3-2004-03-31-00:31:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 290
diff changeset
101
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
102 ngx_uint_t cpu_affinity_auto;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
103 ngx_uint_t cpu_affinity_n;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
104 ngx_cpuset_t *cpu_affinity;
577
4d9ea73a627a nginx-0.3.10-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 563
diff changeset
105
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
106 char *username;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
107 ngx_uid_t user;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
108 ngx_gid_t group;
473
8e8f3af115b5 nginx-0.1.11-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
109
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
110 ngx_str_t working_directory;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
111 ngx_str_t lock_file;
521
6f00349b98e5 nginx-0.1.35-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 507
diff changeset
112
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
113 ngx_str_t pid;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
114 ngx_str_t oldpid;
376
d0451e402e27 nginx-0.0.7-2004-07-05-10:55:54 import
Igor Sysoev <igor@sysoev.ru>
parents: 336
diff changeset
115
6474
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
116 ngx_array_t env;
Ruslan Ermilov <ru@nginx.com>
parents: 6402
diff changeset
117 char **environment;
7174
84e53e4735a4 Retain CAP_NET_RAW capability for transparent proxying.
Roman Arutyunyan <arut@nginx.com>
parents: 6930
diff changeset
118
84e53e4735a4 Retain CAP_NET_RAW capability for transparent proxying.
Roman Arutyunyan <arut@nginx.com>
parents: 6930
diff changeset
119 ngx_uint_t transparent; /* unsigned transparent:1; */
278
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
120 } ngx_core_conf_t;
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
121
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
122
611
3f8a2132b93d nginx-0.3.27-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 605
diff changeset
123 #define ngx_is_init_cycle(cycle) (cycle->conf_ctx == NULL)
605
5dac8c7fb71b nginx-0.3.24-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 589
diff changeset
124
5dac8c7fb71b nginx-0.3.24-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 589
diff changeset
125
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
126 ngx_cycle_t *ngx_init_cycle(ngx_cycle_t *old_cycle);
611
3f8a2132b93d nginx-0.3.27-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 605
diff changeset
127 ngx_int_t ngx_create_pidfile(ngx_str_t *name, ngx_log_t *log);
311
11ff50a35d6d nginx-0.0.3-2004-04-12-20:38:09 import
Igor Sysoev <igor@sysoev.ru>
parents: 300
diff changeset
128 void ngx_delete_pidfile(ngx_cycle_t *cycle);
2738
ae81441e23f4 implement "-s signal" option for Unix
Igor Sysoev <igor@sysoev.ru>
parents: 2716
diff changeset
129 ngx_int_t ngx_signal_process(ngx_cycle_t *cycle, char *sig);
278
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
130 void ngx_reopen_files(ngx_cycle_t *cycle, ngx_uid_t user);
1069
Igor Sysoev <igor@sysoev.ru>
parents: 993
diff changeset
131 char **ngx_set_environment(ngx_cycle_t *cycle, ngx_uint_t *last);
278
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
132 ngx_pid_t ngx_exec_new_binary(ngx_cycle_t *cycle, char *const *argv);
6402
7296b38f6416 Core: added support for more than 64 CPUs in worker_cpu_affinity.
Vladimir Homutov <vl@nginx.com>
parents: 6383
diff changeset
133 ngx_cpuset_t *ngx_get_cpu_affinity(ngx_uint_t n);
972
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
134 ngx_shm_zone_t *ngx_shared_memory_add(ngx_conf_t *cf, ngx_str_t *name,
6e7a20529f53 ngx_shared_memory_add()
Igor Sysoev <igor@sysoev.ru>
parents: 949
diff changeset
135 size_t size, void *tag);
6930
97c99bb43737 Introduced worker_shutdown_timeout.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6873
diff changeset
136 void ngx_set_shutdown_timer(ngx_cycle_t *cycle);
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
137
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
138
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
139 extern volatile ngx_cycle_t *ngx_cycle;
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
140 extern ngx_array_t ngx_old_cycles;
278
0ba4821f4460 nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents: 255
diff changeset
141 extern ngx_module_t ngx_core_module;
318
56496082668b nginx-0.0.3-2004-04-16-09:14:16 import
Igor Sysoev <igor@sysoev.ru>
parents: 317
diff changeset
142 extern ngx_uint_t ngx_test_config;
6187
1b7e246e6b38 Core: store and dump processed configuration.
Vladimir Homutov <vl@nginx.com>
parents: 6127
diff changeset
143 extern ngx_uint_t ngx_dump_config;
3750
ffbdaa3c70d6 the -q switch
Igor Sysoev <igor@sysoev.ru>
parents: 2785
diff changeset
144 extern ngx_uint_t ngx_quiet_mode;
218
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
145
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
146
05592fd7a436 nginx-0.0.1-2004-01-05-23:55:48 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
147 #endif /* _NGX_CYCLE_H_INCLUDED_ */