Mercurial > hg > nginx-quic
annotate src/os/win32/ngx_win32_config.h @ 1117:f8d6894f0990
ioctl FIONBIO uses int, so nginx did not work on big-endian 64-bit platforms
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sat, 17 Feb 2007 19:53:52 +0000 |
parents | f88651afad40 |
children | f69d1aab6a0f 1a1fe29fdb17 |
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:
419
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:
419
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 |
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:
419
diff
changeset
|
4 */ |
da8c5707af39
nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents:
419
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:
419
diff
changeset
|
6 |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
7 #ifndef _NGX_WIN32_CONFIG_H_INCLUDED_ |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
8 #define _NGX_WIN32_CONFIG_H_INCLUDED_ |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
9 |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
10 |
563 | 11 #define WIN32 0x0400 |
12 #define _WIN32_WINNT 0x0400 | |
13 | |
14 | |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
15 #define STRICT |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
16 #define WIN32_LEAN_AND_MEAN |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
17 |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
18 /* |
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:
419
diff
changeset
|
19 * we need to include <windows.h> explicity before <winsock2.h> because |
da8c5707af39
nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Igor Sysoev <igor@sysoev.ru>
parents:
419
diff
changeset
|
20 * the warning 4201 is enabled in <windows.h> |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
21 */ |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
22 #include <windows.h> |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
23 |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
24 #ifdef _MSC_VER |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
25 #pragma warning(disable:4201) |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
26 #endif |
119
cd54bcbaf3b5
nginx-0.0.1-2003-07-21-01:15:59 import
Igor Sysoev <igor@sysoev.ru>
parents:
93
diff
changeset
|
27 |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
28 #include <winsock2.h> |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
29 #include <mswsock.h> |
461 | 30 #include <shellapi.h> |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
186
diff
changeset
|
31 #include <stddef.h> /* offsetof() */ |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
32 #include <stdio.h> |
123
b75602822f64
nginx-0.0.1-2003-07-24-00:01:29 import
Igor Sysoev <igor@sysoev.ru>
parents:
119
diff
changeset
|
33 #include <stdlib.h> |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
34 #include <stdarg.h> |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
35 |
509 | 36 #ifdef __WATCOMC__ |
37 #define _TIME_T_DEFINED | |
38 typedef long time_t; | |
39 /* OpenWatcom defines time_t as "unsigned long" */ | |
40 #endif | |
41 | |
42 #include <time.h> /* localtime(), strftime() */ | |
43 | |
455 | 44 |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
45 #ifdef _MSC_VER |
455 | 46 |
47 /* the end of the precompiled headers */ | |
48 #pragma hdrstop | |
49 | |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
50 #pragma warning(default:4201) |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
51 |
290
87e73f067470
nginx-0.0.2-2004-03-16-10:10:12 import
Igor Sysoev <igor@sysoev.ru>
parents:
282
diff
changeset
|
52 /* disable some "-W4" level warnings */ |
87e73f067470
nginx-0.0.2-2004-03-16-10:10:12 import
Igor Sysoev <igor@sysoev.ru>
parents:
282
diff
changeset
|
53 |
499 | 54 /* 'type cast': from function pointer to data pointer */ |
302
1526e7686b20
nginx-0.0.3-2004-04-01-10:21:13 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
55 #pragma warning(disable:4054) |
499 | 56 |
57 /* 'type cast': from data pointer to function pointer */ | |
290
87e73f067470
nginx-0.0.2-2004-03-16-10:10:12 import
Igor Sysoev <igor@sysoev.ru>
parents:
282
diff
changeset
|
58 #pragma warning(disable:4055) |
363
f2755a2885c8
nginx-0.0.7-2004-06-21-23:22:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
302
diff
changeset
|
59 |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
60 /* unreferenced formal parameter */ |
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
61 #pragma warning(disable:4100) |
363
f2755a2885c8
nginx-0.0.7-2004-06-21-23:22:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
302
diff
changeset
|
62 |
501 | 63 /* FD_SET() and FD_CLR(): conditional expression is constant */ |
290
87e73f067470
nginx-0.0.2-2004-03-16-10:10:12 import
Igor Sysoev <igor@sysoev.ru>
parents:
282
diff
changeset
|
64 #pragma warning(disable:4127) |
363
f2755a2885c8
nginx-0.0.7-2004-06-21-23:22:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
302
diff
changeset
|
65 |
499 | 66 /* function 'ngx_handle_write_event' not inlined */ |
363
f2755a2885c8
nginx-0.0.7-2004-06-21-23:22:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
302
diff
changeset
|
67 #pragma warning(disable:4710) |
f2755a2885c8
nginx-0.0.7-2004-06-21-23:22:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
302
diff
changeset
|
68 |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
280
diff
changeset
|
69 #endif |
186
c1f3a3c7c5db
nginx-0.0.1-2003-11-17-00:49:42 import
Igor Sysoev <igor@sysoev.ru>
parents:
183
diff
changeset
|
70 |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
71 |
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
72 #ifdef __WATCOMC__ |
499 | 73 |
74 /* symbol 'ngx_rbtree_min' has been defined, but not referenced */ | |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
75 #pragma disable_message(202) |
499 | 76 |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
77 #endif |
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
78 |
297
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
79 |
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
80 #ifdef __BORLANDC__ |
499 | 81 |
297
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
82 /* the end of the precompiled headers */ |
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
83 #pragma hdrstop |
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
84 |
499 | 85 /* functions containing (for|while|some if) are not expanded inline */ |
297
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
86 #pragma warn -8027 |
499 | 87 |
88 /* unreferenced formal parameter */ | |
297
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
89 #pragma warn -8057 |
499 | 90 |
297
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
91 #endif |
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
92 |
ee394e997c77
nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents:
294
diff
changeset
|
93 |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
94 #include <ngx_auto_config.h> |
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
95 |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
96 |
785 | 97 #define ngx_inline __inline |
98 #define ngx_cdecl __cdecl | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
99 |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
100 |
279
b79f021a644a
nginx-0.0.2-2004-03-04-19:34:23 import
Igor Sysoev <igor@sysoev.ru>
parents:
278
diff
changeset
|
101 #ifdef _MSC_VER |
785 | 102 typedef unsigned __int32 uint32_t; |
103 typedef __int32 int32_t; | |
104 typedef unsigned __int16 uint16_t; | |
105 #define ngx_libc_cdecl __cdecl | |
499 | 106 |
785 | 107 #elif defined __BORLANDC__ |
108 typedef unsigned __int32 uint32_t; | |
109 typedef __int32 int32_t; | |
110 typedef unsigned __int16 uint16_t; | |
111 #define ngx_libc_cdecl __cdecl | |
112 | |
113 #else /* __WATCOMC__ */ | |
114 typedef unsigned int uint32_t; | |
115 typedef int int32_t; | |
116 typedef unsigned short int uint16_t; | |
503 | 117 #define ngx_libc_cdecl |
118 | |
176
c0552e5ab567
nginx-0.0.1-2003-11-09-23:03:38 import; separate building
Igor Sysoev <igor@sysoev.ru>
parents:
144
diff
changeset
|
119 #endif |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
120 |
785 | 121 typedef __int64 int64_t; |
122 typedef unsigned __int64 uint64_t; | |
123 typedef u_int uintptr_t; | |
176
c0552e5ab567
nginx-0.0.1-2003-11-09-23:03:38 import; separate building
Igor Sysoev <igor@sysoev.ru>
parents:
144
diff
changeset
|
124 |
785 | 125 typedef int ssize_t; |
126 typedef __int64 off_t; | |
127 typedef uint32_t in_addr_t; | |
128 typedef u_short in_port_t; | |
129 typedef int sig_atomic_t; | |
176
c0552e5ab567
nginx-0.0.1-2003-11-09-23:03:38 import; separate building
Igor Sysoev <igor@sysoev.ru>
parents:
144
diff
changeset
|
130 |
c0552e5ab567
nginx-0.0.1-2003-11-09-23:03:38 import; separate building
Igor Sysoev <igor@sysoev.ru>
parents:
144
diff
changeset
|
131 |
613 | 132 #define NGX_PTR_SIZE 4 |
477 | 133 #define NGX_SIZE_T_LEN sizeof("-2147483648") - 1 |
1025 | 134 #define NGX_MAX_SIZE_T_VALUE 2147483647 |
477 | 135 #define NGX_TIME_T_LEN sizeof("-2147483648") - 1 |
136 #define NGX_TIME_T_SIZE 4 | |
137 #define NGX_OFF_T_LEN sizeof("-9223372036854775807") - 1 | |
138 #define NGX_MAX_OFF_T_VALUE 9223372036854775807 | |
139 #define NGX_SIG_ATOMIC_T_SIZE 4 | |
140 | |
581 | 141 |
469 | 142 #define NGX_HAVE_LITTLE_ENDIAN 1 |
479 | 143 #define NGX_HAVE_NONALIGNED 1 |
469 | 144 |
145 #define NGX_THREADS 1 | |
371
780e93985b93
nginx-0.0.7-2004-06-28-20:05:02 import
Igor Sysoev <igor@sysoev.ru>
parents:
363
diff
changeset
|
146 |
461 | 147 |
148 #define NGX_WIN_NT 200000 | |
176
c0552e5ab567
nginx-0.0.1-2003-11-09-23:03:38 import; separate building
Igor Sysoev <igor@sysoev.ru>
parents:
144
diff
changeset
|
149 |
c0552e5ab567
nginx-0.0.1-2003-11-09-23:03:38 import; separate building
Igor Sysoev <igor@sysoev.ru>
parents:
144
diff
changeset
|
150 |
469 | 151 #ifndef NGX_HAVE_INHERITED_NONBLOCK |
152 #define NGX_HAVE_INHERITED_NONBLOCK 1 | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
153 #endif |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
154 |
469 | 155 #ifndef NGX_HAVE_WIN32_TRANSMITPACKETS |
156 #define NGX_HAVE_WIN32_TRANSMITPACKETS 1 | |
157 #define NGX_HAVE_WIN32_TRANSMITFILE 0 | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
158 #endif |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
159 |
469 | 160 #ifndef NGX_HAVE_WIN32_TRANSMITFILE |
161 #define NGX_HAVE_WIN32_TRANSMITFILE 1 | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
162 #endif |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
163 |
469 | 164 #if (NGX_HAVE_WIN32_TRANSMITPACKETS) || (NGX_HAVE_WIN32_TRANSMITFILE) |
165 #define NGX_HAVE_SENDFILE 1 | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
166 #endif |
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
167 |
473 | 168 #ifndef NGX_HAVE_SO_SNDLOWAT |
169 /* setsockopt(SO_SNDLOWAT) returns error WSAENOPROTOOPT */ | |
170 #define NGX_HAVE_SO_SNDLOWAT 0 | |
171 #endif | |
172 | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
173 |
800 | 174 #define ngx_random rand |
175 | |
176 | |
93
738fe44c70d5
nginx-0.0.1-2003-05-21-17:28:21 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
177 #endif /* _NGX_WIN32_CONFIG_H_INCLUDED_ */ |