xref: /php-src/ext/sockets/sockets_arginfo.h (revision b147a22b)
1 /* This is a generated file, edit the .stub.php file instead.
2  * Stub hash: 70a996a13d739c1d2d165c73427cff59ebae1c5f */
3 
4 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_select, 0, 4, MAY_BE_LONG|MAY_BE_FALSE)
5 	ZEND_ARG_TYPE_INFO(1, read, IS_ARRAY, 1)
6 	ZEND_ARG_TYPE_INFO(1, write, IS_ARRAY, 1)
7 	ZEND_ARG_TYPE_INFO(1, except, IS_ARRAY, 1)
8 	ZEND_ARG_TYPE_INFO(0, seconds, IS_LONG, 1)
9 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, microseconds, IS_LONG, 0, "0")
10 ZEND_END_ARG_INFO()
11 
12 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_socket_create_listen, 0, 1, Socket, MAY_BE_FALSE)
13 	ZEND_ARG_TYPE_INFO(0, port, IS_LONG, 0)
14 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, backlog, IS_LONG, 0, "SOMAXCONN")
15 ZEND_END_ARG_INFO()
16 
17 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_socket_accept, 0, 1, Socket, MAY_BE_FALSE)
18 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
19 ZEND_END_ARG_INFO()
20 
21 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_set_nonblock, 0, 1, _IS_BOOL, 0)
22 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
23 ZEND_END_ARG_INFO()
24 
25 #define arginfo_socket_set_block arginfo_socket_set_nonblock
26 
27 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_listen, 0, 1, _IS_BOOL, 0)
28 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
29 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, backlog, IS_LONG, 0, "0")
30 ZEND_END_ARG_INFO()
31 
32 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_close, 0, 1, IS_VOID, 0)
33 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
34 ZEND_END_ARG_INFO()
35 
36 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_write, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
37 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
38 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
39 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
40 ZEND_END_ARG_INFO()
41 
42 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_read, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
43 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
44 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
45 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "PHP_BINARY_READ")
46 ZEND_END_ARG_INFO()
47 
48 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_getsockname, 0, 2, _IS_BOOL, 0)
49 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
50 	ZEND_ARG_INFO(1, address)
51 	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, port, "null")
52 ZEND_END_ARG_INFO()
53 
54 #define arginfo_socket_getpeername arginfo_socket_getsockname
55 
56 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_socket_create, 0, 3, Socket, MAY_BE_FALSE)
57 	ZEND_ARG_TYPE_INFO(0, domain, IS_LONG, 0)
58 	ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
59 	ZEND_ARG_TYPE_INFO(0, protocol, IS_LONG, 0)
60 ZEND_END_ARG_INFO()
61 
62 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_connect, 0, 2, _IS_BOOL, 0)
63 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
64 	ZEND_ARG_TYPE_INFO(0, address, IS_STRING, 0)
65 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, port, IS_LONG, 1, "null")
66 ZEND_END_ARG_INFO()
67 
68 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_strerror, 0, 1, IS_STRING, 0)
69 	ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
70 ZEND_END_ARG_INFO()
71 
72 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_bind, 0, 2, _IS_BOOL, 0)
73 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
74 	ZEND_ARG_TYPE_INFO(0, address, IS_STRING, 0)
75 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, port, IS_LONG, 0, "0")
76 ZEND_END_ARG_INFO()
77 
78 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_recv, 0, 4, MAY_BE_LONG|MAY_BE_FALSE)
79 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
80 	ZEND_ARG_INFO(1, data)
81 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
82 	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
83 ZEND_END_ARG_INFO()
84 
85 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_send, 0, 4, MAY_BE_LONG|MAY_BE_FALSE)
86 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
87 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
88 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
89 	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
90 ZEND_END_ARG_INFO()
91 
92 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_recvfrom, 0, 5, MAY_BE_LONG|MAY_BE_FALSE)
93 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
94 	ZEND_ARG_INFO(1, data)
95 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
96 	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
97 	ZEND_ARG_INFO(1, address)
98 	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, port, "null")
99 ZEND_END_ARG_INFO()
100 
101 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_sendto, 0, 5, MAY_BE_LONG|MAY_BE_FALSE)
102 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
103 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
104 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
105 	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
106 	ZEND_ARG_TYPE_INFO(0, address, IS_STRING, 0)
107 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, port, IS_LONG, 1, "null")
108 ZEND_END_ARG_INFO()
109 
110 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_get_option, 0, 3, MAY_BE_ARRAY|MAY_BE_LONG|MAY_BE_FALSE)
111 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
112 	ZEND_ARG_TYPE_INFO(0, level, IS_LONG, 0)
113 	ZEND_ARG_TYPE_INFO(0, option, IS_LONG, 0)
114 ZEND_END_ARG_INFO()
115 
116 #define arginfo_socket_getopt arginfo_socket_get_option
117 
118 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_set_option, 0, 4, _IS_BOOL, 0)
119 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
120 	ZEND_ARG_TYPE_INFO(0, level, IS_LONG, 0)
121 	ZEND_ARG_TYPE_INFO(0, option, IS_LONG, 0)
122 	ZEND_ARG_INFO(0, value)
123 ZEND_END_ARG_INFO()
124 
125 #define arginfo_socket_setopt arginfo_socket_set_option
126 
127 #if defined(HAVE_SOCKETPAIR)
128 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_create_pair, 0, 4, _IS_BOOL, 0)
129 	ZEND_ARG_TYPE_INFO(0, domain, IS_LONG, 0)
130 	ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
131 	ZEND_ARG_TYPE_INFO(0, protocol, IS_LONG, 0)
132 	ZEND_ARG_INFO(1, pair)
133 ZEND_END_ARG_INFO()
134 #endif
135 
136 #if defined(HAVE_SHUTDOWN)
137 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_shutdown, 0, 1, _IS_BOOL, 0)
138 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
139 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "2")
140 ZEND_END_ARG_INFO()
141 #endif
142 
143 #if defined(HAVE_SOCKATMARK)
144 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_atmark, 0, 1, _IS_BOOL, 0)
145 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
146 ZEND_END_ARG_INFO()
147 #endif
148 
149 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_last_error, 0, 0, IS_LONG, 0)
150 	ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, socket, Socket, 1, "null")
151 ZEND_END_ARG_INFO()
152 
153 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_clear_error, 0, 0, IS_VOID, 0)
154 	ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, socket, Socket, 1, "null")
155 ZEND_END_ARG_INFO()
156 
157 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_socket_import_stream, 0, 1, Socket, MAY_BE_FALSE)
158 	ZEND_ARG_INFO(0, stream)
159 ZEND_END_ARG_INFO()
160 
161 ZEND_BEGIN_ARG_INFO_EX(arginfo_socket_export_stream, 0, 0, 1)
162 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
163 ZEND_END_ARG_INFO()
164 
165 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_sendmsg, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
166 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
167 	ZEND_ARG_TYPE_INFO(0, message, IS_ARRAY, 0)
168 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
169 ZEND_END_ARG_INFO()
170 
171 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_recvmsg, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
172 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
173 	ZEND_ARG_TYPE_INFO(1, message, IS_ARRAY, 0)
174 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
175 ZEND_END_ARG_INFO()
176 
177 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_cmsg_space, 0, 2, IS_LONG, 1)
178 	ZEND_ARG_TYPE_INFO(0, level, IS_LONG, 0)
179 	ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
180 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, num, IS_LONG, 0, "0")
181 ZEND_END_ARG_INFO()
182 
183 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_addrinfo_lookup, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
184 	ZEND_ARG_TYPE_INFO(0, host, IS_STRING, 0)
185 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, service, IS_STRING, 1, "null")
186 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, hints, IS_ARRAY, 0, "[]")
187 ZEND_END_ARG_INFO()
188 
189 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_socket_addrinfo_connect, 0, 1, Socket, MAY_BE_FALSE)
190 	ZEND_ARG_OBJ_INFO(0, address, AddressInfo, 0)
191 ZEND_END_ARG_INFO()
192 
193 #define arginfo_socket_addrinfo_bind arginfo_socket_addrinfo_connect
194 
195 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_addrinfo_explain, 0, 1, IS_ARRAY, 0)
196 	ZEND_ARG_OBJ_INFO(0, address, AddressInfo, 0)
197 ZEND_END_ARG_INFO()
198 
199 #if defined(PHP_WIN32)
200 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_socket_wsaprotocol_info_export, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
201 	ZEND_ARG_OBJ_INFO(0, socket, Socket, 0)
202 	ZEND_ARG_TYPE_INFO(0, process_id, IS_LONG, 0)
203 ZEND_END_ARG_INFO()
204 #endif
205 
206 #if defined(PHP_WIN32)
207 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_socket_wsaprotocol_info_import, 0, 1, Socket, MAY_BE_FALSE)
208 	ZEND_ARG_TYPE_INFO(0, info_id, IS_STRING, 0)
209 ZEND_END_ARG_INFO()
210 #endif
211 
212 #if defined(PHP_WIN32)
213 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_socket_wsaprotocol_info_release, 0, 1, _IS_BOOL, 0)
214 	ZEND_ARG_TYPE_INFO(0, info_id, IS_STRING, 0)
215 ZEND_END_ARG_INFO()
216 #endif
217 
218 ZEND_FUNCTION(socket_select);
219 ZEND_FUNCTION(socket_create_listen);
220 ZEND_FUNCTION(socket_accept);
221 ZEND_FUNCTION(socket_set_nonblock);
222 ZEND_FUNCTION(socket_set_block);
223 ZEND_FUNCTION(socket_listen);
224 ZEND_FUNCTION(socket_close);
225 ZEND_FUNCTION(socket_write);
226 ZEND_FUNCTION(socket_read);
227 ZEND_FUNCTION(socket_getsockname);
228 ZEND_FUNCTION(socket_getpeername);
229 ZEND_FUNCTION(socket_create);
230 ZEND_FUNCTION(socket_connect);
231 ZEND_FUNCTION(socket_strerror);
232 ZEND_FUNCTION(socket_bind);
233 ZEND_FUNCTION(socket_recv);
234 ZEND_FUNCTION(socket_send);
235 ZEND_FUNCTION(socket_recvfrom);
236 ZEND_FUNCTION(socket_sendto);
237 ZEND_FUNCTION(socket_get_option);
238 ZEND_FUNCTION(socket_set_option);
239 #if defined(HAVE_SOCKETPAIR)
240 ZEND_FUNCTION(socket_create_pair);
241 #endif
242 #if defined(HAVE_SHUTDOWN)
243 ZEND_FUNCTION(socket_shutdown);
244 #endif
245 #if defined(HAVE_SOCKATMARK)
246 ZEND_FUNCTION(socket_atmark);
247 #endif
248 ZEND_FUNCTION(socket_last_error);
249 ZEND_FUNCTION(socket_clear_error);
250 ZEND_FUNCTION(socket_import_stream);
251 ZEND_FUNCTION(socket_export_stream);
252 ZEND_FUNCTION(socket_sendmsg);
253 ZEND_FUNCTION(socket_recvmsg);
254 ZEND_FUNCTION(socket_cmsg_space);
255 ZEND_FUNCTION(socket_addrinfo_lookup);
256 ZEND_FUNCTION(socket_addrinfo_connect);
257 ZEND_FUNCTION(socket_addrinfo_bind);
258 ZEND_FUNCTION(socket_addrinfo_explain);
259 #if defined(PHP_WIN32)
260 ZEND_FUNCTION(socket_wsaprotocol_info_export);
261 #endif
262 #if defined(PHP_WIN32)
263 ZEND_FUNCTION(socket_wsaprotocol_info_import);
264 #endif
265 #if defined(PHP_WIN32)
266 ZEND_FUNCTION(socket_wsaprotocol_info_release);
267 #endif
268 
269 static const zend_function_entry ext_functions[] = {
270 	ZEND_FE(socket_select, arginfo_socket_select)
271 	ZEND_FE(socket_create_listen, arginfo_socket_create_listen)
272 	ZEND_FE(socket_accept, arginfo_socket_accept)
273 	ZEND_FE(socket_set_nonblock, arginfo_socket_set_nonblock)
274 	ZEND_FE(socket_set_block, arginfo_socket_set_block)
275 	ZEND_FE(socket_listen, arginfo_socket_listen)
276 	ZEND_FE(socket_close, arginfo_socket_close)
277 	ZEND_FE(socket_write, arginfo_socket_write)
278 	ZEND_FE(socket_read, arginfo_socket_read)
279 	ZEND_FE(socket_getsockname, arginfo_socket_getsockname)
280 	ZEND_FE(socket_getpeername, arginfo_socket_getpeername)
281 	ZEND_FE(socket_create, arginfo_socket_create)
282 	ZEND_FE(socket_connect, arginfo_socket_connect)
283 	ZEND_FE(socket_strerror, arginfo_socket_strerror)
284 	ZEND_FE(socket_bind, arginfo_socket_bind)
285 	ZEND_FE(socket_recv, arginfo_socket_recv)
286 	ZEND_FE(socket_send, arginfo_socket_send)
287 	ZEND_FE(socket_recvfrom, arginfo_socket_recvfrom)
288 	ZEND_FE(socket_sendto, arginfo_socket_sendto)
289 	ZEND_FE(socket_get_option, arginfo_socket_get_option)
290 	ZEND_RAW_FENTRY("socket_getopt", zif_socket_get_option, arginfo_socket_getopt, 0, NULL, NULL)
291 	ZEND_FE(socket_set_option, arginfo_socket_set_option)
292 	ZEND_RAW_FENTRY("socket_setopt", zif_socket_set_option, arginfo_socket_setopt, 0, NULL, NULL)
293 #if defined(HAVE_SOCKETPAIR)
294 	ZEND_FE(socket_create_pair, arginfo_socket_create_pair)
295 #endif
296 #if defined(HAVE_SHUTDOWN)
297 	ZEND_FE(socket_shutdown, arginfo_socket_shutdown)
298 #endif
299 #if defined(HAVE_SOCKATMARK)
300 	ZEND_FE(socket_atmark, arginfo_socket_atmark)
301 #endif
302 	ZEND_FE(socket_last_error, arginfo_socket_last_error)
303 	ZEND_FE(socket_clear_error, arginfo_socket_clear_error)
304 	ZEND_FE(socket_import_stream, arginfo_socket_import_stream)
305 	ZEND_FE(socket_export_stream, arginfo_socket_export_stream)
306 	ZEND_FE(socket_sendmsg, arginfo_socket_sendmsg)
307 	ZEND_FE(socket_recvmsg, arginfo_socket_recvmsg)
308 	ZEND_FE(socket_cmsg_space, arginfo_socket_cmsg_space)
309 	ZEND_FE(socket_addrinfo_lookup, arginfo_socket_addrinfo_lookup)
310 	ZEND_FE(socket_addrinfo_connect, arginfo_socket_addrinfo_connect)
311 	ZEND_FE(socket_addrinfo_bind, arginfo_socket_addrinfo_bind)
312 	ZEND_FE(socket_addrinfo_explain, arginfo_socket_addrinfo_explain)
313 #if defined(PHP_WIN32)
314 	ZEND_FE(socket_wsaprotocol_info_export, arginfo_socket_wsaprotocol_info_export)
315 #endif
316 #if defined(PHP_WIN32)
317 	ZEND_FE(socket_wsaprotocol_info_import, arginfo_socket_wsaprotocol_info_import)
318 #endif
319 #if defined(PHP_WIN32)
320 	ZEND_FE(socket_wsaprotocol_info_release, arginfo_socket_wsaprotocol_info_release)
321 #endif
322 	ZEND_FE_END
323 };
324 
325 static const zend_function_entry class_Socket_methods[] = {
326 	ZEND_FE_END
327 };
328 
329 static const zend_function_entry class_AddressInfo_methods[] = {
330 	ZEND_FE_END
331 };
332 
register_sockets_symbols(int module_number)333 static void register_sockets_symbols(int module_number)
334 {
335 	REGISTER_LONG_CONSTANT("AF_UNIX", AF_UNIX, CONST_PERSISTENT);
336 	REGISTER_LONG_CONSTANT("AF_INET", AF_INET, CONST_PERSISTENT);
337 #if defined(HAVE_IPV6)
338 	REGISTER_LONG_CONSTANT("AF_INET6", AF_INET6, CONST_PERSISTENT);
339 #endif
340 #if defined(AF_DIVERT)
341 	REGISTER_LONG_CONSTANT("AF_DIVERT", AF_DIVERT, CONST_PERSISTENT);
342 #endif
343 	REGISTER_LONG_CONSTANT("SOCK_STREAM", SOCK_STREAM, CONST_PERSISTENT);
344 	REGISTER_LONG_CONSTANT("SOCK_DGRAM", SOCK_DGRAM, CONST_PERSISTENT);
345 	REGISTER_LONG_CONSTANT("SOCK_RAW", SOCK_RAW, CONST_PERSISTENT);
346 	REGISTER_LONG_CONSTANT("SOCK_SEQPACKET", SOCK_SEQPACKET, CONST_PERSISTENT);
347 #if defined(SOCK_RDM)
348 	REGISTER_LONG_CONSTANT("SOCK_RDM", SOCK_RDM, CONST_PERSISTENT);
349 #endif
350 #if defined(SOCK_CONN_DGRAM)
351 	REGISTER_LONG_CONSTANT("SOCK_CONN_DGRAM", SOCK_CONN_DGRAM, CONST_PERSISTENT);
352 #endif
353 #if defined(SOCK_CONN_DGRAM)
354 	REGISTER_LONG_CONSTANT("SOCK_DCCP", SOCK_DCCP, CONST_PERSISTENT);
355 #endif
356 	REGISTER_LONG_CONSTANT("MSG_OOB", MSG_OOB, CONST_PERSISTENT);
357 	REGISTER_LONG_CONSTANT("MSG_WAITALL", MSG_WAITALL, CONST_PERSISTENT);
358 	REGISTER_LONG_CONSTANT("MSG_CTRUNC", MSG_CTRUNC, CONST_PERSISTENT);
359 	REGISTER_LONG_CONSTANT("MSG_TRUNC", MSG_TRUNC, CONST_PERSISTENT);
360 	REGISTER_LONG_CONSTANT("MSG_PEEK", MSG_PEEK, CONST_PERSISTENT);
361 	REGISTER_LONG_CONSTANT("MSG_DONTROUTE", MSG_DONTROUTE, CONST_PERSISTENT);
362 #if defined(MSG_EOR)
363 	REGISTER_LONG_CONSTANT("MSG_EOR", MSG_EOR, CONST_PERSISTENT);
364 #endif
365 #if defined(MSG_EOF)
366 	REGISTER_LONG_CONSTANT("MSG_EOF", MSG_EOF, CONST_PERSISTENT);
367 #endif
368 #if defined(MSG_CONFIRM)
369 	REGISTER_LONG_CONSTANT("MSG_CONFIRM", MSG_CONFIRM, CONST_PERSISTENT);
370 #endif
371 #if defined(MSG_ERRQUEUE)
372 	REGISTER_LONG_CONSTANT("MSG_ERRQUEUE", MSG_ERRQUEUE, CONST_PERSISTENT);
373 #endif
374 #if defined(MSG_NOSIGNAL)
375 	REGISTER_LONG_CONSTANT("MSG_NOSIGNAL", MSG_NOSIGNAL, CONST_PERSISTENT);
376 #endif
377 #if defined(MSG_DONTWAIT)
378 	REGISTER_LONG_CONSTANT("MSG_DONTWAIT", MSG_DONTWAIT, CONST_PERSISTENT);
379 #endif
380 #if defined(MSG_MORE)
381 	REGISTER_LONG_CONSTANT("MSG_MORE", MSG_MORE, CONST_PERSISTENT);
382 #endif
383 #if defined(MSG_WAITFORONE)
384 	REGISTER_LONG_CONSTANT("MSG_WAITFORONE", MSG_WAITFORONE, CONST_PERSISTENT);
385 #endif
386 #if defined(MSG_CMSG_CLOEXEC)
387 	REGISTER_LONG_CONSTANT("MSG_CMSG_CLOEXEC", MSG_CMSG_CLOEXEC, CONST_PERSISTENT);
388 #endif
389 #if defined(MSG_ZEROCOPY)
390 	REGISTER_LONG_CONSTANT("MSG_ZEROCOPY", MSG_ZEROCOPY, CONST_PERSISTENT);
391 #endif
392 	REGISTER_LONG_CONSTANT("SO_DEBUG", SO_DEBUG, CONST_PERSISTENT);
393 	REGISTER_LONG_CONSTANT("SO_REUSEADDR", SO_REUSEADDR, CONST_PERSISTENT);
394 #if defined(SO_REUSEPORT)
395 	REGISTER_LONG_CONSTANT("SO_REUSEPORT", SO_REUSEPORT, CONST_PERSISTENT);
396 #endif
397 #if defined(SO_REUSEPORT_LB)
398 	REGISTER_LONG_CONSTANT("SO_REUSEPORT_LB", SO_REUSEPORT_LB, CONST_PERSISTENT);
399 #endif
400 	REGISTER_LONG_CONSTANT("SO_KEEPALIVE", SO_KEEPALIVE, CONST_PERSISTENT);
401 	REGISTER_LONG_CONSTANT("SO_DONTROUTE", SO_DONTROUTE, CONST_PERSISTENT);
402 	REGISTER_LONG_CONSTANT("SO_LINGER", SO_LINGER, CONST_PERSISTENT);
403 	REGISTER_LONG_CONSTANT("SO_BROADCAST", SO_BROADCAST, CONST_PERSISTENT);
404 	REGISTER_LONG_CONSTANT("SO_OOBINLINE", SO_OOBINLINE, CONST_PERSISTENT);
405 	REGISTER_LONG_CONSTANT("SO_SNDBUF", SO_SNDBUF, CONST_PERSISTENT);
406 	REGISTER_LONG_CONSTANT("SO_RCVBUF", SO_RCVBUF, CONST_PERSISTENT);
407 	REGISTER_LONG_CONSTANT("SO_SNDLOWAT", SO_SNDLOWAT, CONST_PERSISTENT);
408 	REGISTER_LONG_CONSTANT("SO_RCVLOWAT", SO_RCVLOWAT, CONST_PERSISTENT);
409 	REGISTER_LONG_CONSTANT("SO_SNDTIMEO", SO_SNDTIMEO, CONST_PERSISTENT);
410 	REGISTER_LONG_CONSTANT("SO_RCVTIMEO", SO_RCVTIMEO, CONST_PERSISTENT);
411 	REGISTER_LONG_CONSTANT("SO_TYPE", SO_TYPE, CONST_PERSISTENT);
412 #if defined(SO_FAMILY)
413 	REGISTER_LONG_CONSTANT("SO_FAMILY", SO_FAMILY, CONST_PERSISTENT);
414 #endif
415 	REGISTER_LONG_CONSTANT("SO_ERROR", SO_ERROR, CONST_PERSISTENT);
416 #if defined(SO_BINDTODEVICE)
417 	REGISTER_LONG_CONSTANT("SO_BINDTODEVICE", SO_BINDTODEVICE, CONST_PERSISTENT);
418 #endif
419 #if defined(SO_USER_COOKIE)
420 	REGISTER_LONG_CONSTANT("SO_LABEL", SO_LABEL, CONST_PERSISTENT);
421 #endif
422 #if defined(SO_USER_COOKIE)
423 	REGISTER_LONG_CONSTANT("SO_PEERLABEL", SO_PEERLABEL, CONST_PERSISTENT);
424 #endif
425 #if defined(SO_USER_COOKIE)
426 	REGISTER_LONG_CONSTANT("SO_LISTENQLIMIT", SO_LISTENQLIMIT, CONST_PERSISTENT);
427 #endif
428 #if defined(SO_USER_COOKIE)
429 	REGISTER_LONG_CONSTANT("SO_LISTENQLEN", SO_LISTENQLEN, CONST_PERSISTENT);
430 #endif
431 #if defined(SO_USER_COOKIE)
432 	REGISTER_LONG_CONSTANT("SO_USER_COOKIE", SO_USER_COOKIE, CONST_PERSISTENT);
433 #endif
434 #if defined(SO_SETFIB)
435 	REGISTER_LONG_CONSTANT("SO_SETFIB", SO_SETFIB, CONST_PERSISTENT);
436 #endif
437 #if defined(SO_ACCEPTFILTER)
438 	REGISTER_LONG_CONSTANT("SO_ACCEPTFILTER", SO_ACCEPTFILTER, CONST_PERSISTENT);
439 #endif
440 #if defined(SO_RERROR)
441 	REGISTER_LONG_CONSTANT("SO_RERROR", SO_RERROR, CONST_PERSISTENT);
442 #endif
443 #if defined(SO_SOPLICE)
444 	REGISTER_LONG_CONSTANT("SO_SPLICE", SO_SPLICE, CONST_PERSISTENT);
445 #endif
446 #if defined(SO_ZEROIZE)
447 	REGISTER_LONG_CONSTANT("SO_ZEROIZE", SO_ZEROIZE, CONST_PERSISTENT);
448 #endif
449 #if defined(SOL_FILTER)
450 	REGISTER_LONG_CONSTANT("SOL_FILTER", SOL_FILTER, CONST_PERSISTENT);
451 #endif
452 #if defined(SOL_FILTER)
453 	REGISTER_LONG_CONSTANT("FIL_ATTACH", FIL_ATTACH, CONST_PERSISTENT);
454 #endif
455 #if defined(SOL_FILTER)
456 	REGISTER_LONG_CONSTANT("FIL_DETACH", FIL_DETACH, CONST_PERSISTENT);
457 #endif
458 #if defined(SO_DONTTRUNC)
459 	REGISTER_LONG_CONSTANT("SO_DONTTRUNC", SO_DONTTRUNC, CONST_PERSISTENT);
460 #endif
461 #if defined(SO_WANTMORE)
462 	REGISTER_LONG_CONSTANT("SO_WANTMORE", SO_WANTMORE, CONST_PERSISTENT);
463 #endif
464 	REGISTER_LONG_CONSTANT("SOL_SOCKET", SOL_SOCKET, CONST_PERSISTENT);
465 	REGISTER_LONG_CONSTANT("SOMAXCONN", SOMAXCONN, CONST_PERSISTENT);
466 #if defined(SO_MARK)
467 	REGISTER_LONG_CONSTANT("SO_MARK", SO_MARK, CONST_PERSISTENT);
468 #endif
469 #if defined(SO_RTABLE)
470 	REGISTER_LONG_CONSTANT("SO_RTABLE", SO_RTABLE, CONST_PERSISTENT);
471 #endif
472 #if defined(SO_INCOMING_CPU)
473 	REGISTER_LONG_CONSTANT("SO_INCOMING_CPU", SO_INCOMING_CPU, CONST_PERSISTENT);
474 #endif
475 #if defined(SO_MEMINFO)
476 	REGISTER_LONG_CONSTANT("SO_MEMINFO", SO_MEMINFO, CONST_PERSISTENT);
477 #endif
478 #if defined(SO_BPF_EXTENSIONS)
479 	REGISTER_LONG_CONSTANT("SO_BPF_EXTENSIONS", SO_BPF_EXTENSIONS, CONST_PERSISTENT);
480 #endif
481 #if defined(SO_EXCLBIND)
482 	REGISTER_LONG_CONSTANT("SO_EXCLBIND", SO_EXCLBIND, CONST_PERSISTENT);
483 #endif
484 #if defined(SKF_AD_OFF)
485 	REGISTER_LONG_CONSTANT("SKF_AD_OFF", SKF_AD_OFF, CONST_PERSISTENT);
486 #endif
487 #if defined(SKF_AD_PROTOCOL)
488 	REGISTER_LONG_CONSTANT("SKF_AD_PROTOCOL", SKF_AD_PROTOCOL, CONST_PERSISTENT);
489 #endif
490 #if defined(SKF_AD_PKTTYPE)
491 	REGISTER_LONG_CONSTANT("SKF_AD_PKTTYPE", SKF_AD_PKTTYPE, CONST_PERSISTENT);
492 #endif
493 #if defined(SKF_AD_IFINDEX)
494 	REGISTER_LONG_CONSTANT("SKF_AD_IFINDEX", SKF_AD_IFINDEX, CONST_PERSISTENT);
495 #endif
496 #if defined(SKF_AD_NLATTR)
497 	REGISTER_LONG_CONSTANT("SKF_AD_NLATTR", SKF_AD_NLATTR, CONST_PERSISTENT);
498 #endif
499 #if defined(SKF_AD_NLATTR_NEST)
500 	REGISTER_LONG_CONSTANT("SKF_AD_NLATTR_NEST", SKF_AD_NLATTR_NEST, CONST_PERSISTENT);
501 #endif
502 #if defined(SKF_AD_MARK)
503 	REGISTER_LONG_CONSTANT("SKF_AD_MARK", SKF_AD_MARK, CONST_PERSISTENT);
504 #endif
505 #if defined(SKF_AD_QUEUE)
506 	REGISTER_LONG_CONSTANT("SKF_AD_QUEUE", SKF_AD_QUEUE, CONST_PERSISTENT);
507 #endif
508 #if defined(SKF_AD_HATYPE)
509 	REGISTER_LONG_CONSTANT("SKF_AD_HATYPE", SKF_AD_HATYPE, CONST_PERSISTENT);
510 #endif
511 #if defined(SKF_AD_RXHASH)
512 	REGISTER_LONG_CONSTANT("SKF_AD_RXHASH", SKF_AD_RXHASH, CONST_PERSISTENT);
513 #endif
514 #if defined(SKF_AD_CPU)
515 	REGISTER_LONG_CONSTANT("SKF_AD_CPU", SKF_AD_CPU, CONST_PERSISTENT);
516 #endif
517 #if defined(SKF_AD_ALU_XOR_X)
518 	REGISTER_LONG_CONSTANT("SKF_AD_ALU_XOR_X", SKF_AD_ALU_XOR_X, CONST_PERSISTENT);
519 #endif
520 #if defined(SKF_AD_VLAN_TAG)
521 	REGISTER_LONG_CONSTANT("SKF_AD_VLAN_TAG", SKF_AD_VLAN_TAG, CONST_PERSISTENT);
522 #endif
523 #if defined(SKF_AD_VLAN_TAG_PRESENT)
524 	REGISTER_LONG_CONSTANT("SKF_AD_VLAN_TAG_PRESENT", SKF_AD_VLAN_TAG_PRESENT, CONST_PERSISTENT);
525 #endif
526 #if defined(SKF_AD_PAY_OFFSET)
527 	REGISTER_LONG_CONSTANT("SKF_AD_PAY_OFFSET", SKF_AD_PAY_OFFSET, CONST_PERSISTENT);
528 #endif
529 #if defined(SKF_AD_RANDOM)
530 	REGISTER_LONG_CONSTANT("SKF_AD_RANDOM", SKF_AD_RANDOM, CONST_PERSISTENT);
531 #endif
532 #if defined(SKF_AD_VLAN_TPID)
533 	REGISTER_LONG_CONSTANT("SKF_AD_VLAN_TPID", SKF_AD_VLAN_TPID, CONST_PERSISTENT);
534 #endif
535 #if defined(SKF_AD_MAX)
536 	REGISTER_LONG_CONSTANT("SKF_AD_MAX", SKF_AD_MAX, CONST_PERSISTENT);
537 #endif
538 #if defined(TCP_CONGESTION)
539 	REGISTER_LONG_CONSTANT("TCP_CONGESTION", TCP_CONGESTION, CONST_PERSISTENT);
540 #endif
541 #if defined(TCP_SYNCNT)
542 	REGISTER_LONG_CONSTANT("TCP_SYNCNT", TCP_SYNCNT, CONST_PERSISTENT);
543 #endif
544 #if defined(SO_ZEROCOPY)
545 	REGISTER_LONG_CONSTANT("SO_ZEROCOPY", SO_ZEROCOPY, CONST_PERSISTENT);
546 #endif
547 #if defined(TCP_NODELAY)
548 	REGISTER_LONG_CONSTANT("TCP_NODELAY", TCP_NODELAY, CONST_PERSISTENT);
549 #endif
550 #if defined(TCP_NOTSENT_LOWAT)
551 	REGISTER_LONG_CONSTANT("TCP_NOTSENT_LOWAT", TCP_NOTSENT_LOWAT, CONST_PERSISTENT);
552 #endif
553 #if defined(TCP_DEFER_ACCEPT)
554 	REGISTER_LONG_CONSTANT("TCP_DEFER_ACCEPT", TCP_DEFER_ACCEPT, CONST_PERSISTENT);
555 #endif
556 #if defined(TCP_KEEPALIVE)
557 	REGISTER_LONG_CONSTANT("TCP_KEEPALIVE", TCP_KEEPALIVE, CONST_PERSISTENT);
558 #endif
559 #if defined(TCP_KEEPIDLE)
560 	REGISTER_LONG_CONSTANT("TCP_KEEPIDLE", TCP_KEEPIDLE, CONST_PERSISTENT);
561 #endif
562 #if defined(TCP_KEEPIDLE)
563 	REGISTER_LONG_CONSTANT("TCP_KEEPINTVL", TCP_KEEPINTVL, CONST_PERSISTENT);
564 #endif
565 #if defined(TCP_KEEPIDLE)
566 	REGISTER_LONG_CONSTANT("TCP_KEEPCNT", TCP_KEEPCNT, CONST_PERSISTENT);
567 #endif
568 	REGISTER_LONG_CONSTANT("PHP_NORMAL_READ", PHP_NORMAL_READ, CONST_PERSISTENT);
569 	REGISTER_LONG_CONSTANT("PHP_BINARY_READ", PHP_BINARY_READ, CONST_PERSISTENT);
570 	REGISTER_LONG_CONSTANT("MCAST_JOIN_GROUP", PHP_MCAST_JOIN_GROUP, CONST_PERSISTENT);
571 	REGISTER_LONG_CONSTANT("MCAST_LEAVE_GROUP", PHP_MCAST_LEAVE_GROUP, CONST_PERSISTENT);
572 #if defined(HAS_MCAST_EXT)
573 	REGISTER_LONG_CONSTANT("MCAST_BLOCK_SOURCE", PHP_MCAST_BLOCK_SOURCE, CONST_PERSISTENT);
574 #endif
575 #if defined(HAS_MCAST_EXT)
576 	REGISTER_LONG_CONSTANT("MCAST_UNBLOCK_SOURCE", PHP_MCAST_UNBLOCK_SOURCE, CONST_PERSISTENT);
577 #endif
578 #if defined(HAS_MCAST_EXT)
579 	REGISTER_LONG_CONSTANT("MCAST_JOIN_SOURCE_GROUP", PHP_MCAST_JOIN_SOURCE_GROUP, CONST_PERSISTENT);
580 #endif
581 #if defined(HAS_MCAST_EXT)
582 	REGISTER_LONG_CONSTANT("MCAST_LEAVE_SOURCE_GROUP", PHP_MCAST_LEAVE_SOURCE_GROUP, CONST_PERSISTENT);
583 #endif
584 	REGISTER_LONG_CONSTANT("IP_MULTICAST_IF", IP_MULTICAST_IF, CONST_PERSISTENT);
585 	REGISTER_LONG_CONSTANT("IP_MULTICAST_TTL", IP_MULTICAST_TTL, CONST_PERSISTENT);
586 	REGISTER_LONG_CONSTANT("IP_MULTICAST_LOOP", IP_MULTICAST_LOOP, CONST_PERSISTENT);
587 #if defined(IP_BIND_ADDRESS_NO_PORT)
588 	REGISTER_LONG_CONSTANT("IP_BIND_ADDRESS_NO_PORT", IP_BIND_ADDRESS_NO_PORT, CONST_PERSISTENT);
589 #endif
590 #if defined(HAVE_IPV6)
591 	REGISTER_LONG_CONSTANT("IPV6_MULTICAST_IF", IPV6_MULTICAST_IF, CONST_PERSISTENT);
592 #endif
593 #if defined(HAVE_IPV6)
594 	REGISTER_LONG_CONSTANT("IPV6_MULTICAST_HOPS", IPV6_MULTICAST_HOPS, CONST_PERSISTENT);
595 #endif
596 #if defined(HAVE_IPV6)
597 	REGISTER_LONG_CONSTANT("IPV6_MULTICAST_LOOP", IPV6_MULTICAST_LOOP, CONST_PERSISTENT);
598 #endif
599 #if defined(IPV6_V6ONLY)
600 	REGISTER_LONG_CONSTANT("IPV6_V6ONLY", IPV6_V6ONLY, CONST_PERSISTENT);
601 #endif
602 #if defined(EPERM)
603 	REGISTER_LONG_CONSTANT("SOCKET_EPERM", EPERM, CONST_PERSISTENT);
604 #endif
605 #if defined(ENOENT)
606 	REGISTER_LONG_CONSTANT("SOCKET_ENOENT", ENOENT, CONST_PERSISTENT);
607 #endif
608 #if defined(PHP_SOCKET_EINTR)
609 	REGISTER_LONG_CONSTANT("SOCKET_EINTR", PHP_SOCKET_EINTR, CONST_PERSISTENT);
610 #endif
611 #if defined(EIO)
612 	REGISTER_LONG_CONSTANT("SOCKET_EIO", EIO, CONST_PERSISTENT);
613 #endif
614 #if defined(ENXIO)
615 	REGISTER_LONG_CONSTANT("SOCKET_ENXIO", ENXIO, CONST_PERSISTENT);
616 #endif
617 #if defined(E2BIG)
618 	REGISTER_LONG_CONSTANT("SOCKET_E2BIG", E2BIG, CONST_PERSISTENT);
619 #endif
620 #if defined(PHP_SOCKET_EBADF)
621 	REGISTER_LONG_CONSTANT("SOCKET_EBADF", PHP_SOCKET_EBADF, CONST_PERSISTENT);
622 #endif
623 #if defined(EAGAIN)
624 	REGISTER_LONG_CONSTANT("SOCKET_EAGAIN", EAGAIN, CONST_PERSISTENT);
625 #endif
626 #if defined(ENOMEM)
627 	REGISTER_LONG_CONSTANT("SOCKET_ENOMEM", ENOMEM, CONST_PERSISTENT);
628 #endif
629 #if defined(PHP_SOCKET_EACCES)
630 	REGISTER_LONG_CONSTANT("SOCKET_EACCES", PHP_SOCKET_EACCES, CONST_PERSISTENT);
631 #endif
632 #if defined(PHP_SOCKET_EFAULT)
633 	REGISTER_LONG_CONSTANT("SOCKET_EFAULT", PHP_SOCKET_EFAULT, CONST_PERSISTENT);
634 #endif
635 #if defined(ENOTBLK)
636 	REGISTER_LONG_CONSTANT("SOCKET_ENOTBLK", ENOTBLK, CONST_PERSISTENT);
637 #endif
638 #if defined(EBUSY)
639 	REGISTER_LONG_CONSTANT("SOCKET_EBUSY", EBUSY, CONST_PERSISTENT);
640 #endif
641 #if defined(EEXIST)
642 	REGISTER_LONG_CONSTANT("SOCKET_EEXIST", EEXIST, CONST_PERSISTENT);
643 #endif
644 #if defined(EXDEV)
645 	REGISTER_LONG_CONSTANT("SOCKET_EXDEV", EXDEV, CONST_PERSISTENT);
646 #endif
647 #if defined(ENODEV)
648 	REGISTER_LONG_CONSTANT("SOCKET_ENODEV", ENODEV, CONST_PERSISTENT);
649 #endif
650 #if defined(ENOTDIR)
651 	REGISTER_LONG_CONSTANT("SOCKET_ENOTDIR", ENOTDIR, CONST_PERSISTENT);
652 #endif
653 #if defined(EISDIR)
654 	REGISTER_LONG_CONSTANT("SOCKET_EISDIR", EISDIR, CONST_PERSISTENT);
655 #endif
656 #if defined(PHP_SOCKET_EINVAL)
657 	REGISTER_LONG_CONSTANT("SOCKET_EINVAL", PHP_SOCKET_EINVAL, CONST_PERSISTENT);
658 #endif
659 #if defined(PHP_SOCKET_ENFILE)
660 	REGISTER_LONG_CONSTANT("SOCKET_ENFILE", PHP_SOCKET_ENFILE, CONST_PERSISTENT);
661 #endif
662 #if defined(PHP_SOCKET_EMFILE)
663 	REGISTER_LONG_CONSTANT("SOCKET_EMFILE", PHP_SOCKET_EMFILE, CONST_PERSISTENT);
664 #endif
665 #if defined(ENOTTY)
666 	REGISTER_LONG_CONSTANT("SOCKET_ENOTTY", ENOTTY, CONST_PERSISTENT);
667 #endif
668 #if defined(ENOSPC)
669 	REGISTER_LONG_CONSTANT("SOCKET_ENOSPC", ENOSPC, CONST_PERSISTENT);
670 #endif
671 #if defined(ESPIPE)
672 	REGISTER_LONG_CONSTANT("SOCKET_ESPIPE", ESPIPE, CONST_PERSISTENT);
673 #endif
674 #if defined(EROFS)
675 	REGISTER_LONG_CONSTANT("SOCKET_EROFS", EROFS, CONST_PERSISTENT);
676 #endif
677 #if defined(EMLINK)
678 	REGISTER_LONG_CONSTANT("SOCKET_EMLINK", EMLINK, CONST_PERSISTENT);
679 #endif
680 #if defined(EPIPE)
681 	REGISTER_LONG_CONSTANT("SOCKET_EPIPE", EPIPE, CONST_PERSISTENT);
682 #endif
683 #if defined(PHP_SOCKET_ENAMETOOLONG)
684 	REGISTER_LONG_CONSTANT("SOCKET_ENAMETOOLONG", PHP_SOCKET_ENAMETOOLONG, CONST_PERSISTENT);
685 #endif
686 #if defined(ENOLCK)
687 	REGISTER_LONG_CONSTANT("SOCKET_ENOLCK", ENOLCK, CONST_PERSISTENT);
688 #endif
689 #if defined(ENOSYS)
690 	REGISTER_LONG_CONSTANT("SOCKET_ENOSYS", ENOSYS, CONST_PERSISTENT);
691 #endif
692 #if defined(PHP_SOCKET_ENOTEMPTY)
693 	REGISTER_LONG_CONSTANT("SOCKET_ENOTEMPTY", PHP_SOCKET_ENOTEMPTY, CONST_PERSISTENT);
694 #endif
695 #if defined(PHP_SOCKET_ELOOP)
696 	REGISTER_LONG_CONSTANT("SOCKET_ELOOP", PHP_SOCKET_ELOOP, CONST_PERSISTENT);
697 #endif
698 #if defined(PHP_SOCKET_EWOULDBLOCK)
699 	REGISTER_LONG_CONSTANT("SOCKET_EWOULDBLOCK", PHP_SOCKET_EWOULDBLOCK, CONST_PERSISTENT);
700 #endif
701 #if defined(ENOMSG)
702 	REGISTER_LONG_CONSTANT("SOCKET_ENOMSG", ENOMSG, CONST_PERSISTENT);
703 #endif
704 #if defined(EIDRM)
705 	REGISTER_LONG_CONSTANT("SOCKET_EIDRM", EIDRM, CONST_PERSISTENT);
706 #endif
707 #if defined(ECHRNG)
708 	REGISTER_LONG_CONSTANT("SOCKET_ECHRNG", ECHRNG, CONST_PERSISTENT);
709 #endif
710 #if defined(EL2NSYNC)
711 	REGISTER_LONG_CONSTANT("SOCKET_EL2NSYNC", EL2NSYNC, CONST_PERSISTENT);
712 #endif
713 #if defined(EL3HLT)
714 	REGISTER_LONG_CONSTANT("SOCKET_EL3HLT", EL3HLT, CONST_PERSISTENT);
715 #endif
716 #if defined(EL3RST)
717 	REGISTER_LONG_CONSTANT("SOCKET_EL3RST", EL3RST, CONST_PERSISTENT);
718 #endif
719 #if defined(ELNRNG)
720 	REGISTER_LONG_CONSTANT("SOCKET_ELNRNG", ELNRNG, CONST_PERSISTENT);
721 #endif
722 #if defined(EUNATCH)
723 	REGISTER_LONG_CONSTANT("SOCKET_EUNATCH", EUNATCH, CONST_PERSISTENT);
724 #endif
725 #if defined(ENOCSI)
726 	REGISTER_LONG_CONSTANT("SOCKET_ENOCSI", ENOCSI, CONST_PERSISTENT);
727 #endif
728 #if defined(EL2HLT)
729 	REGISTER_LONG_CONSTANT("SOCKET_EL2HLT", EL2HLT, CONST_PERSISTENT);
730 #endif
731 #if defined(EBADE)
732 	REGISTER_LONG_CONSTANT("SOCKET_EBADE", EBADE, CONST_PERSISTENT);
733 #endif
734 #if defined(EBADR)
735 	REGISTER_LONG_CONSTANT("SOCKET_EBADR", EBADR, CONST_PERSISTENT);
736 #endif
737 #if defined(EXFULL)
738 	REGISTER_LONG_CONSTANT("SOCKET_EXFULL", EXFULL, CONST_PERSISTENT);
739 #endif
740 #if defined(ENOANO)
741 	REGISTER_LONG_CONSTANT("SOCKET_ENOANO", ENOANO, CONST_PERSISTENT);
742 #endif
743 #if defined(EBADRQC)
744 	REGISTER_LONG_CONSTANT("SOCKET_EBADRQC", EBADRQC, CONST_PERSISTENT);
745 #endif
746 #if defined(EBADSLT)
747 	REGISTER_LONG_CONSTANT("SOCKET_EBADSLT", EBADSLT, CONST_PERSISTENT);
748 #endif
749 #if defined(ENOSTR)
750 	REGISTER_LONG_CONSTANT("SOCKET_ENOSTR", ENOSTR, CONST_PERSISTENT);
751 #endif
752 #if defined(ENODATA)
753 	REGISTER_LONG_CONSTANT("SOCKET_ENODATA", ENODATA, CONST_PERSISTENT);
754 #endif
755 #if defined(ETIME)
756 	REGISTER_LONG_CONSTANT("SOCKET_ETIME", ETIME, CONST_PERSISTENT);
757 #endif
758 #if defined(ENOSR)
759 	REGISTER_LONG_CONSTANT("SOCKET_ENOSR", ENOSR, CONST_PERSISTENT);
760 #endif
761 #if defined(ENONET)
762 	REGISTER_LONG_CONSTANT("SOCKET_ENONET", ENONET, CONST_PERSISTENT);
763 #endif
764 #if defined(PHP_SOCKET_EREMOTE)
765 	REGISTER_LONG_CONSTANT("SOCKET_EREMOTE", PHP_SOCKET_EREMOTE, CONST_PERSISTENT);
766 #endif
767 #if defined(ENOLINK)
768 	REGISTER_LONG_CONSTANT("SOCKET_ENOLINK", ENOLINK, CONST_PERSISTENT);
769 #endif
770 #if defined(EADV)
771 	REGISTER_LONG_CONSTANT("SOCKET_EADV", EADV, CONST_PERSISTENT);
772 #endif
773 #if defined(ESRMNT)
774 	REGISTER_LONG_CONSTANT("SOCKET_ESRMNT", ESRMNT, CONST_PERSISTENT);
775 #endif
776 #if defined(ECOMM)
777 	REGISTER_LONG_CONSTANT("SOCKET_ECOMM", ECOMM, CONST_PERSISTENT);
778 #endif
779 #if defined(EPROTO)
780 	REGISTER_LONG_CONSTANT("SOCKET_EPROTO", EPROTO, CONST_PERSISTENT);
781 #endif
782 #if defined(EMULTIHOP)
783 	REGISTER_LONG_CONSTANT("SOCKET_EMULTIHOP", EMULTIHOP, CONST_PERSISTENT);
784 #endif
785 #if defined(EBADMSG)
786 	REGISTER_LONG_CONSTANT("SOCKET_EBADMSG", EBADMSG, CONST_PERSISTENT);
787 #endif
788 #if defined(ENOTUNIQ)
789 	REGISTER_LONG_CONSTANT("SOCKET_ENOTUNIQ", ENOTUNIQ, CONST_PERSISTENT);
790 #endif
791 #if defined(EBADFD)
792 	REGISTER_LONG_CONSTANT("SOCKET_EBADFD", EBADFD, CONST_PERSISTENT);
793 #endif
794 #if defined(EREMCHG)
795 	REGISTER_LONG_CONSTANT("SOCKET_EREMCHG", EREMCHG, CONST_PERSISTENT);
796 #endif
797 #if defined(ERESTART)
798 	REGISTER_LONG_CONSTANT("SOCKET_ERESTART", ERESTART, CONST_PERSISTENT);
799 #endif
800 #if defined(ESTRPIPE)
801 	REGISTER_LONG_CONSTANT("SOCKET_ESTRPIPE", ESTRPIPE, CONST_PERSISTENT);
802 #endif
803 #if defined(PHP_SOCKET_EUSERS)
804 	REGISTER_LONG_CONSTANT("SOCKET_EUSERS", PHP_SOCKET_EUSERS, CONST_PERSISTENT);
805 #endif
806 #if defined(PHP_SOCKET_ENOTSOCK)
807 	REGISTER_LONG_CONSTANT("SOCKET_ENOTSOCK", PHP_SOCKET_ENOTSOCK, CONST_PERSISTENT);
808 #endif
809 #if defined(PHP_SOCKET_EDESTADDRREQ)
810 	REGISTER_LONG_CONSTANT("SOCKET_EDESTADDRREQ", PHP_SOCKET_EDESTADDRREQ, CONST_PERSISTENT);
811 #endif
812 #if defined(PHP_SOCKET_EMSGSIZE)
813 	REGISTER_LONG_CONSTANT("SOCKET_EMSGSIZE", PHP_SOCKET_EMSGSIZE, CONST_PERSISTENT);
814 #endif
815 #if defined(PHP_SOCKET_EPROTOTYPE)
816 	REGISTER_LONG_CONSTANT("SOCKET_EPROTOTYPE", PHP_SOCKET_EPROTOTYPE, CONST_PERSISTENT);
817 #endif
818 #if defined(PHP_SOCKET_ENOPROTOOPT)
819 	REGISTER_LONG_CONSTANT("SOCKET_ENOPROTOOPT", PHP_SOCKET_ENOPROTOOPT, CONST_PERSISTENT);
820 #endif
821 #if defined(PHP_SOCKET_EPROTONOSUPPORT)
822 	REGISTER_LONG_CONSTANT("SOCKET_EPROTONOSUPPORT", PHP_SOCKET_EPROTONOSUPPORT, CONST_PERSISTENT);
823 #endif
824 #if defined(PHP_SOCKET_ESOCKTNOSUPPORT)
825 	REGISTER_LONG_CONSTANT("SOCKET_ESOCKTNOSUPPORT", PHP_SOCKET_ESOCKTNOSUPPORT, CONST_PERSISTENT);
826 #endif
827 #if defined(PHP_SOCKET_EOPNOTSUPP)
828 	REGISTER_LONG_CONSTANT("SOCKET_EOPNOTSUPP", PHP_SOCKET_EOPNOTSUPP, CONST_PERSISTENT);
829 #endif
830 #if defined(PHP_SOCKET_EPFNOSUPPORT)
831 	REGISTER_LONG_CONSTANT("SOCKET_EPFNOSUPPORT", PHP_SOCKET_EPFNOSUPPORT, CONST_PERSISTENT);
832 #endif
833 #if defined(PHP_SOCKET_EAFNOSUPPORT)
834 	REGISTER_LONG_CONSTANT("SOCKET_EAFNOSUPPORT", PHP_SOCKET_EAFNOSUPPORT, CONST_PERSISTENT);
835 #endif
836 #if defined(PHP_SOCKET_EADDRINUSE)
837 	REGISTER_LONG_CONSTANT("SOCKET_EADDRINUSE", PHP_SOCKET_EADDRINUSE, CONST_PERSISTENT);
838 #endif
839 #if defined(PHP_SOCKET_EADDRNOTAVAIL)
840 	REGISTER_LONG_CONSTANT("SOCKET_EADDRNOTAVAIL", PHP_SOCKET_EADDRNOTAVAIL, CONST_PERSISTENT);
841 #endif
842 #if defined(PHP_SOCKET_ENETDOWN)
843 	REGISTER_LONG_CONSTANT("SOCKET_ENETDOWN", PHP_SOCKET_ENETDOWN, CONST_PERSISTENT);
844 #endif
845 #if defined(PHP_SOCKET_ENETUNREACH)
846 	REGISTER_LONG_CONSTANT("SOCKET_ENETUNREACH", PHP_SOCKET_ENETUNREACH, CONST_PERSISTENT);
847 #endif
848 #if defined(PHP_SOCKET_ENETRESET)
849 	REGISTER_LONG_CONSTANT("SOCKET_ENETRESET", PHP_SOCKET_ENETRESET, CONST_PERSISTENT);
850 #endif
851 #if defined(PHP_SOCKET_ECONNABORTED)
852 	REGISTER_LONG_CONSTANT("SOCKET_ECONNABORTED", PHP_SOCKET_ECONNABORTED, CONST_PERSISTENT);
853 #endif
854 #if defined(PHP_SOCKET_ECONNRESET)
855 	REGISTER_LONG_CONSTANT("SOCKET_ECONNRESET", PHP_SOCKET_ECONNRESET, CONST_PERSISTENT);
856 #endif
857 #if defined(PHP_SOCKET_ENOBUFS)
858 	REGISTER_LONG_CONSTANT("SOCKET_ENOBUFS", PHP_SOCKET_ENOBUFS, CONST_PERSISTENT);
859 #endif
860 #if defined(PHP_SOCKET_EISCONN)
861 	REGISTER_LONG_CONSTANT("SOCKET_EISCONN", PHP_SOCKET_EISCONN, CONST_PERSISTENT);
862 #endif
863 #if defined(PHP_SOCKET_ENOTCONN)
864 	REGISTER_LONG_CONSTANT("SOCKET_ENOTCONN", PHP_SOCKET_ENOTCONN, CONST_PERSISTENT);
865 #endif
866 #if defined(PHP_SOCKET_ESHUTDOWN)
867 	REGISTER_LONG_CONSTANT("SOCKET_ESHUTDOWN", PHP_SOCKET_ESHUTDOWN, CONST_PERSISTENT);
868 #endif
869 #if defined(PHP_SOCKET_ETOOMANYREFS)
870 	REGISTER_LONG_CONSTANT("SOCKET_ETOOMANYREFS", PHP_SOCKET_ETOOMANYREFS, CONST_PERSISTENT);
871 #endif
872 #if defined(PHP_SOCKET_ETIMEDOUT)
873 	REGISTER_LONG_CONSTANT("SOCKET_ETIMEDOUT", PHP_SOCKET_ETIMEDOUT, CONST_PERSISTENT);
874 #endif
875 #if defined(PHP_SOCKET_ECONNREFUSED)
876 	REGISTER_LONG_CONSTANT("SOCKET_ECONNREFUSED", PHP_SOCKET_ECONNREFUSED, CONST_PERSISTENT);
877 #endif
878 #if defined(PHP_SOCKET_EHOSTDOWN)
879 	REGISTER_LONG_CONSTANT("SOCKET_EHOSTDOWN", PHP_SOCKET_EHOSTDOWN, CONST_PERSISTENT);
880 #endif
881 #if defined(PHP_SOCKET_EHOSTUNREACH)
882 	REGISTER_LONG_CONSTANT("SOCKET_EHOSTUNREACH", PHP_SOCKET_EHOSTUNREACH, CONST_PERSISTENT);
883 #endif
884 #if defined(PHP_SOCKET_EALREADY)
885 	REGISTER_LONG_CONSTANT("SOCKET_EALREADY", PHP_SOCKET_EALREADY, CONST_PERSISTENT);
886 #endif
887 #if defined(PHP_SOCKET_EINPROGRESS)
888 	REGISTER_LONG_CONSTANT("SOCKET_EINPROGRESS", PHP_SOCKET_EINPROGRESS, CONST_PERSISTENT);
889 #endif
890 #if defined(EISNAM)
891 	REGISTER_LONG_CONSTANT("SOCKET_EISNAM", EISNAM, CONST_PERSISTENT);
892 #endif
893 #if defined(EREMOTEIO)
894 	REGISTER_LONG_CONSTANT("SOCKET_EREMOTEIO", EREMOTEIO, CONST_PERSISTENT);
895 #endif
896 #if defined(PHP_SOCKET_EDQUOT)
897 	REGISTER_LONG_CONSTANT("SOCKET_EDQUOT", PHP_SOCKET_EDQUOT, CONST_PERSISTENT);
898 #endif
899 #if defined(ENOMEDIUM)
900 	REGISTER_LONG_CONSTANT("SOCKET_ENOMEDIUM", ENOMEDIUM, CONST_PERSISTENT);
901 #endif
902 #if defined(EMEDIUMTYPE)
903 	REGISTER_LONG_CONSTANT("SOCKET_EMEDIUMTYPE", EMEDIUMTYPE, CONST_PERSISTENT);
904 #endif
905 #if defined(WIN32)
906 	REGISTER_LONG_CONSTANT("SOCKET_ESTALE", WSAESTALE, CONST_PERSISTENT);
907 #endif
908 #if defined(WIN32)
909 	REGISTER_LONG_CONSTANT("SOCKET_EDISCON", WSAEDISCON, CONST_PERSISTENT);
910 #endif
911 #if defined(WIN32)
912 	REGISTER_LONG_CONSTANT("SOCKET_SYSNOTREADY", WSASYSNOTREADY, CONST_PERSISTENT);
913 #endif
914 #if defined(WIN32)
915 	REGISTER_LONG_CONSTANT("SOCKET_VERNOTSUPPORTED", WSAVERNOTSUPPORTED, CONST_PERSISTENT);
916 #endif
917 #if defined(WIN32)
918 	REGISTER_LONG_CONSTANT("SOCKET_NOTINITIALISED", WSANOTINITIALISED, CONST_PERSISTENT);
919 #endif
920 #if defined(WIN32)
921 	REGISTER_LONG_CONSTANT("SOCKET_HOST_NOT_FOUND", WSAHOST_NOT_FOUND, CONST_PERSISTENT);
922 #endif
923 #if defined(WIN32)
924 	REGISTER_LONG_CONSTANT("SOCKET_TRY_AGAIN", WSATRY_AGAIN, CONST_PERSISTENT);
925 #endif
926 #if defined(WIN32)
927 	REGISTER_LONG_CONSTANT("SOCKET_NO_RECOVERY", WSANO_RECOVERY, CONST_PERSISTENT);
928 #endif
929 #if defined(WIN32)
930 	REGISTER_LONG_CONSTANT("SOCKET_NO_DATA", WSANO_DATA, CONST_PERSISTENT);
931 #endif
932 #if defined(WIN32)
933 	REGISTER_LONG_CONSTANT("SOCKET_NO_ADDRESS", WSANO_ADDRESS, CONST_PERSISTENT);
934 #endif
935 	REGISTER_LONG_CONSTANT("IPPROTO_IP", IPPROTO_IP, CONST_PERSISTENT);
936 #if defined(HAVE_IPV6)
937 	REGISTER_LONG_CONSTANT("IPPROTO_IPV6", IPPROTO_IPV6, CONST_PERSISTENT);
938 #endif
939 	REGISTER_LONG_CONSTANT("SOL_TCP", IPPROTO_TCP, CONST_PERSISTENT);
940 	REGISTER_LONG_CONSTANT("SOL_UDP", IPPROTO_UDP, CONST_PERSISTENT);
941 #if defined(IPPROTO_UDPLITE)
942 	REGISTER_LONG_CONSTANT("SOL_UDPLITE", IPPROTO_UDPLITE, CONST_PERSISTENT);
943 #endif
944 #if defined(HAVE_IPV6)
945 	REGISTER_LONG_CONSTANT("IPV6_UNICAST_HOPS", IPV6_UNICAST_HOPS, CONST_PERSISTENT);
946 #endif
947 	REGISTER_LONG_CONSTANT("AI_PASSIVE", AI_PASSIVE, CONST_PERSISTENT);
948 	REGISTER_LONG_CONSTANT("AI_CANONNAME", AI_CANONNAME, CONST_PERSISTENT);
949 	REGISTER_LONG_CONSTANT("AI_NUMERICHOST", AI_NUMERICHOST, CONST_PERSISTENT);
950 #if defined(AI_V4MAPPED)
951 	REGISTER_LONG_CONSTANT("AI_V4MAPPED", AI_V4MAPPED, CONST_PERSISTENT);
952 #endif
953 #if defined(AI_ALL)
954 	REGISTER_LONG_CONSTANT("AI_ALL", AI_ALL, CONST_PERSISTENT);
955 #endif
956 	REGISTER_LONG_CONSTANT("AI_ADDRCONFIG", AI_ADDRCONFIG, CONST_PERSISTENT);
957 #if defined(AI_IDN)
958 	REGISTER_LONG_CONSTANT("AI_IDN", AI_IDN, CONST_PERSISTENT);
959 #endif
960 #if defined(AI_IDN)
961 	REGISTER_LONG_CONSTANT("AI_CANONIDN", AI_CANONIDN, CONST_PERSISTENT);
962 #endif
963 #if defined(AI_NUMERICSERV)
964 	REGISTER_LONG_CONSTANT("AI_NUMERICSERV", AI_NUMERICSERV, CONST_PERSISTENT);
965 #endif
966 #if defined(SOL_LOCAL)
967 	REGISTER_LONG_CONSTANT("SOL_LOCAL", SOL_LOCAL, CONST_PERSISTENT);
968 #endif
969 #if (defined(IPV6_RECVPKTINFO) && HAVE_IPV6)
970 	REGISTER_LONG_CONSTANT("IPV6_RECVPKTINFO", IPV6_RECVPKTINFO, CONST_PERSISTENT);
971 #endif
972 #if (defined(IPV6_RECVPKTINFO) && HAVE_IPV6)
973 	REGISTER_LONG_CONSTANT("IPV6_PKTINFO", IPV6_PKTINFO, CONST_PERSISTENT);
974 #endif
975 #if (defined(IPV6_RECVHOPLIMIT) && HAVE_IPV6)
976 	REGISTER_LONG_CONSTANT("IPV6_RECVHOPLIMIT", IPV6_RECVHOPLIMIT, CONST_PERSISTENT);
977 #endif
978 #if (defined(IPV6_RECVHOPLIMIT) && HAVE_IPV6)
979 	REGISTER_LONG_CONSTANT("IPV6_HOPLIMIT", IPV6_HOPLIMIT, CONST_PERSISTENT);
980 #endif
981 #if (defined(IPV6_RECVTCLASS) && HAVE_IPV6)
982 	REGISTER_LONG_CONSTANT("IPV6_RECVTCLASS", IPV6_RECVTCLASS, CONST_PERSISTENT);
983 #endif
984 #if (defined(IPV6_RECVTCLASS) && HAVE_IPV6)
985 	REGISTER_LONG_CONSTANT("IPV6_TCLASS", IPV6_TCLASS, CONST_PERSISTENT);
986 #endif
987 #if defined(SCM_RIGHTS)
988 	REGISTER_LONG_CONSTANT("SCM_RIGHTS", SCM_RIGHTS, CONST_PERSISTENT);
989 #endif
990 #if defined(SO_PASSCRED) && defined(SCM_CREDENTIALS)
991 	REGISTER_LONG_CONSTANT("SCM_CREDENTIALS", SCM_CREDENTIALS, CONST_PERSISTENT);
992 #endif
993 #if defined(SO_PASSCRED) && !(defined(SCM_CREDENTIALS))
994 	REGISTER_LONG_CONSTANT("SCM_CREDS", SCM_CREDS, CONST_PERSISTENT);
995 #endif
996 #if defined(SO_PASSCRED)
997 	REGISTER_LONG_CONSTANT("SO_PASSCRED", SO_PASSCRED, CONST_PERSISTENT);
998 #endif
999 #if defined(LOCAL_CREDS_PERSISTENT)
1000 	REGISTER_LONG_CONSTANT("SCM_CREDS2", SCM_CREDS2, CONST_PERSISTENT);
1001 #endif
1002 #if defined(LOCAL_CREDS_PERSISTENT)
1003 	REGISTER_LONG_CONSTANT("LOCAL_CREDS_PERSISTENT", LOCAL_CREDS_PERSISTENT, CONST_PERSISTENT);
1004 #endif
1005 #if (!defined(LOCAL_CREDS_PERSISTENT) && defined(LOCAL_CREDS))
1006 	REGISTER_LONG_CONSTANT("SCM_CREDS", SCM_CREDS, CONST_PERSISTENT);
1007 #endif
1008 #if (!defined(LOCAL_CREDS_PERSISTENT) && defined(LOCAL_CREDS))
1009 	REGISTER_LONG_CONSTANT("LOCAL_CREDS", LOCAL_CREDS, CONST_PERSISTENT);
1010 #endif
1011 #if defined(SO_ATTACH_REUSEPORT_CBPF)
1012 	REGISTER_LONG_CONSTANT("SO_ATTACH_REUSEPORT_CBPF", SO_ATTACH_REUSEPORT_CBPF, CONST_PERSISTENT);
1013 #endif
1014 #if defined(SO_DETACH_FILTER)
1015 	REGISTER_LONG_CONSTANT("SO_DETACH_FILTER", SO_DETACH_FILTER, CONST_PERSISTENT);
1016 #endif
1017 #if defined(SO_DETACH_BPF)
1018 	REGISTER_LONG_CONSTANT("SO_DETACH_BPF", SO_DETACH_BPF, CONST_PERSISTENT);
1019 #endif
1020 #if defined(SO_EXCLUSIVEADDRUSE)
1021 	REGISTER_LONG_CONSTANT("SO_EXCLUSIVEADDRUSE", SO_EXCLUSIVEADDRUSE, CONST_PERSISTENT);
1022 #endif
1023 #if defined(SO_NOSIGPIPE)
1024 	REGISTER_LONG_CONSTANT("SO_NOSIGPIPE", SO_NOSIGPIPE, CONST_PERSISTENT);
1025 #endif
1026 #if defined(TCP_QUICKACK)
1027 	REGISTER_LONG_CONSTANT("TCP_QUICKACK", TCP_QUICKACK, CONST_PERSISTENT);
1028 #endif
1029 #if defined(TCP_REPAIR)
1030 	REGISTER_LONG_CONSTANT("TCP_REPAIR", TCP_REPAIR, CONST_PERSISTENT);
1031 #endif
1032 #if defined(IP_DONTFRAG)
1033 	REGISTER_LONG_CONSTANT("IP_DONTFRAG", IP_DONTFRAG, CONST_PERSISTENT);
1034 #endif
1035 #if defined(IP_MTU_DISCOVER)
1036 	REGISTER_LONG_CONSTANT("IP_MTU_DISCOVER", IP_MTU_DISCOVER, CONST_PERSISTENT);
1037 #endif
1038 #if defined(IP_PMTUDISC_DO)
1039 	REGISTER_LONG_CONSTANT("IP_PMTUDISC_DO", IP_PMTUDISC_DO, CONST_PERSISTENT);
1040 #endif
1041 #if defined(IP_PMTUDISC_DONT)
1042 	REGISTER_LONG_CONSTANT("IP_PMTUDISC_DONT", IP_PMTUDISC_DONT, CONST_PERSISTENT);
1043 #endif
1044 #if defined(IP_PMTUDISC_WANT)
1045 	REGISTER_LONG_CONSTANT("IP_PMTUDISC_WANT", IP_PMTUDISC_WANT, CONST_PERSISTENT);
1046 #endif
1047 #if defined(IP_PMTUDISC_PROBE)
1048 	REGISTER_LONG_CONSTANT("IP_PMTUDISC_PROBE", IP_PMTUDISC_PROBE, CONST_PERSISTENT);
1049 #endif
1050 #if defined(IP_PMTUDISC_INTERFACE)
1051 	REGISTER_LONG_CONSTANT("IP_PMTUDISC_INTERFACE", IP_PMTUDISC_INTERFACE, CONST_PERSISTENT);
1052 #endif
1053 #if defined(IP_PMTUDISC_OMIT)
1054 	REGISTER_LONG_CONSTANT("IP_PMTUDISC_OMIT", IP_PMTUDISC_OMIT, CONST_PERSISTENT);
1055 #endif
1056 #if defined(UDPLITE_SEND_CSCOV)
1057 	REGISTER_LONG_CONSTANT("UDPLITE_SEND_CSCOV", UDPLITE_SEND_CSCOV, CONST_PERSISTENT);
1058 #endif
1059 #if defined(UDPLITE_RECV_CSCOV)
1060 	REGISTER_LONG_CONSTANT("UDPLITE_RECV_CSCOV", UDPLITE_RECV_CSCOV, CONST_PERSISTENT);
1061 #endif
1062 }
1063 
register_class_Socket(void)1064 static zend_class_entry *register_class_Socket(void)
1065 {
1066 	zend_class_entry ce, *class_entry;
1067 
1068 	INIT_CLASS_ENTRY(ce, "Socket", class_Socket_methods);
1069 	class_entry = zend_register_internal_class_ex(&ce, NULL);
1070 	class_entry->ce_flags |= ZEND_ACC_FINAL|ZEND_ACC_NO_DYNAMIC_PROPERTIES|ZEND_ACC_NOT_SERIALIZABLE;
1071 
1072 	return class_entry;
1073 }
1074 
register_class_AddressInfo(void)1075 static zend_class_entry *register_class_AddressInfo(void)
1076 {
1077 	zend_class_entry ce, *class_entry;
1078 
1079 	INIT_CLASS_ENTRY(ce, "AddressInfo", class_AddressInfo_methods);
1080 	class_entry = zend_register_internal_class_ex(&ce, NULL);
1081 	class_entry->ce_flags |= ZEND_ACC_FINAL|ZEND_ACC_NO_DYNAMIC_PROPERTIES|ZEND_ACC_NOT_SERIALIZABLE;
1082 
1083 	return class_entry;
1084 }
1085