1 /*
2    +----------------------------------------------------------------------+
3    | PHP Version 5                                                        |
4    +----------------------------------------------------------------------+
5    | Copyright (c) 1997-2020 The PHP Group                                |
6    +----------------------------------------------------------------------+
7    | This source file is subject to version 3.01 of the PHP license,      |
8    | that is bundled with this package in the file LICENSE, and is        |
9    | available through the world-wide-web at the following url:           |
10    | http://www.php.net/license/3_01.txt                                  |
11    | If you did not receive a copy of the PHP license and are unable to   |
12    | obtain it through the world-wide-web, please send a note to          |
13    | license@php.net so we can mail you a copy immediately.               |
14    +----------------------------------------------------------------------+
15    | Author: Ruslan Osmanov <osmanov@php.net>                             |
16    +----------------------------------------------------------------------+
17 */
18 
19 #include "fe.h"
20 #include "priv.h"
21 
22 /* {{{ ARGINFO */
23 ZEND_BEGIN_ARG_INFO(arginfo_event__void, 0)
24 ZEND_END_ARG_INFO();
25 
26 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_base__construct, 0, 0, 0)
27 	ZEND_ARG_INFO(0, cfg)
28 ZEND_END_ARG_INFO();
29 
30 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_base_void, 0, 0, 0)
31 	ZEND_ARG_INFO(0, cfg)
32 ZEND_END_ARG_INFO();
33 
34 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_base_priority_init, 0, 0, 1)
35 	ZEND_ARG_INFO(0, n_priorities)
36 ZEND_END_ARG_INFO();
37 
38 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_base_loop, 0, 0, 0)
39 	ZEND_ARG_INFO(0, flags)
40 ZEND_END_ARG_INFO();
41 
42 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_base_loopexit, 0, 0, 0)
43 	ZEND_ARG_INFO(0, timeout)
44 ZEND_END_ARG_INFO();
45 
46 ZEND_BEGIN_ARG_INFO_EX(arginfo_event__construct, 0, 0, 4)
47 	ZEND_ARG_INFO(1, base)
48 	ZEND_ARG_INFO(0, fd)
49 	ZEND_ARG_INFO(0, what)
50 	ZEND_ARG_INFO(0, cb)
51 	ZEND_ARG_INFO(0, arg)
52 ZEND_END_ARG_INFO();
53 
54 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_set, 0, 0, 2)
55 	ZEND_ARG_INFO(1, base)
56 	ZEND_ARG_INFO(0, fd)
57 	ZEND_ARG_INFO(0, what)
58 	ZEND_ARG_INFO(0, cb)
59 	ZEND_ARG_INFO(0, arg)
60 ZEND_END_ARG_INFO();
61 
62 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_add, 0, 0, 0)
63 	ZEND_ARG_INFO(0, timeout)
64 ZEND_END_ARG_INFO();
65 
66 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_config_avoid_method, 0, 0, 1)
67 	ZEND_ARG_INFO(0, method)
68 ZEND_END_ARG_INFO();
69 
70 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_config_require_features, 0, 0, 1)
71 	ZEND_ARG_INFO(0, feature)
72 ZEND_END_ARG_INFO();
73 
74 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_priority_set, 0, 0, 1)
75 	ZEND_ARG_INFO(0, priority)
76 ZEND_END_ARG_INFO();
77 
78 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_pending, 0, 0, 1)
79 	ZEND_ARG_INFO(0, flags)
80 ZEND_END_ARG_INFO();
81 
82 ZEND_BEGIN_ARG_INFO_EX(arginfo_evtimer_new, 0, 0, 2)
83 	ZEND_ARG_INFO(1, base)
84 	ZEND_ARG_INFO(0, cb)
85 	ZEND_ARG_INFO(0, arg)
86 ZEND_END_ARG_INFO();
87 
88 ZEND_BEGIN_ARG_INFO_EX(arginfo_evtimer_set, 0, 0, 2)
89 	ZEND_ARG_INFO(1, base)
90 	ZEND_ARG_INFO(0, cb)
91 	ZEND_ARG_INFO(0, arg)
92 ZEND_END_ARG_INFO();
93 
94 
95 ZEND_BEGIN_ARG_INFO_EX(arginfo_evsignal_new, 0, 0, 3)
96 	ZEND_ARG_INFO(1, base)
97 	ZEND_ARG_INFO(0, signum)
98 	ZEND_ARG_INFO(0, cb)
99 	ZEND_ARG_INFO(0, arg)
100 ZEND_END_ARG_INFO();
101 
102 
103 #if LIBEVENT_VERSION_NUMBER >= 0x02010000
104 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_config_set_max_dispatch_interval, 0, 0, 3)
105 	ZEND_ARG_INFO(0, max_interval)
106 	ZEND_ARG_INFO(0, max_callbacks)
107 	ZEND_ARG_INFO(0, min_priority)
108 ZEND_END_ARG_INFO();
109 #endif
110 
111 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_config_set_flags, 0, 0, 1)
112 	ZEND_ARG_INFO(0, flags)
113 ZEND_END_ARG_INFO();
114 
115 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent__events, 0, 0, 1)
116 	ZEND_ARG_INFO(0, events)
117 ZEND_END_ARG_INFO();
118 
119 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent__construct, 0, 0, 1)
120 	ZEND_ARG_INFO(1, base)
121 	ZEND_ARG_INFO(0, socket)
122 	ZEND_ARG_INFO(0, options)
123 	ZEND_ARG_INFO(0, readcb)
124 	ZEND_ARG_INFO(0, writecb)
125 	ZEND_ARG_INFO(0, eventcb)
126 ZEND_END_ARG_INFO();
127 
128 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_connect, 0, 0, 1)
129 	ZEND_ARG_INFO(0, addr)
130 ZEND_END_ARG_INFO();
131 
132 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_connecthost, 0, 0, 3)
133 	ZEND_ARG_INFO(0, dns_base)
134 	ZEND_ARG_INFO(0, hostname)
135 	ZEND_ARG_INFO(0, port)
136 	ZEND_ARG_INFO(0, family)
137 ZEND_END_ARG_INFO();
138 
139 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_set_callbacks, 0, 0, 3)
140 	ZEND_ARG_INFO(0, readcb)
141 	ZEND_ARG_INFO(0, writecb)
142 	ZEND_ARG_INFO(0, eventcb)
143 	ZEND_ARG_INFO(0, arg)
144 ZEND_END_ARG_INFO();
145 
146 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_setwatermark, 0, 0, 3)
147 	ZEND_ARG_INFO(0, events)
148 	ZEND_ARG_INFO(0, lowmark)
149 	ZEND_ARG_INFO(0, highmark)
150 ZEND_END_ARG_INFO();
151 
152 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_write, 0, 0, 1)
153 	ZEND_ARG_INFO(0, data)
154 ZEND_END_ARG_INFO();
155 
156 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_write_buffer, 0, 0, 1)
157 	ZEND_ARG_INFO(0, buf)
158 ZEND_END_ARG_INFO();
159 
160 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_read, 0, 0, 1)
161 	ZEND_ARG_INFO(0, size)
162 ZEND_END_ARG_INFO();
163 
164 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_pair_new, 0, 0, 1)
165 	ZEND_ARG_INFO(1, base)
166 	ZEND_ARG_INFO(0, options)
167 ZEND_END_ARG_INFO();
168 
169 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_priority_set, 0, 0, 1)
170 	ZEND_ARG_INFO(0, priority)
171 ZEND_END_ARG_INFO();
172 
173 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_set_timeouts, 0, 0, 2)
174 	ZEND_ARG_INFO(0, timeout_read)
175 	ZEND_ARG_INFO(0, timeout_write)
176 ZEND_END_ARG_INFO();
177 
178 #ifdef HAVE_EVENT_OPENSSL_LIB
179 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_ssl_filter, 0, 0, 4)
180 	ZEND_ARG_INFO(0, unused)
181 	ZEND_ARG_INFO(0, underlying)
182 	ZEND_ARG_INFO(0, ctx)
183 	ZEND_ARG_INFO(0, state)
184 	ZEND_ARG_INFO(0, options)
185 ZEND_END_ARG_INFO();
186 
187 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_create_ssl_filter, 0, 0, 3)
188 	ZEND_ARG_INFO(0, underlying)
189 	ZEND_ARG_INFO(0, ctx)
190 	ZEND_ARG_INFO(0, state)
191 	ZEND_ARG_INFO(0, options)
192 ZEND_END_ARG_INFO();
193 
194 ZEND_BEGIN_ARG_INFO_EX(arginfo_bufferevent_ssl_socket, 0, 0, 4)
195 	ZEND_ARG_INFO(1, base)
196 	ZEND_ARG_INFO(0, socket)
197 	ZEND_ARG_INFO(0, ctx)
198 	ZEND_ARG_INFO(0, state)
199 	ZEND_ARG_INFO(0, options)
200 ZEND_END_ARG_INFO();
201 #endif
202 
203 
204 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_freeze, 0, 0, 1)
205 	ZEND_ARG_INFO(0, at_front)
206 ZEND_END_ARG_INFO();
207 
208 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_add, 0, 0, 1)
209 	ZEND_ARG_INFO(0, data)
210 ZEND_END_ARG_INFO();
211 
212 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_add_buffer, 0, 0, 1)
213 	ZEND_ARG_INFO(0, buf)
214 ZEND_END_ARG_INFO();
215 
216 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_remove_buffer, 0, 0, 2)
217 	ZEND_ARG_INFO(0, buf)
218 	ZEND_ARG_INFO(0, len)
219 ZEND_END_ARG_INFO();
220 
221 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_copyout, 0, 0, 2)
222 	ZEND_ARG_INFO(1, data)
223 	ZEND_ARG_INFO(0, max_bytes)
224 ZEND_END_ARG_INFO();
225 
226 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_len, 0, 0, 1)
227 	ZEND_ARG_INFO(0, len)
228 ZEND_END_ARG_INFO();
229 
230 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_remove, 0, 0, 1)
231 	ZEND_ARG_INFO(0, max_bytes)
232 ZEND_END_ARG_INFO();
233 
234 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_read_line, 0, 0, 1)
235 	ZEND_ARG_INFO(0, eol_style)
236 ZEND_END_ARG_INFO();
237 
238 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_search, 0, 0, 1)
239 	ZEND_ARG_INFO(0, what)
240 	ZEND_ARG_INFO(0, start)
241 	ZEND_ARG_INFO(0, end)
242 ZEND_END_ARG_INFO();
243 
244 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_search_eol, 0, 0, 0)
245 	ZEND_ARG_INFO(0, start)
246 	ZEND_ARG_INFO(0, eol_style)
247 ZEND_END_ARG_INFO();
248 
249 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_pullup, 0, 0, 1)
250 	ZEND_ARG_INFO(0, size)
251 ZEND_END_ARG_INFO();
252 
253 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_write, 0, 0, 1)
254 	ZEND_ARG_INFO(0, fd)
255 	ZEND_ARG_INFO(0, howmuch)
256 ZEND_END_ARG_INFO();
257 
258 ZEND_BEGIN_ARG_INFO_EX(arginfo_evbuffer_substr, 0, 0, 1)
259 	ZEND_ARG_INFO(0, start)
260 	ZEND_ARG_INFO(0, length)
261 ZEND_END_ARG_INFO();
262 
263 
264 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_socket_1, 0, 0, 0)
265 	ZEND_ARG_INFO(0, socket)
266 ZEND_END_ARG_INFO();
267 
268 
269 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection__construct, 0, 0, 5)
270 	ZEND_ARG_INFO(1, base)
271 	ZEND_ARG_INFO(0, dns_base)
272 	ZEND_ARG_INFO(0, address)
273 	ZEND_ARG_INFO(0, port)
274 	ZEND_ARG_INFO(0, ctx)
275 ZEND_END_ARG_INFO();
276 
277 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection_get_peer, 0, 0, 2)
278 	ZEND_ARG_INFO(1, address)
279 	ZEND_ARG_INFO(1, port)
280 ZEND_END_ARG_INFO();
281 
282 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection_set_local_address, 0, 0, 1)
283 	ZEND_ARG_INFO(0, address)
284 ZEND_END_ARG_INFO();
285 
286 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection_set_local_port, 0, 0, 1)
287 	ZEND_ARG_INFO(0, port)
288 ZEND_END_ARG_INFO();
289 
290 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection_set_timeout, 0, 0, 1)
291 	ZEND_ARG_INFO(0, timeout)
292 ZEND_END_ARG_INFO();
293 
294 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection_set_max_size, 0, 0, 1)
295 	ZEND_ARG_INFO(0, max_size)
296 ZEND_END_ARG_INFO();
297 
298 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_evhttp_connection_set_retries, 0, 0, 1)
299 	ZEND_ARG_INFO(0, retries)
300 ZEND_END_ARG_INFO();
301 
302 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http__construct, 0, 0, 1)
303 	ZEND_ARG_INFO(1, base)
304 	ZEND_ARG_INFO(0, ctx)
305 ZEND_END_ARG_INFO();
306 
307 
308 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_accept, 0, 0, 1)
309 	ZEND_ARG_INFO(0, socket)
310 ZEND_END_ARG_INFO();
311 
312 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_bind, 0, 0, 2)
313 	ZEND_ARG_INFO(0, address)
314 	ZEND_ARG_INFO(0, port)
315 ZEND_END_ARG_INFO();
316 
317 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_set_callback, 0, 0, 2)
318 	ZEND_ARG_INFO(0, path)
319 	ZEND_ARG_INFO(0, cb)
320 	ZEND_ARG_INFO(0, arg)
321 ZEND_END_ARG_INFO();
322 
323 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_set_gen_callback, 0, 0, 1)
324 	ZEND_ARG_INFO(0, cb)
325 	ZEND_ARG_INFO(0, arg)
326 ZEND_END_ARG_INFO();
327 
328 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_set_allowed_methods, 0, 0, 1)
329 	ZEND_ARG_INFO(0, methods)
330 ZEND_END_ARG_INFO();
331 
332 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_set_value, 0, 0, 1)
333 	ZEND_ARG_INFO(0, value)
334 ZEND_END_ARG_INFO();
335 
336 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_add_alias, 0, 0, 1)
337 	ZEND_ARG_INFO(0, alias)
338 ZEND_END_ARG_INFO();
339 
340 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req__construct, 0, 0, 1)
341 	ZEND_ARG_INFO(0, callback)
342 	ZEND_ARG_INFO(0, data)
343 ZEND_END_ARG_INFO();
344 
345 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req_send_error, 0, 0, 1)
346 	ZEND_ARG_INFO(0, error)
347 	ZEND_ARG_INFO(0, reason)
348 ZEND_END_ARG_INFO();
349 
350 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req_send_reply, 0, 0, 2)
351 	ZEND_ARG_INFO(0, code)
352 	ZEND_ARG_INFO(0, reason)
353 	ZEND_ARG_INFO(0, buf)
354 ZEND_END_ARG_INFO();
355 
356 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req_send_reply_chunk, 0, 0, 1)
357 	ZEND_ARG_INFO(0, buf)
358 ZEND_END_ARG_INFO();
359 
360 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req_send_reply_start, 0, 0, 2)
361 	ZEND_ARG_INFO(0, code)
362 	ZEND_ARG_INFO(0, reason)
363 ZEND_END_ARG_INFO();
364 
365 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_con_make_request, 0, 0, 3)
366 	ZEND_ARG_INFO(0, req)
367 	ZEND_ARG_INFO(0, type)
368 	ZEND_ARG_INFO(0, uri)
369 ZEND_END_ARG_INFO();
370 
371 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_con_set_closecb, 0, 0, 1)
372 	ZEND_ARG_INFO(0, callback)
373 	ZEND_ARG_INFO(0, data)
374 ZEND_END_ARG_INFO();
375 
376 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req_add_header, 0, 0, 3)
377 	ZEND_ARG_INFO(0, key)
378 	ZEND_ARG_INFO(0, value)
379 	ZEND_ARG_INFO(0, type)
380 ZEND_END_ARG_INFO();
381 
382 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_http_req_remove_header, 0, 0, 2)
383 	ZEND_ARG_INFO(0, key)
384 	ZEND_ARG_INFO(0, type)
385 ZEND_END_ARG_INFO();
386 
387 
388 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_ssl_context__construct, 0, 0, 2)
389 	ZEND_ARG_INFO(0, method)
390 	ZEND_ARG_INFO(0, options)
391 ZEND_END_ARG_INFO();
392 
393 #if OPENSSL_VERSION_NUMBER >= 0x10100000L
394 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_ssl_context_set_min_proto_version, 0, 0, 1)
395 	ZEND_ARG_INFO(0, proto)
396 ZEND_END_ARG_INFO();
397 #endif
398 
399 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_util_get_socket_name, 0, 0, 2)
400 	ZEND_ARG_INFO(0, socket)
401 	ZEND_ARG_INFO(1, address)
402 	ZEND_ARG_INFO(1, port)
403 ZEND_END_ARG_INFO();
404 
405 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_util_get_socket_fd, 0, 0, 1)
406 	ZEND_ARG_INFO(0, socket)
407 ZEND_END_ARG_INFO();
408 
409 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_util_set_socket_option, 0, 0, 4)
410 	ZEND_ARG_INFO(0, socket)
411 	ZEND_ARG_INFO(0, level)
412 	ZEND_ARG_INFO(0, optname)
413 	ZEND_ARG_INFO(0, optval)
414 ZEND_END_ARG_INFO();
415 
416 ZEND_BEGIN_ARG_INFO_EX(arginfo_event_util_create_socket, 0, 0, 1)
417 	ZEND_ARG_INFO(0, fd)
418 ZEND_END_ARG_INFO();
419 
420 
421 /* ARGINFO END }}} */
422 
423 
424 #if HAVE_EVENT_EXTRA_LIB
425 /* {{{ ARGINFO for extra API */
426 
427 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns__construct, 0, 0, 2)
428 	ZEND_ARG_INFO(1, base)
429 	ZEND_ARG_INFO(0, initialize)
430 ZEND_END_ARG_INFO();
431 
432 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns_resolv_conf_parse, 0, 0, 2)
433 	ZEND_ARG_INFO(0, flags)
434 	ZEND_ARG_INFO(0, filename)
435 ZEND_END_ARG_INFO();
436 
437 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns_base_nameserver_ip_add, 0, 0, 1)
438 	ZEND_ARG_INFO(0, ip)
439 ZEND_END_ARG_INFO();
440 
441 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns_base_load_hosts, 0, 0, 1)
442 	ZEND_ARG_INFO(0, hosts)
443 ZEND_END_ARG_INFO();
444 
445 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns_base_search_add, 0, 0, 1)
446 	ZEND_ARG_INFO(0, domain)
447 ZEND_END_ARG_INFO();
448 
449 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns_base_search_ndots_set, 0, 0, 1)
450 	ZEND_ARG_INFO(0, ndots)
451 ZEND_END_ARG_INFO();
452 
453 ZEND_BEGIN_ARG_INFO_EX(arginfo_evdns_base_set_option, 0, 0, 2)
454 	ZEND_ARG_INFO(0, option)
455 	ZEND_ARG_INFO(0, value)
456 ZEND_END_ARG_INFO();
457 
458 
459 ZEND_BEGIN_ARG_INFO_EX(arginfo_evconnlistener__construct, 0, 0, 6)
460 	ZEND_ARG_INFO(1, base)
461 	ZEND_ARG_INFO(0, cb)
462 	ZEND_ARG_INFO(0, data)
463 	ZEND_ARG_INFO(0, flags)
464 	ZEND_ARG_INFO(0, backlog)
465 	ZEND_ARG_INFO(0, target)
466 ZEND_END_ARG_INFO();
467 
468 ZEND_BEGIN_ARG_INFO_EX(arginfo_evconnlistener_set_cb, 0, 0, 1)
469 	ZEND_ARG_INFO(0, cb)
470 	ZEND_ARG_INFO(0, arg)
471 ZEND_END_ARG_INFO();
472 
473 ZEND_BEGIN_ARG_INFO_EX(arginfo_evconnlistener_set_error_cb, 0, 0, 1)
474 	ZEND_ARG_INFO(0, cb)
475 ZEND_END_ARG_INFO();
476 
477 ZEND_BEGIN_ARG_INFO_EX(arginfo_evconnlistener_get_fd, 0, 0, 1)
478 	ZEND_ARG_INFO(1, address)
479 	ZEND_ARG_INFO(1, port)
480 ZEND_END_ARG_INFO();
481 
482 
483 /* ARGINFO for extra API END }}} */
484 #endif
485 
486 
487 const zend_function_entry php_event_ce_functions[] = {/* {{{ */
488 	PHP_ME(Event, __construct,         arginfo_event__construct,   ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
489 	PHP_ME(Event, free,                arginfo_event__void,        ZEND_ACC_PUBLIC)
490 	PHP_ME(Event, set,                 arginfo_event_set,          ZEND_ACC_PUBLIC)
491 	PHP_ME(Event, getSupportedMethods, arginfo_event__void,        ZEND_ACC_PUBLIC  | ZEND_ACC_STATIC)
492 	PHP_ME(Event, add,                 arginfo_event_add,          ZEND_ACC_PUBLIC)
493 	PHP_ME(Event, del,                 arginfo_event__void,        ZEND_ACC_PUBLIC)
494 	PHP_ME(Event, setPriority,         arginfo_event_priority_set, ZEND_ACC_PUBLIC)
495 	PHP_ME(Event, pending,             arginfo_event_pending,      ZEND_ACC_PUBLIC)
496 #if LIBEVENT_VERSION_NUMBER >= 0x02010200
497 	PHP_ME(Event, removeTimer, arginfo_event__void, ZEND_ACC_PUBLIC)
498 #endif
499 
500 	PHP_ME(Event, timer,        arginfo_evtimer_new,  ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
501 	PHP_ME(Event, setTimer,     arginfo_evtimer_set,  ZEND_ACC_PUBLIC)
502 	PHP_ME(Event, signal,       arginfo_evsignal_new, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
503 
504 	PHP_MALIAS(Event, addTimer,  add, arginfo_event_add,   ZEND_ACC_PUBLIC)
505 	PHP_MALIAS(Event, delTimer,  del, arginfo_event__void, ZEND_ACC_PUBLIC)
506 	PHP_MALIAS(Event, addSignal, add, arginfo_event_add,   ZEND_ACC_PUBLIC)
507 	PHP_MALIAS(Event, delSignal, del, arginfo_event__void, ZEND_ACC_PUBLIC)
508 
509 	PHP_FE_END
510 };
511 /* }}} */
512 
513 const zend_function_entry php_event_base_ce_functions[] = {/* {{{ */
514 	PHP_ME(EventBase, __construct,        arginfo_event_base__construct,    ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
515 	PHP_ME(EventBase, __wakeup,           arginfo_event__void,              ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
516 	PHP_ME(EventBase, __sleep,            arginfo_event__void,              ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
517 	PHP_ME(EventBase, getMethod,          arginfo_event_base_void,          ZEND_ACC_PUBLIC)
518 	PHP_ME(EventBase, getFeatures,        arginfo_event__void,              ZEND_ACC_PUBLIC)
519 	PHP_ME(EventBase, priorityInit,       arginfo_event_base_priority_init, ZEND_ACC_PUBLIC)
520 	PHP_ME(EventBase, loop,               arginfo_event_base_loop,          ZEND_ACC_PUBLIC)
521 	PHP_ME(EventBase, dispatch,           arginfo_event__void,              ZEND_ACC_PUBLIC)
522 	PHP_ME(EventBase, exit,               arginfo_event_base_loopexit,      ZEND_ACC_PUBLIC)
523 	PHP_ME(EventBase, stop,               arginfo_event__void,              ZEND_ACC_PUBLIC)
524 	PHP_ME(EventBase, gotStop,            arginfo_event__void,              ZEND_ACC_PUBLIC)
525 	PHP_ME(EventBase, gotExit,            arginfo_event__void,              ZEND_ACC_PUBLIC)
526 	PHP_ME(EventBase, getTimeOfDayCached, arginfo_event__void,              ZEND_ACC_PUBLIC)
527 	PHP_ME(EventBase, reInit,             arginfo_event__void,              ZEND_ACC_PUBLIC)
528 	PHP_ME(EventBase, free,               arginfo_event__void,              ZEND_ACC_PUBLIC)
529 #if LIBEVENT_VERSION_NUMBER >= 0x02010100
530 	PHP_ME(EventBase, updateCacheTime, arginfo_event__void, ZEND_ACC_PUBLIC)
531 #endif
532 #if LIBEVENT_VERSION_NUMBER >= 0x02010200
533 	PHP_ME(EventBase, resume,             arginfo_event__void,              ZEND_ACC_PUBLIC)
534 #endif
535 
536 	PHP_FE_END
537 };
538 /* }}} */
539 
540 const zend_function_entry php_event_config_ce_functions[] = {/* {{{ */
541 	PHP_ME(EventConfig, __construct,     arginfo_event__void,                   ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
542 	PHP_ME(EventConfig, __wakeup,        arginfo_event__void,                   ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
543 	PHP_ME(EventConfig, __sleep,         arginfo_event__void,                   ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
544 	PHP_ME(EventConfig, avoidMethod,     arginfo_event_config_avoid_method,     ZEND_ACC_PUBLIC)
545 	PHP_ME(EventConfig, requireFeatures, arginfo_event_config_require_features, ZEND_ACC_PUBLIC)
546 #if LIBEVENT_VERSION_NUMBER >= 0x02010000
547 	PHP_ME(EventConfig, setMaxDispatchInterval, arginfo_event_config_set_max_dispatch_interval, ZEND_ACC_PUBLIC)
548 #endif
549 #if LIBEVENT_VERSION_NUMBER >= 0x02000201
550 	PHP_ME(EventConfig, setFlags, arginfo_event_config_set_flags, ZEND_ACC_PUBLIC)
551 #endif
552 
553 	PHP_FE_END
554 };
555 /* }}} */
556 
557 const zend_function_entry php_event_bevent_ce_functions[] = {/* {{{ */
558 	PHP_ME(EventBufferEvent, __construct,       arginfo_bufferevent__construct,    ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
559 	PHP_ME(EventBufferEvent, free,              arginfo_event__void,               ZEND_ACC_PUBLIC)
560 	PHP_ME(EventBufferEvent, close,             arginfo_event__void,               ZEND_ACC_PUBLIC)
561 	PHP_ME(EventBufferEvent, connect,           arginfo_bufferevent_connect,       ZEND_ACC_PUBLIC)
562 	PHP_ME(EventBufferEvent, connectHost,       arginfo_bufferevent_connecthost,   ZEND_ACC_PUBLIC)
563 	PHP_ME(EventBufferEvent, getDnsErrorString, arginfo_event__void,               ZEND_ACC_PUBLIC)
564 	PHP_ME(EventBufferEvent, setCallbacks,      arginfo_bufferevent_set_callbacks, ZEND_ACC_PUBLIC)
565 	PHP_ME(EventBufferEvent, enable,            arginfo_bufferevent__events,       ZEND_ACC_PUBLIC)
566 	PHP_ME(EventBufferEvent, disable,           arginfo_bufferevent__events,       ZEND_ACC_PUBLIC)
567 	PHP_ME(EventBufferEvent, getEnabled,        arginfo_event__void,               ZEND_ACC_PUBLIC)
568 	PHP_ME(EventBufferEvent, getInput,          arginfo_event__void,               ZEND_ACC_PUBLIC)
569 	PHP_ME(EventBufferEvent, getOutput,         arginfo_event__void,               ZEND_ACC_PUBLIC)
570 	PHP_ME(EventBufferEvent, setWatermark,      arginfo_bufferevent_setwatermark,  ZEND_ACC_PUBLIC)
571 	PHP_ME(EventBufferEvent, write,             arginfo_bufferevent_write,         ZEND_ACC_PUBLIC)
572 	PHP_ME(EventBufferEvent, writeBuffer,       arginfo_bufferevent_write_buffer,  ZEND_ACC_PUBLIC)
573 	PHP_ME(EventBufferEvent, read,              arginfo_bufferevent_read,          ZEND_ACC_PUBLIC)
574 	PHP_ME(EventBufferEvent, readBuffer,        arginfo_bufferevent_write_buffer,  ZEND_ACC_PUBLIC)
575 	PHP_ME(EventBufferEvent, createPair,        arginfo_bufferevent_pair_new,      ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
576 	PHP_ME(EventBufferEvent, setPriority,       arginfo_bufferevent_priority_set,  ZEND_ACC_PUBLIC)
577 	PHP_ME(EventBufferEvent, setTimeouts,       arginfo_bufferevent_set_timeouts,  ZEND_ACC_PUBLIC)
578 #ifdef HAVE_EVENT_OPENSSL_LIB
579 	PHP_ME(EventBufferEvent, sslFilter,           arginfo_bufferevent_ssl_filter,        ZEND_ACC_PUBLIC  | ZEND_ACC_STATIC  | ZEND_ACC_DEPRECATED)
580 	PHP_ME(EventBufferEvent, createSslFilter,     arginfo_bufferevent_create_ssl_filter, ZEND_ACC_PUBLIC  | ZEND_ACC_STATIC)
581 	PHP_ME(EventBufferEvent, sslSocket,           arginfo_bufferevent_ssl_socket,        ZEND_ACC_PUBLIC  | ZEND_ACC_STATIC)
582 	PHP_ME(EventBufferEvent, sslError,            arginfo_event__void,                   ZEND_ACC_PUBLIC)
583 	PHP_ME(EventBufferEvent, sslRenegotiate,      arginfo_event__void,                   ZEND_ACC_PUBLIC)
584 	PHP_ME(EventBufferEvent, sslGetCipherInfo,    arginfo_event__void,                   ZEND_ACC_PUBLIC)
585 	PHP_ME(EventBufferEvent, sslGetCipherName,    arginfo_event__void,                   ZEND_ACC_PUBLIC)
586 	PHP_ME(EventBufferEvent, sslGetCipherVersion, arginfo_event__void,                   ZEND_ACC_PUBLIC)
587 	PHP_ME(EventBufferEvent, sslGetProtocol,      arginfo_event__void,                   ZEND_ACC_PUBLIC)
588 #endif
589 
590 	PHP_FE_END
591 };
592 /* }}} */
593 
594 const zend_function_entry php_event_buffer_ce_functions[] = {/* {{{ */
595 	PHP_ME(EventBuffer, __construct,   arginfo_event__void,            ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
596 	PHP_ME(EventBuffer, freeze,        arginfo_evbuffer_freeze,        ZEND_ACC_PUBLIC)
597 	PHP_ME(EventBuffer, unfreeze,      arginfo_evbuffer_freeze,        ZEND_ACC_PUBLIC)
598 	PHP_ME(EventBuffer, lock,          arginfo_event__void,            ZEND_ACC_PUBLIC)
599 	PHP_ME(EventBuffer, unlock,        arginfo_event__void,            ZEND_ACC_PUBLIC)
600 	PHP_ME(EventBuffer, enableLocking, arginfo_event__void,            ZEND_ACC_PUBLIC)
601 	PHP_ME(EventBuffer, add,           arginfo_evbuffer_add,           ZEND_ACC_PUBLIC)
602 	PHP_ME(EventBuffer, addBuffer,     arginfo_evbuffer_add_buffer,    ZEND_ACC_PUBLIC)
603 	PHP_ME(EventBuffer, appendFrom,    arginfo_evbuffer_remove_buffer, ZEND_ACC_PUBLIC)
604 	PHP_ME(EventBuffer, read,          arginfo_evbuffer_remove,        ZEND_ACC_PUBLIC)
605 	PHP_ME(EventBuffer, expand,        arginfo_evbuffer_len,           ZEND_ACC_PUBLIC)
606 	PHP_ME(EventBuffer, prepend,       arginfo_evbuffer_add,           ZEND_ACC_PUBLIC)
607 	PHP_ME(EventBuffer, prependBuffer, arginfo_evbuffer_add_buffer,    ZEND_ACC_PUBLIC)
608 	PHP_ME(EventBuffer, drain,         arginfo_evbuffer_len,           ZEND_ACC_PUBLIC)
609 	PHP_ME(EventBuffer, copyout,       arginfo_evbuffer_copyout,       ZEND_ACC_PUBLIC)
610 	PHP_ME(EventBuffer, readLine,      arginfo_evbuffer_read_line,     ZEND_ACC_PUBLIC)
611 	PHP_ME(EventBuffer, search,        arginfo_evbuffer_search,        ZEND_ACC_PUBLIC)
612 	PHP_ME(EventBuffer, searchEol,     arginfo_evbuffer_search_eol,    ZEND_ACC_PUBLIC)
613 	PHP_ME(EventBuffer, pullup,        arginfo_evbuffer_pullup,        ZEND_ACC_PUBLIC)
614 	PHP_ME(EventBuffer, write,         arginfo_evbuffer_write,         ZEND_ACC_PUBLIC)
615 	PHP_ME(EventBuffer, readFrom,      arginfo_evbuffer_write,         ZEND_ACC_PUBLIC)
616 	PHP_ME(EventBuffer, substr,        arginfo_evbuffer_substr,        ZEND_ACC_PUBLIC)
617 
618 	PHP_FE_END
619 };
620 /* }}} */
621 
622 const zend_function_entry php_event_util_ce_functions[] = {/* {{{ */
623 	PHP_ME(EventUtil, __construct, arginfo_event__void, ZEND_ACC_PRIVATE)
624 
625 	PHP_ME(EventUtil, getLastSocketErrno, arginfo_event_socket_1, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
626 	PHP_ME(EventUtil, getLastSocketError, arginfo_event_socket_1, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
627 
628 #ifdef            HAVE_EVENT_OPENSSL_LIB
629 	PHP_ME(EventUtil, sslRandPoll,           arginfo_event__void,                ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
630 #endif
631 	PHP_ME(EventUtil, getSocketName,   arginfo_event_util_get_socket_name,   ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
632 	PHP_ME(EventUtil, getSocketFd,     arginfo_event_util_get_socket_fd,     ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
633 	PHP_ME(EventUtil, setSocketOption, arginfo_event_util_set_socket_option, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
634 	PHP_ME(EventUtil, createSocket,    arginfo_event_util_create_socket,     ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
635 
636 	PHP_FE_END
637 };
638 /* }}} */
639 
640 /* }}} */
641 
642 #if HAVE_EVENT_EXTRA_LIB
643 /* {{{ Extra API */
644 
645 const zend_function_entry php_event_dns_base_ce_functions[] = {
646 	PHP_ME(EventDnsBase, __construct,      arginfo_evdns__construct,             ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
647 	PHP_ME(EventDnsBase, parseResolvConf,  arginfo_evdns_resolv_conf_parse,      ZEND_ACC_PUBLIC)
648 	PHP_ME(EventDnsBase, addNameserverIp,  arginfo_evdns_base_nameserver_ip_add, ZEND_ACC_PUBLIC)
649 	PHP_ME(EventDnsBase, loadHosts,        arginfo_evdns_base_load_hosts,        ZEND_ACC_PUBLIC)
650 	PHP_ME(EventDnsBase, clearSearch,      arginfo_event__void,                  ZEND_ACC_PUBLIC)
651 	PHP_ME(EventDnsBase, addSearch,        arginfo_evdns_base_search_add,        ZEND_ACC_PUBLIC)
652 	PHP_ME(EventDnsBase, setSearchNdots,   arginfo_evdns_base_search_ndots_set,  ZEND_ACC_PUBLIC)
653 	PHP_ME(EventDnsBase, setOption,        arginfo_evdns_base_set_option,        ZEND_ACC_PUBLIC)
654 	PHP_ME(EventDnsBase, countNameservers, arginfo_event__void,                  ZEND_ACC_PUBLIC)
655 
656 	PHP_FE_END
657 };
658 
659 const zend_function_entry php_event_http_conn_ce_functions[] = {
660 	PHP_ME(EventHttpConnection, __construct,       arginfo_event_evhttp_connection__construct,        ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
661 	PHP_ME(EventHttpConnection, __wakeup,          arginfo_event__void,                               ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
662 	PHP_ME(EventHttpConnection, __sleep,           arginfo_event__void,                               ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
663 	PHP_ME(EventHttpConnection, getBase,           arginfo_event__void,                               ZEND_ACC_PUBLIC)
664 	PHP_ME(EventHttpConnection, getPeer,           arginfo_event_evhttp_connection_get_peer,          ZEND_ACC_PUBLIC)
665 	PHP_ME(EventHttpConnection, setLocalAddress,   arginfo_event_evhttp_connection_set_local_address, ZEND_ACC_PUBLIC)
666 	PHP_ME(EventHttpConnection, setLocalPort,      arginfo_event_evhttp_connection_set_local_port,    ZEND_ACC_PUBLIC)
667 	PHP_ME(EventHttpConnection, setTimeout,        arginfo_event_evhttp_connection_set_timeout,       ZEND_ACC_PUBLIC)
668 	PHP_ME(EventHttpConnection, setMaxHeadersSize, arginfo_event_evhttp_connection_set_max_size,      ZEND_ACC_PUBLIC)
669 	PHP_ME(EventHttpConnection, setMaxBodySize,    arginfo_event_evhttp_connection_set_max_size,      ZEND_ACC_PUBLIC)
670 	PHP_ME(EventHttpConnection, setRetries,        arginfo_event_evhttp_connection_set_retries,       ZEND_ACC_PUBLIC)
671 	PHP_ME(EventHttpConnection, makeRequest,       arginfo_event_http_con_make_request,               ZEND_ACC_PUBLIC)
672 	PHP_ME(EventHttpConnection, setCloseCallback,  arginfo_event_http_con_set_closecb,                ZEND_ACC_PUBLIC)
673 
674 	PHP_FE_END
675 };
676 
677 const zend_function_entry php_event_http_ce_functions[] = {
678 	PHP_ME(EventHttp, __construct,        arginfo_event_http__construct,          ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
679 	PHP_ME(EventHttp, __wakeup,           arginfo_event__void,                    ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
680 	PHP_ME(EventHttp, __sleep,            arginfo_event__void,                    ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
681 	PHP_ME(EventHttp, accept,             arginfo_event_http_accept,              ZEND_ACC_PUBLIC)
682 	PHP_ME(EventHttp, bind,               arginfo_event_http_bind,                ZEND_ACC_PUBLIC)
683 	PHP_ME(EventHttp, setCallback,        arginfo_event_http_set_callback,        ZEND_ACC_PUBLIC)
684 	PHP_ME(EventHttp, setDefaultCallback, arginfo_event_http_set_gen_callback,    ZEND_ACC_PUBLIC)
685 	PHP_ME(EventHttp, setAllowedMethods,  arginfo_event_http_set_allowed_methods, ZEND_ACC_PUBLIC)
686 	PHP_ME(EventHttp, setMaxBodySize,     arginfo_event_http_set_value,           ZEND_ACC_PUBLIC)
687 	PHP_ME(EventHttp, setMaxHeadersSize,  arginfo_event_http_set_value,           ZEND_ACC_PUBLIC)
688 	PHP_ME(EventHttp, setTimeout,         arginfo_event_http_set_value,           ZEND_ACC_PUBLIC)
689 	PHP_ME(EventHttp, addServerAlias,     arginfo_event_http_add_alias,           ZEND_ACC_PUBLIC)
690 	PHP_ME(EventHttp, removeServerAlias,  arginfo_event_http_add_alias,           ZEND_ACC_PUBLIC)
691 
692 	PHP_FE_END
693 };
694 
695 const zend_function_entry php_event_http_req_ce_functions[] = {
696 	PHP_ME(EventHttpRequest, __construct, arginfo_event_http_req__construct, ZEND_ACC_PUBLIC | ZEND_ACC_CTOR)
697 	PHP_ME(EventHttpRequest, __wakeup,    arginfo_event__void,               ZEND_ACC_PUBLIC | ZEND_ACC_FINAL)
698 	PHP_ME(EventHttpRequest, __sleep,     arginfo_event__void,               ZEND_ACC_PUBLIC | ZEND_ACC_FINAL)
699 
700 	PHP_ME(EventHttpRequest, free,             arginfo_event__void,                     ZEND_ACC_PUBLIC)
701 	PHP_ME(EventHttpRequest, getCommand,       arginfo_event__void,                     ZEND_ACC_PUBLIC)
702 	PHP_ME(EventHttpRequest, getHost,          arginfo_event__void,                     ZEND_ACC_PUBLIC)
703 	PHP_ME(EventHttpRequest, getUri,           arginfo_event__void,                     ZEND_ACC_PUBLIC)
704 	PHP_ME(EventHttpRequest, getResponseCode,  arginfo_event__void,                     ZEND_ACC_PUBLIC)
705 	PHP_ME(EventHttpRequest, getInputHeaders,  arginfo_event__void,                     ZEND_ACC_PUBLIC)
706 	PHP_ME(EventHttpRequest, getOutputHeaders, arginfo_event__void,                     ZEND_ACC_PUBLIC)
707 	PHP_ME(EventHttpRequest, getInputBuffer,   arginfo_event__void,                     ZEND_ACC_PUBLIC)
708 	PHP_ME(EventHttpRequest, getOutputBuffer,  arginfo_event__void,                     ZEND_ACC_PUBLIC)
709 	PHP_ME(EventHttpRequest, sendError,        arginfo_event_http_req_send_error,       ZEND_ACC_PUBLIC)
710 	PHP_ME(EventHttpRequest, sendReply,        arginfo_event_http_req_send_reply,       ZEND_ACC_PUBLIC)
711 	PHP_ME(EventHttpRequest, sendReplyChunk,   arginfo_event_http_req_send_reply_chunk, ZEND_ACC_PUBLIC)
712 	PHP_ME(EventHttpRequest, sendReplyEnd,     arginfo_event__void,                     ZEND_ACC_PUBLIC)
713 	PHP_ME(EventHttpRequest, sendReplyStart,   arginfo_event_http_req_send_reply_start, ZEND_ACC_PUBLIC)
714 	PHP_ME(EventHttpRequest, cancel,           arginfo_event__void,                     ZEND_ACC_PUBLIC)
715 	PHP_ME(EventHttpRequest, addHeader,        arginfo_event_http_req_add_header,       ZEND_ACC_PUBLIC)
716 	PHP_ME(EventHttpRequest, clearHeaders,     arginfo_event__void,                     ZEND_ACC_PUBLIC)
717 	PHP_ME(EventHttpRequest, removeHeader,     arginfo_event_http_req_remove_header,    ZEND_ACC_PUBLIC)
718 	PHP_ME(EventHttpRequest, findHeader,       arginfo_event_http_req_remove_header,    ZEND_ACC_PUBLIC)
719 #if LIBEVENT_VERSION_NUMBER >= 0x02001100
720 	PHP_ME(EventHttpRequest, getBufferEvent,   arginfo_event__void,                     ZEND_ACC_PUBLIC)
721 #endif
722 	PHP_ME(EventHttpRequest, getConnection,    arginfo_event__void,                     ZEND_ACC_PUBLIC)
723 	PHP_ME(EventHttpRequest, closeConnection,  arginfo_event__void,                     ZEND_ACC_PUBLIC)
724 
725 	PHP_FE_END
726 };
727 
728 const zend_function_entry php_event_listener_ce_functions[] = {
729 	PHP_ME(EventListener, __construct,      arginfo_evconnlistener__construct,   ZEND_ACC_PUBLIC  | ZEND_ACC_CTOR)
730 	PHP_ME(EventListener, __wakeup,         arginfo_event__void,                 ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
731 	PHP_ME(EventListener, __sleep,          arginfo_event__void,                 ZEND_ACC_PUBLIC  | ZEND_ACC_FINAL)
732 	PHP_ME(EventListener, free,             arginfo_event__void,                 ZEND_ACC_PUBLIC)
733 	PHP_ME(EventListener, enable,           arginfo_event__void,                 ZEND_ACC_PUBLIC)
734 	PHP_ME(EventListener, disable,          arginfo_event__void,                 ZEND_ACC_PUBLIC)
735 	PHP_ME(EventListener, setCallback,      arginfo_evconnlistener_set_cb,       ZEND_ACC_PUBLIC)
736 	PHP_ME(EventListener, setErrorCallback, arginfo_evconnlistener_set_error_cb, ZEND_ACC_PUBLIC)
737 	PHP_ME(EventListener, getSocketName,    arginfo_evconnlistener_get_fd,       ZEND_ACC_PUBLIC)
738 #if LIBEVENT_VERSION_NUMBER >= 0x02000300
739 	PHP_ME(EventListener, getBase, arginfo_event__void, ZEND_ACC_PUBLIC)
740 #endif
741 
742 	PHP_FE_END
743 };
744 
745 /* Extra API END}}} */
746 #endif
747 
748 #ifdef HAVE_EVENT_OPENSSL_LIB
749 const zend_function_entry php_event_ssl_context_ce_functions[] = {/* {{{ */
750 	PHP_ME(EventSslContext, __construct, arginfo_event_ssl_context__construct, ZEND_ACC_PUBLIC | ZEND_ACC_CTOR)
751 #if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
752 	PHP_ME(EventSslContext, setMinProtoVersion, arginfo_event_ssl_context_set_min_proto_version, ZEND_ACC_PUBLIC)
753 	PHP_ME(EventSslContext, setMaxProtoVersion, arginfo_event_ssl_context_set_min_proto_version, ZEND_ACC_PUBLIC)
754 #endif
755 
756 	PHP_FE_END
757 };
758 /* }}} */
759 #endif
760 
761 /*
762  * Local variables:
763  * tab-width: 4
764  * c-basic-offset: 4
765  * End:
766  * vim600: fdm=marker
767  * vim: noet sts=4 sw=4 ts=4
768  */
769