Mercurial > hg > nginx
annotate src/os/win32/ngx_errno.h @ 9201:791ead216b03
Silenced complaints about socket leaks on forced termination.
When graceful shutdown was requested, and then nginx was forced to
do fast shutdown, it used to (incorrectly) complain about open sockets
left in connections which weren't yet closed when fast shutdown
was requested.
Fix is to avoid complaining about open sockets when fast shutdown was
requested after graceful one. Abnormal termination, if requested with
the WINCH signal, can still happen though.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 29 Jan 2024 10:29:39 +0300 |
parents | 58afcd72446f |
children | 37ef53ecd6b0 |
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:
288
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:
288
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 | 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:
288
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:
288
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:
288
diff
changeset
|
7 |
0
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
8 #ifndef _NGX_ERRNO_H_INCLUDED_ |
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
9 #define _NGX_ERRNO_H_INCLUDED_ |
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
10 |
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
11 |
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
12 #include <ngx_config.h> |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
13 #include <ngx_core.h> |
0
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
14 |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
15 |
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
16 typedef DWORD ngx_err_t; |
0
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
17 |
8
708f8bb772ec
nginx-0.0.1-2002-09-02-18:48:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
3
diff
changeset
|
18 #define ngx_errno GetLastError() |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
100
diff
changeset
|
19 #define ngx_set_errno(err) SetLastError(err) |
8
708f8bb772ec
nginx-0.0.1-2002-09-02-18:48:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
3
diff
changeset
|
20 #define ngx_socket_errno WSAGetLastError() |
708f8bb772ec
nginx-0.0.1-2002-09-02-18:48:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
3
diff
changeset
|
21 #define ngx_set_socket_errno(err) WSASetLastError(err) |
0
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
22 |
637 | 23 #define NGX_EPERM ERROR_ACCESS_DENIED |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
24 #define NGX_ENOENT ERROR_FILE_NOT_FOUND |
3023 | 25 #define NGX_ENOPATH ERROR_PATH_NOT_FOUND |
860
201d017ea470
slab allocator in shared memory
Igor Sysoev <igor@sysoev.ru>
parents:
663
diff
changeset
|
26 #define NGX_ENOMEM ERROR_NOT_ENOUGH_MEMORY |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
27 #define NGX_EACCES ERROR_ACCESS_DENIED |
6468
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
28 /* |
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
29 * there are two EEXIST error codes: |
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
30 * ERROR_FILE_EXISTS used by CreateFile(CREATE_NEW), |
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
31 * and ERROR_ALREADY_EXISTS used by CreateDirectory(); |
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
32 * MoveFile() uses both |
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
33 */ |
467 | 34 #define NGX_EEXIST ERROR_ALREADY_EXISTS |
6468
a5897d360977
Win32: additional error code NGX_EEXIST_FILE (ticket #910).
Maxim Dounin <mdounin@mdounin.ru>
parents:
5550
diff
changeset
|
35 #define NGX_EEXIST_FILE ERROR_FILE_EXISTS |
6469
7cdf612fd58c
Win32: replaced NGX_EXDEV with more appropriate error code.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6468
diff
changeset
|
36 #define NGX_EXDEV ERROR_NOT_SAME_DEVICE |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
37 #define NGX_ENOTDIR ERROR_PATH_NOT_FOUND |
663 | 38 #define NGX_EISDIR ERROR_CANNOT_MAKE |
633 | 39 #define NGX_ENOSPC ERROR_DISK_FULL |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
186
diff
changeset
|
40 #define NGX_EPIPE EPIPE |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
41 #define NGX_EAGAIN WSAEWOULDBLOCK |
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
42 #define NGX_EINPROGRESS WSAEINPROGRESS |
5550
3c5ddf0575d8
Core: handle getsockopt(TCP_FASTOPEN) failures.
Piotr Sikora <piotr@cloudflare.com>
parents:
5431
diff
changeset
|
43 #define NGX_ENOPROTOOPT WSAENOPROTOOPT |
5431
91bd62a9627e
Core: handling of getsockopt(TCP_DEFER_ACCEPT) failures.
Maxim Dounin <mdounin@mdounin.ru>
parents:
5355
diff
changeset
|
44 #define NGX_EOPNOTSUPP WSAEOPNOTSUPP |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
45 #define NGX_EADDRINUSE WSAEADDRINUSE |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
186
diff
changeset
|
46 #define NGX_ECONNABORTED WSAECONNABORTED |
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
186
diff
changeset
|
47 #define NGX_ECONNRESET WSAECONNRESET |
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
186
diff
changeset
|
48 #define NGX_ENOTCONN WSAENOTCONN |
100
7ebc8b7fb816
nginx-0.0.1-2003-06-03-19:42:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
74
diff
changeset
|
49 #define NGX_ETIMEDOUT WSAETIMEDOUT |
288
f81d075ad172
nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents:
278
diff
changeset
|
50 #define NGX_ECONNREFUSED WSAECONNREFUSED |
543 | 51 #define NGX_ENAMETOOLONG ERROR_BAD_PATHNAME |
1869
192443881e51
add NGX_ENETDOWN, NGX_ENETUNREACH, and NGX_EHOSTDOWN
Igor Sysoev <igor@sysoev.ru>
parents:
860
diff
changeset
|
52 #define NGX_ENETDOWN WSAENETDOWN |
192443881e51
add NGX_ENETDOWN, NGX_ENETUNREACH, and NGX_EHOSTDOWN
Igor Sysoev <igor@sysoev.ru>
parents:
860
diff
changeset
|
53 #define NGX_ENETUNREACH WSAENETUNREACH |
192443881e51
add NGX_ENETDOWN, NGX_ENETUNREACH, and NGX_EHOSTDOWN
Igor Sysoev <igor@sysoev.ru>
parents:
860
diff
changeset
|
54 #define NGX_EHOSTDOWN WSAEHOSTDOWN |
288
f81d075ad172
nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents:
278
diff
changeset
|
55 #define NGX_EHOSTUNREACH WSAEHOSTUNREACH |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
100
diff
changeset
|
56 #define NGX_ENOMOREFILES ERROR_NO_MORE_FILES |
2628
64a10d6b97bd
win32 ngx_open_file() supports utf8 names and NGX_FILE_APPEND
Igor Sysoev <igor@sysoev.ru>
parents:
2394
diff
changeset
|
57 #define NGX_EILSEQ ERROR_NO_UNICODE_TRANSLATION |
5333
e8bca8397625
Autoindex: improved ngx_de_info() error handling.
Sergey Kandaurov <pluknet@nginx.com>
parents:
4693
diff
changeset
|
58 #define NGX_ELOOP 0 |
5355
32847478c2c1
Added the NGX_EBADF define.
Valentin Bartenev <vbart@nginx.com>
parents:
5333
diff
changeset
|
59 #define NGX_EBADF WSAEBADF |
9147
58afcd72446f
QUIC: path MTU discovery.
Roman Arutyunyan <arut@nginx.com>
parents:
6469
diff
changeset
|
60 #define NGX_EMSGSIZE WSAEMSGSIZE |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
100
diff
changeset
|
61 |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
100
diff
changeset
|
62 #define NGX_EALREADY WSAEALREADY |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
100
diff
changeset
|
63 #define NGX_EINVAL WSAEINVAL |
4618
c05cfc46b3bc
Accept moderation in case of EMFILE/ENFILE.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
64 #define NGX_EMFILE WSAEMFILE |
c05cfc46b3bc
Accept moderation in case of EMFILE/ENFILE.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
65 #define NGX_ENFILE WSAEMFILE |
0
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
66 |
3787
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3023
diff
changeset
|
67 |
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3023
diff
changeset
|
68 u_char *ngx_strerror(ngx_err_t err, u_char *errstr, size_t size); |
4693
f1a0de6eb505
Fixed return type of ngx_strerror_init().
Maxim Dounin <mdounin@mdounin.ru>
parents:
4618
diff
changeset
|
69 ngx_int_t ngx_strerror_init(void); |
0
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
70 |
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
71 |
4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
72 #endif /* _NGX_ERRNO_H_INCLUDED_ */ |