Rizin
unix-like reverse engineering framework and cli tools
uv.h
Go to the documentation of this file.
1 /* Copyright Joyent, Inc. and other Node contributors. All rights reserved.
2  *
3  * Permission is hereby granted, free of charge, to any person obtaining a copy
4  * of this software and associated documentation files (the "Software"), to
5  * deal in the Software without restriction, including without limitation the
6  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7  * sell copies of the Software, and to permit persons to whom the Software is
8  * furnished to do so, subject to the following conditions:
9  *
10  * The above copyright notice and this permission notice shall be included in
11  * all copies or substantial portions of the Software.
12  *
13  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19  * IN THE SOFTWARE.
20  */
21 
22 /* See https://github.com/libuv/libuv#documentation for documentation. */
23 
24 #ifndef UV_H
25 #define UV_H
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 #if defined(BUILDING_UV_SHARED) && defined(USING_UV_SHARED)
31 #error "Define either BUILDING_UV_SHARED or USING_UV_SHARED, not both."
32 #endif
33 
34 #ifdef _WIN32
35  /* Windows - set up dll import/export decorators. */
36 # if defined(BUILDING_UV_SHARED)
37  /* Building shared library. */
38 # define UV_EXTERN __declspec(dllexport)
39 # elif defined(USING_UV_SHARED)
40  /* Using shared library. */
41 # define UV_EXTERN __declspec(dllimport)
42 # else
43  /* Building static library. */
44 # define UV_EXTERN /* nothing */
45 # endif
46 #elif __GNUC__ >= 4
47 # define UV_EXTERN __attribute__((visibility("default")))
48 #else
49 # define UV_EXTERN /* nothing */
50 #endif
51 
52 #include "uv/errno.h"
53 #include "uv/version.h"
54 #include <stddef.h>
55 #include <stdio.h>
56 
57 #if defined(_MSC_VER) && _MSC_VER < 1600
58 # include "uv/stdint-msvc2008.h"
59 #else
60 # include <stdint.h>
61 #endif
62 
63 #if defined(_WIN32)
64 # include "uv/win.h"
65 #else
66 # include "uv/unix.h"
67 #endif
68 
69 /* Expand this list if necessary. */
70 #define UV_ERRNO_MAP(XX) \
71  XX(E2BIG, "argument list too long") \
72  XX(EACCES, "permission denied") \
73  XX(EADDRINUSE, "address already in use") \
74  XX(EADDRNOTAVAIL, "address not available") \
75  XX(EAFNOSUPPORT, "address family not supported") \
76  XX(EAGAIN, "resource temporarily unavailable") \
77  XX(EAI_ADDRFAMILY, "address family not supported") \
78  XX(EAI_AGAIN, "temporary failure") \
79  XX(EAI_BADFLAGS, "bad ai_flags value") \
80  XX(EAI_BADHINTS, "invalid value for hints") \
81  XX(EAI_CANCELED, "request canceled") \
82  XX(EAI_FAIL, "permanent failure") \
83  XX(EAI_FAMILY, "ai_family not supported") \
84  XX(EAI_MEMORY, "out of memory") \
85  XX(EAI_NODATA, "no address") \
86  XX(EAI_NONAME, "unknown node or service") \
87  XX(EAI_OVERFLOW, "argument buffer overflow") \
88  XX(EAI_PROTOCOL, "resolved protocol is unknown") \
89  XX(EAI_SERVICE, "service not available for socket type") \
90  XX(EAI_SOCKTYPE, "socket type not supported") \
91  XX(EALREADY, "connection already in progress") \
92  XX(EBADF, "bad file descriptor") \
93  XX(EBUSY, "resource busy or locked") \
94  XX(ECANCELED, "operation canceled") \
95  XX(ECHARSET, "invalid Unicode character") \
96  XX(ECONNABORTED, "software caused connection abort") \
97  XX(ECONNREFUSED, "connection refused") \
98  XX(ECONNRESET, "connection reset by peer") \
99  XX(EDESTADDRREQ, "destination address required") \
100  XX(EEXIST, "file already exists") \
101  XX(EFAULT, "bad address in system call argument") \
102  XX(EFBIG, "file too large") \
103  XX(EHOSTUNREACH, "host is unreachable") \
104  XX(EINTR, "interrupted system call") \
105  XX(EINVAL, "invalid argument") \
106  XX(EIO, "i/o error") \
107  XX(EISCONN, "socket is already connected") \
108  XX(EISDIR, "illegal operation on a directory") \
109  XX(ELOOP, "too many symbolic links encountered") \
110  XX(EMFILE, "too many open files") \
111  XX(EMSGSIZE, "message too long") \
112  XX(ENAMETOOLONG, "name too long") \
113  XX(ENETDOWN, "network is down") \
114  XX(ENETUNREACH, "network is unreachable") \
115  XX(ENFILE, "file table overflow") \
116  XX(ENOBUFS, "no buffer space available") \
117  XX(ENODEV, "no such device") \
118  XX(ENOENT, "no such file or directory") \
119  XX(ENOMEM, "not enough memory") \
120  XX(ENONET, "machine is not on the network") \
121  XX(ENOPROTOOPT, "protocol not available") \
122  XX(ENOSPC, "no space left on device") \
123  XX(ENOSYS, "function not implemented") \
124  XX(ENOTCONN, "socket is not connected") \
125  XX(ENOTDIR, "not a directory") \
126  XX(ENOTEMPTY, "directory not empty") \
127  XX(ENOTSOCK, "socket operation on non-socket") \
128  XX(ENOTSUP, "operation not supported on socket") \
129  XX(EPERM, "operation not permitted") \
130  XX(EPIPE, "broken pipe") \
131  XX(EPROTO, "protocol error") \
132  XX(EPROTONOSUPPORT, "protocol not supported") \
133  XX(EPROTOTYPE, "protocol wrong type for socket") \
134  XX(ERANGE, "result too large") \
135  XX(EROFS, "read-only file system") \
136  XX(ESHUTDOWN, "cannot send after transport endpoint shutdown") \
137  XX(ESPIPE, "invalid seek") \
138  XX(ESRCH, "no such process") \
139  XX(ETIMEDOUT, "connection timed out") \
140  XX(ETXTBSY, "text file is busy") \
141  XX(EXDEV, "cross-device link not permitted") \
142  XX(UNKNOWN, "unknown error") \
143  XX(EOF, "end of file") \
144  XX(ENXIO, "no such device or address") \
145  XX(EMLINK, "too many links") \
146  XX(EHOSTDOWN, "host is down") \
147  XX(EREMOTEIO, "remote I/O error") \
148  XX(ENOTTY, "inappropriate ioctl for device") \
149  XX(EFTYPE, "inappropriate file type or format") \
150  XX(EILSEQ, "illegal byte sequence") \
151 
152 #define UV_HANDLE_TYPE_MAP(XX) \
153  XX(ASYNC, async) \
154  XX(CHECK, check) \
155  XX(FS_EVENT, fs_event) \
156  XX(FS_POLL, fs_poll) \
157  XX(HANDLE, handle) \
158  XX(IDLE, idle) \
159  XX(NAMED_PIPE, pipe) \
160  XX(POLL, poll) \
161  XX(PREPARE, prepare) \
162  XX(PROCESS, process) \
163  XX(STREAM, stream) \
164  XX(TCP, tcp) \
165  XX(TIMER, timer) \
166  XX(TTY, tty) \
167  XX(UDP, udp) \
168  XX(SIGNAL, signal) \
169 
170 #define UV_REQ_TYPE_MAP(XX) \
171  XX(REQ, req) \
172  XX(CONNECT, connect) \
173  XX(WRITE, write) \
174  XX(SHUTDOWN, shutdown) \
175  XX(UDP_SEND, udp_send) \
176  XX(FS, fs) \
177  XX(WORK, work) \
178  XX(GETADDRINFO, getaddrinfo) \
179  XX(GETNAMEINFO, getnameinfo) \
180  XX(RANDOM, random) \
181 
182 typedef enum {
183 #define XX(code, _) UV_ ## code = UV__ ## code,
185 #undef XX
186  UV_ERRNO_MAX = UV__EOF - 1
188 
189 typedef enum {
191 #define XX(uc, lc) UV_##uc,
193 #undef XX
197 
198 typedef enum {
200 #define XX(uc, lc) UV_##uc,
202 #undef XX
206 
207 
208 /* Handle types. */
209 typedef struct uv_loop_s uv_loop_t;
210 typedef struct uv_handle_s uv_handle_t;
211 typedef struct uv_dir_s uv_dir_t;
212 typedef struct uv_stream_s uv_stream_t;
213 typedef struct uv_tcp_s uv_tcp_t;
214 typedef struct uv_udp_s uv_udp_t;
215 typedef struct uv_pipe_s uv_pipe_t;
216 typedef struct uv_tty_s uv_tty_t;
217 typedef struct uv_poll_s uv_poll_t;
218 typedef struct uv_timer_s uv_timer_t;
219 typedef struct uv_prepare_s uv_prepare_t;
220 typedef struct uv_check_s uv_check_t;
221 typedef struct uv_idle_s uv_idle_t;
222 typedef struct uv_async_s uv_async_t;
223 typedef struct uv_process_s uv_process_t;
224 typedef struct uv_fs_event_s uv_fs_event_t;
225 typedef struct uv_fs_poll_s uv_fs_poll_t;
226 typedef struct uv_signal_s uv_signal_t;
227 
228 /* Request types. */
229 typedef struct uv_req_s uv_req_t;
230 typedef struct uv_getaddrinfo_s uv_getaddrinfo_t;
231 typedef struct uv_getnameinfo_s uv_getnameinfo_t;
232 typedef struct uv_shutdown_s uv_shutdown_t;
233 typedef struct uv_write_s uv_write_t;
234 typedef struct uv_connect_s uv_connect_t;
235 typedef struct uv_udp_send_s uv_udp_send_t;
236 typedef struct uv_fs_s uv_fs_t;
237 typedef struct uv_work_s uv_work_t;
238 typedef struct uv_random_s uv_random_t;
239 
240 /* None of the above. */
241 typedef struct uv_env_item_s uv_env_item_t;
242 typedef struct uv_cpu_info_s uv_cpu_info_t;
244 typedef struct uv_dirent_s uv_dirent_t;
245 typedef struct uv_passwd_s uv_passwd_t;
246 typedef struct uv_utsname_s uv_utsname_t;
247 typedef struct uv_statfs_s uv_statfs_t;
248 
249 typedef enum {
253 
254 typedef enum {
259 
260 
261 UV_EXTERN unsigned int uv_version(void);
262 UV_EXTERN const char* uv_version_string(void);
263 
264 typedef void* (*uv_malloc_func)(size_t size);
265 typedef void* (*uv_realloc_func)(void* ptr, size_t size);
266 typedef void* (*uv_calloc_func)(size_t count, size_t size);
267 typedef void (*uv_free_func)(void* ptr);
268 
269 UV_EXTERN void uv_library_shutdown(void);
270 
272  uv_realloc_func realloc_func,
273  uv_calloc_func calloc_func,
274  uv_free_func free_func);
275 
279 /*
280  * NOTE:
281  * This function is DEPRECATED (to be removed after 0.12), users should
282  * allocate the loop manually and use uv_loop_init instead.
283  */
285 /*
286  * NOTE:
287  * This function is DEPRECATED (to be removed after 0.12). Users should use
288  * uv_loop_close and free the memory manually instead.
289  */
291 UV_EXTERN size_t uv_loop_size(void);
295 
298 
301 UV_EXTERN int uv_has_ref(const uv_handle_t*);
302 
305 
306 UV_EXTERN int uv_backend_fd(const uv_loop_t*);
308 
309 typedef void (*uv_alloc_cb)(uv_handle_t* handle,
310  size_t suggested_size,
311  uv_buf_t* buf);
312 typedef void (*uv_read_cb)(uv_stream_t* stream,
313  ssize_t nread,
314  const uv_buf_t* buf);
315 typedef void (*uv_write_cb)(uv_write_t* req, int status);
316 typedef void (*uv_connect_cb)(uv_connect_t* req, int status);
317 typedef void (*uv_shutdown_cb)(uv_shutdown_t* req, int status);
318 typedef void (*uv_connection_cb)(uv_stream_t* server, int status);
319 typedef void (*uv_close_cb)(uv_handle_t* handle);
320 typedef void (*uv_poll_cb)(uv_poll_t* handle, int status, int events);
321 typedef void (*uv_timer_cb)(uv_timer_t* handle);
322 typedef void (*uv_async_cb)(uv_async_t* handle);
324 typedef void (*uv_check_cb)(uv_check_t* handle);
325 typedef void (*uv_idle_cb)(uv_idle_t* handle);
326 typedef void (*uv_exit_cb)(uv_process_t*, int64_t exit_status, int term_signal);
327 typedef void (*uv_walk_cb)(uv_handle_t* handle, void* arg);
328 typedef void (*uv_fs_cb)(uv_fs_t* req);
329 typedef void (*uv_work_cb)(uv_work_t* req);
330 typedef void (*uv_after_work_cb)(uv_work_t* req, int status);
332  int status,
333  struct addrinfo* res);
335  int status,
336  const char* hostname,
337  const char* service);
338 typedef void (*uv_random_cb)(uv_random_t* req,
339  int status,
340  void* buf,
341  size_t buflen);
342 
343 typedef struct {
344  long tv_sec;
345  long tv_nsec;
346 } uv_timespec_t;
347 
348 
349 typedef struct {
366 } uv_stat_t;
367 
368 
370  const char* filename,
371  int events,
372  int status);
373 
375  int status,
376  const uv_stat_t* prev,
377  const uv_stat_t* curr);
378 
379 typedef void (*uv_signal_cb)(uv_signal_t* handle, int signum);
380 
381 
382 typedef enum {
386 
387 
388 UV_EXTERN int uv_translate_sys_error(int sys_errno);
389 
390 UV_EXTERN const char* uv_strerror(int err);
391 UV_EXTERN char* uv_strerror_r(int err, char* buf, size_t buflen);
392 
393 UV_EXTERN const char* uv_err_name(int err);
394 UV_EXTERN char* uv_err_name_r(int err, char* buf, size_t buflen);
395 
396 
397 #define UV_REQ_FIELDS \
398  /* public */ \
399  void* data; \
400  /* read-only */ \
401  uv_req_type type; \
402  /* private */ \
403  void* reserved[6]; \
404  UV_REQ_PRIVATE_FIELDS \
405 
406 /* Abstract base class of all requests. */
407 struct uv_req_s {
409 };
410 
411 
412 /* Platform-specific request types. */
414 
415 
419 
425 };
426 
427 
428 #define UV_HANDLE_FIELDS \
429  /* public */ \
430  void* data; \
431  /* read-only */ \
432  uv_loop_t* loop; \
433  uv_handle_type type; \
434  /* private */ \
435  uv_close_cb close_cb; \
436  void* handle_queue[2]; \
437  union { \
438  int fd; \
439  void* reserved[4]; \
440  } u; \
441  UV_HANDLE_PRIVATE_FIELDS \
442 
443 /* The abstract base class of all handles. */
444 struct uv_handle_s {
446 };
447 
454 
456 UV_EXTERN void* uv_req_get_data(const uv_req_t* req);
457 UV_EXTERN void uv_req_set_data(uv_req_t* req, void* data);
460 
462 
463 UV_EXTERN void uv_walk(uv_loop_t* loop, uv_walk_cb walk_cb, void* arg);
464 
465 /* Helpers for ad hoc debugging, no API/ABI stability guaranteed. */
468 
470 
473 
475 
476 UV_EXTERN uv_buf_t uv_buf_init(char* base, unsigned int len);
477 
478 
479 #define UV_STREAM_FIELDS \
480  /* number of bytes queued for writing */ \
481  size_t write_queue_size; \
482  uv_alloc_cb alloc_cb; \
483  uv_read_cb read_cb; \
484  /* private */ \
485  UV_STREAM_PRIVATE_FIELDS
486 
487 /*
488  * uv_stream_t is a subclass of uv_handle_t.
489  *
490  * uv_stream is an abstract class.
491  *
492  * uv_stream_t is the parent class of uv_tcp_t, uv_pipe_t and uv_tty_t.
493  */
494 struct uv_stream_s {
497 };
498 
500 
502 UV_EXTERN int uv_accept(uv_stream_t* server, uv_stream_t* client);
503 
505  uv_alloc_cb alloc_cb,
506  uv_read_cb read_cb);
508 
511  const uv_buf_t bufs[],
512  unsigned int nbufs,
513  uv_write_cb cb);
516  const uv_buf_t bufs[],
517  unsigned int nbufs,
518  uv_stream_t* send_handle,
519  uv_write_cb cb);
521  const uv_buf_t bufs[],
522  unsigned int nbufs);
523 
524 /* uv_write_t is a subclass of uv_req_t. */
525 struct uv_write_s {
528  uv_stream_t* send_handle; /* TODO: make private and unix-only in v2.x. */
531 };
532 
533 
536 
538 
540 
541 
542 /*
543  * uv_tcp_t is a subclass of uv_stream_t.
544  *
545  * Represents a TCP stream or TCP server.
546  */
547 struct uv_tcp_s {
551 };
552 
554 UV_EXTERN int uv_tcp_init_ex(uv_loop_t*, uv_tcp_t* handle, unsigned int flags);
556 UV_EXTERN int uv_tcp_nodelay(uv_tcp_t* handle, int enable);
558  int enable,
559  unsigned int delay);
561 
563  /* Used with uv_tcp_bind, when an IPv6 address is used. */
564  UV_TCP_IPV6ONLY = 1
565 };
566 
568  const struct sockaddr* addr,
569  unsigned int flags);
571  struct sockaddr* name,
572  int* namelen);
574  struct sockaddr* name,
575  int* namelen);
578  uv_tcp_t* handle,
579  const struct sockaddr* addr,
580  uv_connect_cb cb);
581 
582 /* uv_connect_t is a subclass of uv_req_t. */
583 struct uv_connect_s {
588 };
589 
590 
591 /*
592  * UDP support.
593  */
594 
596  /* Disables dual stack mode. */
598  /*
599  * Indicates message was truncated because read buffer was too small. The
600  * remainder was discarded by the OS. Used in uv_udp_recv_cb.
601  */
603  /*
604  * Indicates if SO_REUSEADDR will be set when binding the handle.
605  * This sets the SO_REUSEPORT socket flag on the BSDs and OS X. On other
606  * Unix platforms, it sets the SO_REUSEADDR flag. What that means is that
607  * multiple threads or processes can bind to the same address without error
608  * (provided they all set the flag) but only the last one to bind will receive
609  * any traffic, in effect "stealing" the port from the previous listener.
610  */
612  /*
613  * Indicates that the message was received by recvmmsg, so the buffer provided
614  * must not be freed by the recv_cb callback.
615  */
617  /*
618  * Indicates that the buffer provided has been fully utilized by recvmmsg and
619  * that it should now be freed by the recv_cb callback. When this flag is set
620  * in uv_udp_recv_cb, nread will always be 0 and addr will always be NULL.
621  */
623 
624  /*
625  * Indicates that recvmmsg should be used, if available.
626  */
627  UV_UDP_RECVMMSG = 256
628 };
629 
630 typedef void (*uv_udp_send_cb)(uv_udp_send_t* req, int status);
631 typedef void (*uv_udp_recv_cb)(uv_udp_t* handle,
632  ssize_t nread,
633  const uv_buf_t* buf,
634  const struct sockaddr* addr,
635  unsigned flags);
636 
637 /* uv_udp_t is a subclass of uv_handle_t. */
638 struct uv_udp_s {
640  /* read-only */
641  /*
642  * Number of bytes queued for sending. This field strictly shows how much
643  * information is currently queued.
644  */
646  /*
647  * Number of send requests currently in the queue awaiting to be processed.
648  */
651 };
652 
653 /* uv_udp_send_t is a subclass of uv_req_t. */
659 };
660 
665  const struct sockaddr* addr,
666  unsigned int flags);
667 UV_EXTERN int uv_udp_connect(uv_udp_t* handle, const struct sockaddr* addr);
668 
670  struct sockaddr* name,
671  int* namelen);
673  struct sockaddr* name,
674  int* namelen);
676  const char* multicast_addr,
677  const char* interface_addr,
678  uv_membership membership);
680  const char* multicast_addr,
681  const char* interface_addr,
682  const char* source_addr,
683  uv_membership membership);
687  const char* interface_addr);
689 UV_EXTERN int uv_udp_set_ttl(uv_udp_t* handle, int ttl);
691  uv_udp_t* handle,
692  const uv_buf_t bufs[],
693  unsigned int nbufs,
694  const struct sockaddr* addr,
695  uv_udp_send_cb send_cb);
697  const uv_buf_t bufs[],
698  unsigned int nbufs,
699  const struct sockaddr* addr);
701  uv_alloc_cb alloc_cb,
702  uv_udp_recv_cb recv_cb);
707 
708 
709 /*
710  * uv_tty_t is a subclass of uv_stream_t.
711  *
712  * Representing a stream for the console.
713  */
714 struct uv_tty_s {
718 };
719 
720 typedef enum {
721  /* Initial/normal terminal mode */
723  /* Raw input mode (On Windows, ENABLE_WINDOW_INPUT is also enabled) */
725  /* Binary-safe I/O mode for IPC (Unix-only) */
728 
729 typedef enum {
730  /*
731  * The console supports handling of virtual terminal sequences
732  * (Windows10 new console, ConEmu)
733  */
735  /* The console cannot process the virtual terminal sequence. (Legacy
736  * console)
737  */
740 
741 
742 UV_EXTERN int uv_tty_init(uv_loop_t*, uv_tty_t*, uv_file fd, int readable);
744 UV_EXTERN int uv_tty_reset_mode(void);
748 
749 #ifdef __cplusplus
750 extern "C++" {
751 
752 inline int uv_tty_set_mode(uv_tty_t* handle, int mode) {
753  return uv_tty_set_mode(handle, static_cast<uv_tty_mode_t>(mode));
754 }
755 
756 }
757 #endif
758 
760 
761 /*
762  * uv_pipe_t is a subclass of uv_stream_t.
763  *
764  * Representing a pipe stream or pipe server. On Windows this is a Named
765  * Pipe. On Unix this is a Unix domain socket.
766  */
767 struct uv_pipe_s {
770  int ipc; /* non-zero if this pipe is used for passing handles */
772 };
773 
776 UV_EXTERN int uv_pipe_bind(uv_pipe_t* handle, const char* name);
778  uv_pipe_t* handle,
779  const char* name,
780  uv_connect_cb cb);
782  char* buffer,
783  size_t* size);
785  char* buffer,
786  size_t* size);
791 
792 
793 struct uv_poll_s {
797 };
798 
803  UV_PRIORITIZED = 8
804 };
805 
808  uv_poll_t* handle,
812 
813 
814 struct uv_prepare_s {
817 };
818 
822 
823 
824 struct uv_check_s {
827 };
828 
832 
833 
834 struct uv_idle_s {
837 };
838 
842 
843 
844 struct uv_async_s {
847 };
848 
850  uv_async_t* async,
851  uv_async_cb async_cb);
853 
854 
855 /*
856  * uv_timer_t is a subclass of uv_handle_t.
857  *
858  * Used to get woken up at a specified time in the future.
859  */
860 struct uv_timer_s {
863 };
864 
867  uv_timer_cb cb,
869  uint64_t repeat);
875 
876 
877 /*
878  * uv_getaddrinfo_t is a subclass of uv_req_t.
879  *
880  * Request object for uv_getaddrinfo.
881  */
884  /* read-only */
886  /* struct addrinfo* addrinfo is marked as private, but it really isn't. */
888 };
889 
890 
893  uv_getaddrinfo_cb getaddrinfo_cb,
894  const char* node,
895  const char* service,
896  const struct addrinfo* hints);
897 UV_EXTERN void uv_freeaddrinfo(struct addrinfo* ai);
898 
899 
900 /*
901 * uv_getnameinfo_t is a subclass of uv_req_t.
902 *
903 * Request object for uv_getnameinfo.
904 */
907  /* read-only */
909  /* host and service are marked as private, but they really aren't. */
911 };
912 
915  uv_getnameinfo_cb getnameinfo_cb,
916  const struct sockaddr* addr,
917  int flags);
918 
919 
920 /* uv_spawn() options. */
921 typedef enum {
922  UV_IGNORE = 0x00,
926 
927  /*
928  * When UV_CREATE_PIPE is specified, UV_READABLE_PIPE and UV_WRITABLE_PIPE
929  * determine the direction of flow, from the child process' perspective. Both
930  * flags may be specified to create a duplex data stream.
931  */
934 
935  /*
936  * Open the child pipe handle in overlapped mode on Windows.
937  * On Unix it is silently ignored.
938  */
939  UV_OVERLAPPED_PIPE = 0x40
941 
942 typedef struct uv_stdio_container_s {
944 
945  union {
947  int fd;
948  } data;
950 
951 typedef struct uv_process_options_s {
952  uv_exit_cb exit_cb; /* Called after the process exits. */
953  const char* file; /* Path to program to execute. */
954  /*
955  * Command line arguments. args[0] should be the path to the program. On
956  * Windows this uses CreateProcess which concatenates the arguments into a
957  * string this can cause some strange errors. See the note at
958  * windows_verbatim_arguments.
959  */
960  char** args;
961  /*
962  * This will be set as the environ variable in the subprocess. If this is
963  * NULL then the parents environ will be used.
964  */
965  char** env;
966  /*
967  * If non-null this represents a directory the subprocess should execute
968  * in. Stands for current working directory.
969  */
970  const char* cwd;
971  /*
972  * Various flags that control how uv_spawn() behaves. See the definition of
973  * `enum uv_process_flags` below.
974  */
975  unsigned int flags;
976  /*
977  * The `stdio` field points to an array of uv_stdio_container_t structs that
978  * describe the file descriptors that will be made available to the child
979  * process. The convention is that stdio[0] points to stdin, fd 1 is used for
980  * stdout, and fd 2 is stderr.
981  *
982  * Note that on windows file descriptors greater than 2 are available to the
983  * child process only if the child processes uses the MSVCRT runtime.
984  */
987  /*
988  * Libuv can change the child process' user/group id. This happens only when
989  * the appropriate bits are set in the flags fields. This is not supported on
990  * windows; uv_spawn() will fail and set the error to UV_ENOTSUP.
991  */
995 
996 /*
997  * These are the flags that can be used for the uv_process_options.flags field.
998  */
1000  /*
1001  * Set the child process' user id. The user id is supplied in the `uid` field
1002  * of the options struct. This does not work on windows; setting this flag
1003  * will cause uv_spawn() to fail.
1004  */
1005  UV_PROCESS_SETUID = (1 << 0),
1006  /*
1007  * Set the child process' group id. The user id is supplied in the `gid`
1008  * field of the options struct. This does not work on windows; setting this
1009  * flag will cause uv_spawn() to fail.
1010  */
1011  UV_PROCESS_SETGID = (1 << 1),
1012  /*
1013  * Do not wrap any arguments in quotes, or perform any other escaping, when
1014  * converting the argument list into a command line string. This option is
1015  * only meaningful on Windows systems. On Unix it is silently ignored.
1016  */
1018  /*
1019  * Spawn the child process in a detached state - this will make it a process
1020  * group leader, and will effectively enable the child to keep running after
1021  * the parent exits. Note that the child process will still keep the
1022  * parent's event loop alive unless the parent process calls uv_unref() on
1023  * the child's process handle.
1024  */
1026  /*
1027  * Hide the subprocess window that would normally be created. This option is
1028  * only meaningful on Windows systems. On Unix it is silently ignored.
1029  */
1031  /*
1032  * Hide the subprocess console window that would normally be created. This
1033  * option is only meaningful on Windows systems. On Unix it is silently
1034  * ignored.
1035  */
1037  /*
1038  * Hide the subprocess GUI window that would normally be created. This
1039  * option is only meaningful on Windows systems. On Unix it is silently
1040  * ignored.
1041  */
1042  UV_PROCESS_WINDOWS_HIDE_GUI = (1 << 6)
1043 };
1044 
1045 /*
1046  * uv_process_t is a subclass of uv_handle_t.
1047  */
1051  int pid;
1053 };
1054 
1057  const uv_process_options_t* options);
1059 UV_EXTERN int uv_kill(int pid, int signum);
1061 
1062 
1063 /*
1064  * uv_work_t is a subclass of uv_req_t.
1065  */
1066 struct uv_work_s {
1072 };
1073 
1075  uv_work_t* req,
1076  uv_work_cb work_cb,
1077  uv_after_work_cb after_work_cb);
1078 
1080 
1081 
1083  uint64_t user; /* milliseconds */
1084  uint64_t nice; /* milliseconds */
1085  uint64_t sys; /* milliseconds */
1086  uint64_t idle; /* milliseconds */
1087  uint64_t irq; /* milliseconds */
1088 };
1089 
1091  char* model;
1092  int speed;
1093  struct uv_cpu_times_s cpu_times;
1094 };
1095 
1097  char* name;
1098  char phys_addr[6];
1100  union {
1101  struct sockaddr_in address4;
1102  struct sockaddr_in6 address6;
1104  union {
1105  struct sockaddr_in netmask4;
1106  struct sockaddr_in6 netmask6;
1108 };
1109 
1110 struct uv_passwd_s {
1111  char* username;
1112  long uid;
1113  long gid;
1114  char* shell;
1115  char* homedir;
1116 };
1117 
1119  char sysname[256];
1120  char release[256];
1121  char version[256];
1122  char machine[256];
1123  /* This struct does not contain the nodename and domainname fields present in
1124  the utsname type. domainname is a GNU extension. Both fields are referred
1125  to as meaningless in the docs. */
1126 };
1127 
1128 struct uv_statfs_s {
1137 };
1138 
1139 typedef enum {
1149 
1150 struct uv_dirent_s {
1151  const char* name;
1153 };
1154 
1155 UV_EXTERN char** uv_setup_args(int argc, char** argv);
1156 UV_EXTERN int uv_get_process_title(char* buffer, size_t size);
1157 UV_EXTERN int uv_set_process_title(const char* title);
1158 UV_EXTERN int uv_resident_set_memory(size_t* rss);
1159 UV_EXTERN int uv_uptime(double* uptime);
1162 
1163 typedef struct {
1164  long tv_sec;
1165  long tv_usec;
1166 } uv_timeval_t;
1167 
1168 typedef struct {
1171 } uv_timeval64_t;
1172 
1173 typedef struct {
1174  uv_timeval_t ru_utime; /* user CPU time used */
1175  uv_timeval_t ru_stime; /* system CPU time used */
1176  uint64_t ru_maxrss; /* maximum resident set size */
1177  uint64_t ru_ixrss; /* integral shared memory size */
1178  uint64_t ru_idrss; /* integral unshared data size */
1179  uint64_t ru_isrss; /* integral unshared stack size */
1180  uint64_t ru_minflt; /* page reclaims (soft page faults) */
1181  uint64_t ru_majflt; /* page faults (hard page faults) */
1182  uint64_t ru_nswap; /* swaps */
1183  uint64_t ru_inblock; /* block input operations */
1184  uint64_t ru_oublock; /* block output operations */
1185  uint64_t ru_msgsnd; /* IPC messages sent */
1186  uint64_t ru_msgrcv; /* IPC messages received */
1187  uint64_t ru_nsignals; /* signals received */
1188  uint64_t ru_nvcsw; /* voluntary context switches */
1189  uint64_t ru_nivcsw; /* involuntary context switches */
1190 } uv_rusage_t;
1191 
1193 
1194 UV_EXTERN int uv_os_homedir(char* buffer, size_t* size);
1195 UV_EXTERN int uv_os_tmpdir(char* buffer, size_t* size);
1200 
1201 #if defined(__PASE__)
1202 /* On IBM i PASE, the highest process priority is -10 */
1203 # define UV_PRIORITY_LOW 39 /* RUNPTY(99) */
1204 # define UV_PRIORITY_BELOW_NORMAL 15 /* RUNPTY(50) */
1205 # define UV_PRIORITY_NORMAL 0 /* RUNPTY(20) */
1206 # define UV_PRIORITY_ABOVE_NORMAL -4 /* RUNTY(12) */
1207 # define UV_PRIORITY_HIGH -7 /* RUNPTY(6) */
1208 # define UV_PRIORITY_HIGHEST -10 /* RUNPTY(1) */
1209 #else
1210 # define UV_PRIORITY_LOW 19
1211 # define UV_PRIORITY_BELOW_NORMAL 10
1212 # define UV_PRIORITY_NORMAL 0
1213 # define UV_PRIORITY_ABOVE_NORMAL -7
1214 # define UV_PRIORITY_HIGH -14
1215 # define UV_PRIORITY_HIGHEST -20
1216 #endif
1217 
1218 UV_EXTERN int uv_os_getpriority(uv_pid_t pid, int* priority);
1219 UV_EXTERN int uv_os_setpriority(uv_pid_t pid, int priority);
1220 
1221 UV_EXTERN int uv_cpu_info(uv_cpu_info_t** cpu_infos, int* count);
1222 UV_EXTERN void uv_free_cpu_info(uv_cpu_info_t* cpu_infos, int count);
1223 
1225  int* count);
1227  int count);
1228 
1230  char* name;
1231  char* value;
1232 };
1233 
1234 UV_EXTERN int uv_os_environ(uv_env_item_t** envitems, int* count);
1235 UV_EXTERN void uv_os_free_environ(uv_env_item_t* envitems, int count);
1236 UV_EXTERN int uv_os_getenv(const char* name, char* buffer, size_t* size);
1237 UV_EXTERN int uv_os_setenv(const char* name, const char* value);
1238 UV_EXTERN int uv_os_unsetenv(const char* name);
1239 
1240 #ifdef MAXHOSTNAMELEN
1241 # define UV_MAXHOSTNAMESIZE (MAXHOSTNAMELEN + 1)
1242 #else
1243  /*
1244  Fallback for the maximum hostname size, including the null terminator. The
1245  Windows gethostname() documentation states that 256 bytes will always be
1246  large enough to hold the null-terminated hostname.
1247  */
1248 # define UV_MAXHOSTNAMESIZE 256
1249 #endif
1250 
1251 UV_EXTERN int uv_os_gethostname(char* buffer, size_t* size);
1252 
1254 
1256 
1257 typedef enum {
1295  UV_FS_LUTIME
1297 
1298 struct uv_dir_s {
1300  size_t nentries;
1301  void* reserved[4];
1303 };
1304 
1305 /* uv_fs_t is a subclass of uv_req_t. */
1306 struct uv_fs_s {
1312  void* ptr;
1313  const char* path;
1314  uv_stat_t statbuf; /* Stores the result of uv_fs_stat() and uv_fs_fstat(). */
1316 };
1317 
1321 UV_EXTERN void* uv_fs_get_ptr(const uv_fs_t*);
1322 UV_EXTERN const char* uv_fs_get_path(const uv_fs_t*);
1324 
1327  uv_fs_t* req,
1328  uv_file file,
1329  uv_fs_cb cb);
1331  uv_fs_t* req,
1332  const char* path,
1333  int flags,
1334  int mode,
1335  uv_fs_cb cb);
1337  uv_fs_t* req,
1338  uv_file file,
1339  const uv_buf_t bufs[],
1340  unsigned int nbufs,
1341  int64_t offset,
1342  uv_fs_cb cb);
1344  uv_fs_t* req,
1345  const char* path,
1346  uv_fs_cb cb);
1348  uv_fs_t* req,
1349  uv_file file,
1350  const uv_buf_t bufs[],
1351  unsigned int nbufs,
1352  int64_t offset,
1353  uv_fs_cb cb);
1354 /*
1355  * This flag can be used with uv_fs_copyfile() to return an error if the
1356  * destination already exists.
1357  */
1358 #define UV_FS_COPYFILE_EXCL 0x0001
1359 
1360 /*
1361  * This flag can be used with uv_fs_copyfile() to attempt to create a reflink.
1362  * If copy-on-write is not supported, a fallback copy mechanism is used.
1363  */
1364 #define UV_FS_COPYFILE_FICLONE 0x0002
1365 
1366 /*
1367  * This flag can be used with uv_fs_copyfile() to attempt to create a reflink.
1368  * If copy-on-write is not supported, an error is returned.
1369  */
1370 #define UV_FS_COPYFILE_FICLONE_FORCE 0x0004
1371 
1373  uv_fs_t* req,
1374  const char* path,
1375  const char* new_path,
1376  int flags,
1377  uv_fs_cb cb);
1379  uv_fs_t* req,
1380  const char* path,
1381  int mode,
1382  uv_fs_cb cb);
1384  uv_fs_t* req,
1385  const char* tpl,
1386  uv_fs_cb cb);
1388  uv_fs_t* req,
1389  const char* tpl,
1390  uv_fs_cb cb);
1392  uv_fs_t* req,
1393  const char* path,
1394  uv_fs_cb cb);
1396  uv_fs_t* req,
1397  const char* path,
1398  int flags,
1399  uv_fs_cb cb);
1401  uv_dirent_t* ent);
1403  uv_fs_t* req,
1404  const char* path,
1405  uv_fs_cb cb);
1407  uv_fs_t* req,
1408  uv_dir_t* dir,
1409  uv_fs_cb cb);
1411  uv_fs_t* req,
1412  uv_dir_t* dir,
1413  uv_fs_cb cb);
1415  uv_fs_t* req,
1416  const char* path,
1417  uv_fs_cb cb);
1419  uv_fs_t* req,
1420  uv_file file,
1421  uv_fs_cb cb);
1423  uv_fs_t* req,
1424  const char* path,
1425  const char* new_path,
1426  uv_fs_cb cb);
1428  uv_fs_t* req,
1429  uv_file file,
1430  uv_fs_cb cb);
1432  uv_fs_t* req,
1433  uv_file file,
1434  uv_fs_cb cb);
1436  uv_fs_t* req,
1437  uv_file file,
1438  int64_t offset,
1439  uv_fs_cb cb);
1441  uv_fs_t* req,
1442  uv_file out_fd,
1443  uv_file in_fd,
1444  int64_t in_offset,
1445  size_t length,
1446  uv_fs_cb cb);
1448  uv_fs_t* req,
1449  const char* path,
1450  int mode,
1451  uv_fs_cb cb);
1453  uv_fs_t* req,
1454  const char* path,
1455  int mode,
1456  uv_fs_cb cb);
1458  uv_fs_t* req,
1459  const char* path,
1460  double atime,
1461  double mtime,
1462  uv_fs_cb cb);
1464  uv_fs_t* req,
1465  uv_file file,
1466  double atime,
1467  double mtime,
1468  uv_fs_cb cb);
1470  uv_fs_t* req,
1471  const char* path,
1472  double atime,
1473  double mtime,
1474  uv_fs_cb cb);
1476  uv_fs_t* req,
1477  const char* path,
1478  uv_fs_cb cb);
1480  uv_fs_t* req,
1481  const char* path,
1482  const char* new_path,
1483  uv_fs_cb cb);
1484 
1485 /*
1486  * This flag can be used with uv_fs_symlink() on Windows to specify whether
1487  * path argument points to a directory.
1488  */
1489 #define UV_FS_SYMLINK_DIR 0x0001
1490 
1491 /*
1492  * This flag can be used with uv_fs_symlink() on Windows to specify whether
1493  * the symlink is to be created using junction points.
1494  */
1495 #define UV_FS_SYMLINK_JUNCTION 0x0002
1496 
1498  uv_fs_t* req,
1499  const char* path,
1500  const char* new_path,
1501  int flags,
1502  uv_fs_cb cb);
1504  uv_fs_t* req,
1505  const char* path,
1506  uv_fs_cb cb);
1508  uv_fs_t* req,
1509  const char* path,
1510  uv_fs_cb cb);
1512  uv_fs_t* req,
1513  uv_file file,
1514  int mode,
1515  uv_fs_cb cb);
1517  uv_fs_t* req,
1518  const char* path,
1519  uv_uid_t uid,
1520  uv_gid_t gid,
1521  uv_fs_cb cb);
1523  uv_fs_t* req,
1524  uv_file file,
1525  uv_uid_t uid,
1526  uv_gid_t gid,
1527  uv_fs_cb cb);
1529  uv_fs_t* req,
1530  const char* path,
1531  uv_uid_t uid,
1532  uv_gid_t gid,
1533  uv_fs_cb cb);
1535  uv_fs_t* req,
1536  const char* path,
1537  uv_fs_cb cb);
1538 
1539 
1542  UV_CHANGE = 2
1543 };
1544 
1545 
1548  /* private */
1549  char* path;
1551 };
1552 
1553 
1554 /*
1555  * uv_fs_stat() based polling file watcher.
1556  */
1559  /* Private, don't touch. */
1560  void* poll_ctx;
1561 };
1562 
1566  const char* path,
1567  unsigned int interval);
1570  char* buffer,
1571  size_t* size);
1572 
1573 
1574 struct uv_signal_s {
1577  int signum;
1579 };
1580 
1583  uv_signal_cb signal_cb,
1584  int signum);
1586  uv_signal_cb signal_cb,
1587  int signum);
1589 
1590 UV_EXTERN void uv_loadavg(double avg[3]);
1591 
1592 
1593 /*
1594  * Flags to be passed to uv_fs_event_start().
1595  */
1597  /*
1598  * By default, if the fs event watcher is given a directory name, we will
1599  * watch for all events in that directory. This flags overrides this behavior
1600  * and makes fs_event report only changes to the directory entry itself. This
1601  * flag does not affect individual files watched.
1602  * This flag is currently not implemented yet on any backend.
1603  */
1605 
1606  /*
1607  * By default uv_fs_event will try to use a kernel interface such as inotify
1608  * or kqueue to detect events. This may not work on remote filesystems such
1609  * as NFS mounts. This flag makes fs_event fall back to calling stat() on a
1610  * regular interval.
1611  * This flag is currently not implemented yet on any backend.
1612  */
1614 
1615  /*
1616  * By default, event watcher, when watching directory, is not registering
1617  * (is ignoring) changes in it's subdirectories.
1618  * This flag will override this behaviour on platforms that support it.
1619  */
1621 };
1622 
1623 
1627  const char* path,
1628  unsigned int flags);
1631  char* buffer,
1632  size_t* size);
1633 
1634 UV_EXTERN int uv_ip4_addr(const char* ip, int port, struct sockaddr_in* addr);
1635 UV_EXTERN int uv_ip6_addr(const char* ip, int port, struct sockaddr_in6* addr);
1636 
1637 UV_EXTERN int uv_ip4_name(const struct sockaddr_in* src, char* dst, size_t size);
1638 UV_EXTERN int uv_ip6_name(const struct sockaddr_in6* src, char* dst, size_t size);
1639 
1640 UV_EXTERN int uv_inet_ntop(int af, const void* src, char* dst, size_t size);
1641 UV_EXTERN int uv_inet_pton(int af, const char* src, void* dst);
1642 
1643 
1644 struct uv_random_s {
1646  /* read-only */
1648  /* private */
1649  int status;
1650  void* buf;
1651  size_t buflen;
1653  struct uv__work work_req;
1654 };
1655 
1657  uv_random_t* req,
1658  void *buf,
1659  size_t buflen,
1660  unsigned flags, /* For future extension; must be 0. */
1661  uv_random_cb cb);
1662 
1663 #if defined(IF_NAMESIZE)
1664 # define UV_IF_NAMESIZE (IF_NAMESIZE + 1)
1665 #elif defined(IFNAMSIZ)
1666 # define UV_IF_NAMESIZE (IFNAMSIZ + 1)
1667 #else
1668 # define UV_IF_NAMESIZE (16 + 1)
1669 #endif
1670 
1671 UV_EXTERN int uv_if_indextoname(unsigned int ifindex,
1672  char* buffer,
1673  size_t* size);
1674 UV_EXTERN int uv_if_indextoiid(unsigned int ifindex,
1675  char* buffer,
1676  size_t* size);
1677 
1678 UV_EXTERN int uv_exepath(char* buffer, size_t* size);
1679 
1680 UV_EXTERN int uv_cwd(char* buffer, size_t* size);
1681 
1682 UV_EXTERN int uv_chdir(const char* dir);
1683 
1687 
1689 UV_EXTERN void uv_sleep(unsigned int msec);
1690 
1692 
1693 UV_EXTERN int uv_dlopen(const char* filename, uv_lib_t* lib);
1694 UV_EXTERN void uv_dlclose(uv_lib_t* lib);
1695 UV_EXTERN int uv_dlsym(uv_lib_t* lib, const char* name, void** ptr);
1696 UV_EXTERN const char* uv_dlerror(const uv_lib_t* lib);
1697 
1704 
1705 UV_EXTERN int uv_rwlock_init(uv_rwlock_t* rwlock);
1707 UV_EXTERN void uv_rwlock_rdlock(uv_rwlock_t* rwlock);
1710 UV_EXTERN void uv_rwlock_wrlock(uv_rwlock_t* rwlock);
1713 
1714 UV_EXTERN int uv_sem_init(uv_sem_t* sem, unsigned int value);
1715 UV_EXTERN void uv_sem_destroy(uv_sem_t* sem);
1716 UV_EXTERN void uv_sem_post(uv_sem_t* sem);
1717 UV_EXTERN void uv_sem_wait(uv_sem_t* sem);
1719 
1724 
1725 UV_EXTERN int uv_barrier_init(uv_barrier_t* barrier, unsigned int count);
1727 UV_EXTERN int uv_barrier_wait(uv_barrier_t* barrier);
1728 
1731  uv_mutex_t* mutex,
1732  uint64_t timeout);
1733 
1734 UV_EXTERN void uv_once(uv_once_t* guard, void (*callback)(void));
1735 
1739 UV_EXTERN void uv_key_set(uv_key_t* key, void* value);
1740 
1742 
1743 typedef void (*uv_thread_cb)(void* arg);
1744 
1746 
1747 typedef enum {
1751 
1753  unsigned int flags;
1754  size_t stack_size;
1755  /* More fields may be added at any time. */
1756 };
1757 
1759 
1761  const uv_thread_options_t* params,
1763  void* arg);
1766 UV_EXTERN int uv_thread_equal(const uv_thread_t* t1, const uv_thread_t* t2);
1767 
1768 /* The presence of these unions force similar struct layout. */
1769 #define XX(_, name) uv_ ## name ## _t name;
1772 };
1773 
1774 union uv_any_req {
1776 };
1777 #undef XX
1778 
1779 
1780 struct uv_loop_s {
1781  /* User data - use this for whatever. */
1782  void* data;
1783  /* Loop reference counting. */
1784  unsigned int active_handles;
1785  void* handle_queue[2];
1786  union {
1787  void* unused;
1788  unsigned int count;
1790  /* Internal storage for future extensions. */
1792  /* Internal flag to signal loop stop. */
1793  unsigned int stop_flag;
1795 };
1796 
1797 UV_EXTERN void* uv_loop_get_data(const uv_loop_t*);
1798 UV_EXTERN void uv_loop_set_data(uv_loop_t*, void* data);
1799 
1800 /* Don't export the private CPP symbols. */
1801 #undef UV_HANDLE_TYPE_PRIVATE
1802 #undef UV_REQ_TYPE_PRIVATE
1803 #undef UV_REQ_PRIVATE_FIELDS
1804 #undef UV_STREAM_PRIVATE_FIELDS
1805 #undef UV_TCP_PRIVATE_FIELDS
1806 #undef UV_PREPARE_PRIVATE_FIELDS
1807 #undef UV_CHECK_PRIVATE_FIELDS
1808 #undef UV_IDLE_PRIVATE_FIELDS
1809 #undef UV_ASYNC_PRIVATE_FIELDS
1810 #undef UV_TIMER_PRIVATE_FIELDS
1811 #undef UV_GETADDRINFO_PRIVATE_FIELDS
1812 #undef UV_GETNAMEINFO_PRIVATE_FIELDS
1813 #undef UV_FS_REQ_PRIVATE_FIELDS
1814 #undef UV_WORK_PRIVATE_FIELDS
1815 #undef UV_FS_EVENT_PRIVATE_FIELDS
1816 #undef UV_SIGNAL_PRIVATE_FIELDS
1817 #undef UV_LOOP_PRIVATE_FIELDS
1818 #undef UV_LOOP_PRIVATE_PLATFORM_FIELDS
1819 #undef UV__ERR
1820 
1821 #ifdef __cplusplus
1822 }
1823 #endif
1824 #endif /* UV_H */
size_t len
Definition: 6502dis.c:15
lzma_index * src
Definition: index.h:567
static const char * arg(RzAnalysis *a, csh *handle, cs_insn *insn, char *buf, int n)
Definition: arm_esil32.c:136
static bool err
Definition: armass.c:435
static mcore_handle handle
Definition: asm_mcore.c:8
static int value
Definition: cmd_api.c:93
lzma_check check
Definition: container.h:292
static static fork const void static count static fd const char const char static newpath const char static path const char path
Definition: sflib.h:35
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval tv
Definition: sflib.h:79
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len static semflg const void static shmflg const struct timespec req
Definition: sflib.h:128
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void count
Definition: sflib.h:98
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd socket
Definition: sflib.h:79
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len key
Definition: sflib.h:118
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len static semflg const void static shmflg const struct timespec struct timespec static rem const char static group const void length
Definition: sflib.h:133
#define UV__EOF
Definition: errno.h:32
static void poll_cb(uv_fs_t *req)
Definition: fs-poll.c:185
voidpf void uLong size
Definition: ioapi.h:138
const char * filename
Definition: ioapi.h:137
voidpf stream
Definition: ioapi.h:138
voidpf uLong offset
Definition: ioapi.h:144
const char int mode
Definition: ioapi.h:137
voidpf void * buf
Definition: ioapi.h:138
static static fork const void static count static fd const char const char static newpath char char char static envp time_t static t const char static mode static whence const char static dir time_t static t unsigned static seconds const char struct utimbuf static buf static inc pid
Definition: sflib.h:64
static static fork const void static count static fd const char const char static newpath char char argv
Definition: sflib.h:40
static const char struct stat static buf struct stat static buf static vhangup int options
Definition: sflib.h:145
static const char struct stat static buf struct stat static buf static vhangup int status
Definition: sflib.h:145
static static fork const void static count static fd const char static mode const char static pathname const char static path const char static dev const char static group static getpid static getuid void void static data static pause const char static mode static sync const char const char static newpath const char static pathname unsigned long static filedes void static end_data_segment signum
Definition: sflib.h:79
char * dst
Definition: lz4.h:724
#define ip
int type
Definition: mipsasm.c:17
string FILE
Definition: benchmark.py:21
static void repeat(struct parse *, sopno, int, int)
Definition: regcomp.c:1155
static struct sockaddr static addrlen static backlog const void static flags void flags
Definition: sfsocketcall.h:123
long int64_t
Definition: sftypes.h:32
int int32_t
Definition: sftypes.h:33
unsigned long uint64_t
Definition: sftypes.h:28
int ssize_t
Definition: sftypes.h:39
#define cond(bop, top, mask, flags)
Definition: buffer.h:15
Definition: zipcmp.c:77
Definition: gzappend.c:170
Definition: z80asm.h:102
Definition: getopt.h:84
Definition: dis.h:43
Definition: uv.h:844
Definition: unix.h:123
Definition: uv.h:824
uv_stream_t * handle
Definition: uv.h:586
UV_REQ_FIELDS uv_connect_cb cb
Definition: uv.h:585
struct uv_cpu_times_s cpu_times
Definition: uv.h:1093
char * model
Definition: uv.h:1091
int speed
Definition: uv.h:1092
uint64_t nice
Definition: uv.h:1084
uint64_t sys
Definition: uv.h:1085
uint64_t idle
Definition: uv.h:1086
uint64_t user
Definition: uv.h:1083
uint64_t irq
Definition: uv.h:1087
Definition: uv.h:1298
uv_dirent_t * dirents
Definition: uv.h:1299
void * reserved[4]
Definition: uv.h:1301
size_t nentries
Definition: uv.h:1300
uv_dirent_type_t type
Definition: uv.h:1152
const char * name
Definition: uv.h:1151
char * value
Definition: uv.h:1231
char * name
Definition: uv.h:1230
UV_HANDLE_FIELDS char * path
Definition: uv.h:1549
UV_HANDLE_FIELDS void * poll_ctx
Definition: uv.h:1560
Definition: uv.h:1306
uv_stat_t statbuf
Definition: uv.h:1314
const char * path
Definition: uv.h:1313
void * ptr
Definition: uv.h:1312
ssize_t result
Definition: uv.h:1311
UV_REQ_FIELDS uv_fs_type fs_type
Definition: uv.h:1308
uv_loop_t * loop
Definition: uv.h:1309
uv_fs_cb cb
Definition: uv.h:1310
UV_REQ_FIELDS uv_loop_t * loop
Definition: uv.h:885
UV_REQ_FIELDS uv_loop_t * loop
Definition: uv.h:908
Definition: uv.h:834
struct sockaddr_in6 netmask6
Definition: uv.h:1106
struct sockaddr_in6 address6
Definition: uv.h:1102
struct sockaddr_in netmask4
Definition: uv.h:1105
union uv_interface_address_s::@399 netmask
union uv_interface_address_s::@398 address
struct sockaddr_in address4
Definition: uv.h:1101
char phys_addr[6]
Definition: uv.h:1098
Definition: win.h:284
Definition: unix.h:218
Definition: uv.h:1780
unsigned int stop_flag
Definition: uv.h:1793
void * internal_fields
Definition: uv.h:1791
union uv_loop_s::@400 active_reqs
void * data
Definition: uv.h:1782
void * handle_queue[2]
Definition: uv.h:1785
unsigned int count
Definition: uv.h:1788
unsigned int active_handles
Definition: uv.h:1784
void * unused
Definition: uv.h:1787
char * username
Definition: uv.h:1111
char * homedir
Definition: uv.h:1115
long uid
Definition: uv.h:1112
long gid
Definition: uv.h:1113
char * shell
Definition: uv.h:1114
Definition: uv.h:767
UV_HANDLE_FIELDS UV_STREAM_FIELDS int ipc
Definition: uv.h:770
Definition: uv.h:793
UV_HANDLE_FIELDS uv_poll_cb poll_cb
Definition: uv.h:795
uv_uid_t uid
Definition: uv.h:992
const char * file
Definition: uv.h:953
char ** env
Definition: uv.h:965
uv_stdio_container_t * stdio
Definition: uv.h:986
unsigned int flags
Definition: uv.h:975
char ** args
Definition: uv.h:960
uv_exit_cb exit_cb
Definition: uv.h:952
uv_gid_t gid
Definition: uv.h:993
const char * cwd
Definition: uv.h:970
int pid
Definition: uv.h:1051
UV_HANDLE_FIELDS uv_exit_cb exit_cb
Definition: uv.h:1050
void * buf
Definition: uv.h:1650
struct uv__work work_req
Definition: uv.h:1653
size_t buflen
Definition: uv.h:1651
UV_REQ_FIELDS uv_loop_t * loop
Definition: uv.h:1647
int status
Definition: uv.h:1649
uv_random_cb cb
Definition: uv.h:1652
Definition: uv.h:407
uint64_t ru_msgrcv
Definition: uv.h:1186
uv_timeval_t ru_utime
Definition: uv.h:1174
uint64_t ru_nsignals
Definition: uv.h:1187
uint64_t ru_ixrss
Definition: uv.h:1177
uint64_t ru_idrss
Definition: uv.h:1178
uv_timeval_t ru_stime
Definition: uv.h:1175
uint64_t ru_isrss
Definition: uv.h:1179
uint64_t ru_minflt
Definition: uv.h:1180
uint64_t ru_majflt
Definition: uv.h:1181
uint64_t ru_nivcsw
Definition: uv.h:1189
uint64_t ru_oublock
Definition: uv.h:1184
uint64_t ru_nswap
Definition: uv.h:1182
uint64_t ru_maxrss
Definition: uv.h:1176
uint64_t ru_inblock
Definition: uv.h:1183
uint64_t ru_msgsnd
Definition: uv.h:1185
uint64_t ru_nvcsw
Definition: uv.h:1188
UV_REQ_FIELDS uv_stream_t * handle
Definition: uv.h:422
uv_shutdown_cb cb
Definition: uv.h:423
int signum
Definition: uv.h:1577
UV_HANDLE_FIELDS uv_signal_cb signal_cb
Definition: uv.h:1576
Definition: uv.h:349
uint64_t st_nlink
Definition: uv.h:352
uint64_t st_ino
Definition: uv.h:356
uint64_t st_flags
Definition: uv.h:360
uint64_t st_mode
Definition: uv.h:351
uv_timespec_t st_birthtim
Definition: uv.h:365
uint64_t st_size
Definition: uv.h:357
uv_timespec_t st_ctim
Definition: uv.h:364
uint64_t st_blocks
Definition: uv.h:359
uv_timespec_t st_mtim
Definition: uv.h:363
uv_timespec_t st_atim
Definition: uv.h:362
uint64_t st_gid
Definition: uv.h:354
uint64_t st_gen
Definition: uv.h:361
uint64_t st_dev
Definition: uv.h:350
uint64_t st_uid
Definition: uv.h:353
uint64_t st_rdev
Definition: uv.h:355
uint64_t st_blksize
Definition: uv.h:358
uint64_t f_files
Definition: uv.h:1134
uint64_t f_type
Definition: uv.h:1129
uint64_t f_bsize
Definition: uv.h:1130
uint64_t f_bfree
Definition: uv.h:1132
uint64_t f_ffree
Definition: uv.h:1135
uint64_t f_bavail
Definition: uv.h:1133
uint64_t f_spare[4]
Definition: uv.h:1136
uint64_t f_blocks
Definition: uv.h:1131
uv_stream_t * stream
Definition: uv.h:946
uv_stdio_flags flags
Definition: uv.h:943
union uv_stdio_container_s::@397 data
Definition: uv.h:547
unsigned int flags
Definition: uv.h:1753
size_t stack_size
Definition: uv.h:1754
Definition: uv.h:860
long tv_sec
Definition: uv.h:344
long tv_nsec
Definition: uv.h:345
int64_t tv_sec
Definition: uv.h:1169
int32_t tv_usec
Definition: uv.h:1170
long tv_usec
Definition: uv.h:1165
long tv_sec
Definition: uv.h:1164
Definition: uv.h:714
Definition: uv.h:638
size_t send_queue_count
Definition: uv.h:649
UV_HANDLE_FIELDS size_t send_queue_size
Definition: uv.h:645
UV_REQ_FIELDS uv_udp_t * handle
Definition: uv.h:656
uv_udp_send_cb cb
Definition: uv.h:657
char machine[256]
Definition: uv.h:1122
char release[256]
Definition: uv.h:1120
char sysname[256]
Definition: uv.h:1119
Definition: uv.h:1066
uv_after_work_cb after_work_cb
Definition: uv.h:1070
uv_work_cb work_cb
Definition: uv.h:1069
UV_REQ_FIELDS uv_loop_t * loop
Definition: uv.h:1068
Definition: uv.h:525
uv_stream_t * send_handle
Definition: uv.h:528
uv_stream_t * handle
Definition: uv.h:529
UV_REQ_FIELDS uv_write_cb cb
Definition: uv.h:527
uv_loop_t * loop
Definition: main.c:7
uv_async_t async
Definition: main.c:8
int width
Definition: main.c:10
int height
Definition: main.c:10
uv_timer_t timeout
Definition: main.c:9
ut64 buflen
Definition: core.c:76
static enum exit_status_type exit_status
Exit status to use. This can be changed with set_exit_status().
Definition: main.c:17
static char bufs[4][128]
Buffers for uint64_to_str() and uint64_to_nicestr()
Definition: util.c:18
static uv_mutex_t mutex
Definition: threadpool.c:34
Definition: win.h:249
#define UV_WORK_PRIVATE_FIELDS
Definition: unix.h:376
#define UV_FS_PRIVATE_FIELDS
Definition: unix.h:361
uid_t uv_uid_t
Definition: unix.h:169
UV_PLATFORM_SEM_T uv_sem_t
Definition: unix.h:139
#define UV_POLL_PRIVATE_FIELDS
Definition: unix.h:312
#define UV_SHUTDOWN_PRIVATE_FIELDS
Definition: unix.h:273
#define UV_TIMER_PRIVATE_FIELDS
Definition: unix.h:332
#define UV_UDP_SEND_PRIVATE_FIELDS
Definition: unix.h:275
#define UV_DIR_PRIVATE_FIELDS
Definition: unix.h:173
int uv_file
Definition: unix.h:128
pid_t uv_pid_t
Definition: unix.h:131
#define UV_WRITE_PRIVATE_FIELDS
Definition: unix.h:262
#define UV_PROCESS_PRIVATE_FIELDS
Definition: unix.h:357
#define UV_IDLE_PRIVATE_FIELDS
Definition: unix.h:323
#define UV_PREPARE_PRIVATE_FIELDS
Definition: unix.h:315
#define UV_SIGNAL_PRIVATE_FIELDS
Definition: unix.h:383
#define UV_GETNAMEINFO_PRIVATE_FIELDS
Definition: unix.h:348
#define UV_CHECK_PRIVATE_FIELDS
Definition: unix.h:319
pthread_mutex_t uv_mutex_t
Definition: unix.h:137
pthread_t uv_thread_t
Definition: unix.h:136
#define UV_UDP_PRIVATE_FIELDS
Definition: unix.h:302
#define UV_TTY_PRIVATE_FIELDS
Definition: unix.h:379
#define UV_FS_EVENT_PRIVATE_FIELDS
Definition: unix.h:395
pthread_once_t uv_once_t
Definition: unix.h:135
#define UV_GETADDRINFO_PRIVATE_FIELDS
Definition: unix.h:339
#define UV_TCP_PRIVATE_FIELDS
Definition: unix.h:300
int uv_os_fd_t
Definition: unix.h:130
#define UV_CONNECT_PRIVATE_FIELDS
Definition: unix.h:270
#define UV_ASYNC_PRIVATE_FIELDS
Definition: unix.h:327
#define UV_LOOP_PRIVATE_FIELDS
Definition: unix.h:223
#define UV_PIPE_PRIVATE_FIELDS
Definition: unix.h:309
#define UV_REQ_TYPE_PRIVATE
Definition: unix.h:256
gid_t uv_gid_t
Definition: unix.h:168
int uv_os_sock_t
Definition: unix.h:129
#define UV_PRIVATE_REQ_TYPES
Definition: unix.h:260
UV_EXTERN void uv_print_active_handles(uv_loop_t *loop, FILE *stream)
Definition: uv-common.c:542
UV_EXTERN int uv_set_process_title(const char *title)
Definition: aix.c:925
void(* uv_random_cb)(uv_random_t *req, int status, void *buf, size_t buflen)
Definition: uv.h:338
uv_thread_create_flags
Definition: uv.h:1747
@ UV_THREAD_HAS_STACK_SIZE
Definition: uv.h:1749
@ UV_THREAD_NO_FLAGS
Definition: uv.h:1748
UV_EXTERN void uv_key_delete(uv_key_t *key)
Definition: thread.c:828
UV_EXTERN void uv_stop(uv_loop_t *)
Definition: uv-common.c:562
UV_EXTERN int uv_exepath(char *buffer, size_t *size)
Definition: aix-common.c:60
UV_EXTERN int uv_poll_init(uv_loop_t *loop, uv_poll_t *handle, int fd)
Definition: poll.c:68
UV_EXTERN int uv_fs_fstat(uv_loop_t *loop, uv_fs_t *req, uv_file file, uv_fs_cb cb)
Definition: fs.c:1751
UV_EXTERN void uv_mutex_lock(uv_mutex_t *handle)
Definition: thread.c:330
UV_EXTERN int uv_gettimeofday(uv_timeval64_t *tv)
Definition: core.c:1512
UV_EXTERN int uv_fs_open(uv_loop_t *loop, uv_fs_t *req, const char *path, int flags, int mode, uv_fs_cb cb)
Definition: fs.c:1858
UV_EXTERN int uv_cpu_info(uv_cpu_info_t **cpu_infos, int *count)
Definition: aix.c:1044
UV_EXTERN int uv_tcp_init_ex(uv_loop_t *, uv_tcp_t *handle, unsigned int flags)
Definition: tcp.c:114
uv_stdio_flags
Definition: uv.h:921
@ UV_INHERIT_FD
Definition: uv.h:924
@ UV_CREATE_PIPE
Definition: uv.h:923
@ UV_WRITABLE_PIPE
Definition: uv.h:933
@ UV_IGNORE
Definition: uv.h:922
@ UV_OVERLAPPED_PIPE
Definition: uv.h:939
@ UV_INHERIT_STREAM
Definition: uv.h:925
@ UV_READABLE_PIPE
Definition: uv.h:932
UV_EXTERN void uv_free_interface_addresses(uv_interface_address_t *addresses, int count)
Definition: aix.c:1268
UV_EXTERN int uv_ip4_addr(const char *ip, int port, struct sockaddr_in *addr)
Definition: uv-common.c:221
#define UV_HANDLE_FIELDS
Definition: uv.h:428
UV_EXTERN int uv_udp_bind(uv_udp_t *handle, const struct sockaddr *addr, unsigned int flags)
Definition: uv-common.c:326
UV_EXTERN int uv_is_active(const uv_handle_t *handle)
Definition: core.c:430
UV_EXTERN uv_pid_t uv_process_get_pid(const uv_process_t *)
UV_EXTERN int uv_udp_recv_start(uv_udp_t *handle, uv_alloc_cb alloc_cb, uv_udp_recv_cb recv_cb)
Definition: uv-common.c:468
UV_EXTERN int uv_getrusage(uv_rusage_t *rusage)
Definition: core.c:970
uv_run_mode
Definition: uv.h:254
@ UV_RUN_NOWAIT
Definition: uv.h:257
@ UV_RUN_ONCE
Definition: uv.h:256
@ UV_RUN_DEFAULT
Definition: uv.h:255
void(* uv_write_cb)(uv_write_t *req, int status)
Definition: uv.h:315
uv_process_flags
Definition: uv.h:999
@ UV_PROCESS_WINDOWS_HIDE_CONSOLE
Definition: uv.h:1036
@ UV_PROCESS_WINDOWS_VERBATIM_ARGUMENTS
Definition: uv.h:1017
@ UV_PROCESS_WINDOWS_HIDE
Definition: uv.h:1030
@ UV_PROCESS_SETUID
Definition: uv.h:1005
@ UV_PROCESS_SETGID
Definition: uv.h:1011
@ UV_PROCESS_DETACHED
Definition: uv.h:1025
@ UV_PROCESS_WINDOWS_HIDE_GUI
Definition: uv.h:1042
void(* uv_connection_cb)(uv_stream_t *server, int status)
Definition: uv.h:318
UV_EXTERN int uv_barrier_init(uv_barrier_t *barrier, unsigned int count)
Definition: thread.c:55
UV_EXTERN void uv_walk(uv_loop_t *loop, uv_walk_cb walk_cb, void *arg)
Definition: uv-common.c:486
UV_EXTERN int uv_translate_sys_error(int sys_errno)
Definition: core.c:1249
UV_EXTERN void uv_print_all_handles(uv_loop_t *loop, FILE *stream)
Definition: uv-common.c:537
UV_EXTERN int uv_check_start(uv_check_t *check, uv_check_cb cb)
UV_EXTERN int uv_interface_addresses(uv_interface_address_t **addresses, int *count)
Definition: aix.c:1100
UV_EXTERN int uv_tcp_keepalive(uv_tcp_t *handle, int enable, unsigned int delay)
Definition: tcp.c:428
UV_EXTERN int uv_rwlock_init(uv_rwlock_t *rwlock)
Definition: thread.c:356
UV_EXTERN void * uv_key_get(uv_key_t *key)
Definition: thread.c:834
UV_EXTERN int uv_prepare_init(uv_loop_t *, uv_prepare_t *prepare)
UV_EXTERN int uv_recv_buffer_size(uv_handle_t *handle, int *value)
Definition: uv-common.c:584
UV_EXTERN int uv_fs_ftruncate(uv_loop_t *loop, uv_fs_t *req, uv_file file, int64_t offset, uv_fs_cb cb)
Definition: fs.c:1765
UV_EXTERN int uv_fs_poll_getpath(uv_fs_poll_t *handle, char *buffer, size_t *size)
Definition: fs-poll.c:138
UV_EXTERN int uv_fs_read(uv_loop_t *loop, uv_fs_t *req, uv_file file, const uv_buf_t bufs[], unsigned int nbufs, int64_t offset, uv_fs_cb cb)
Definition: fs.c:1872
UV_EXTERN int uv_backend_timeout(const uv_loop_t *)
Definition: core.c:333
UV_EXTERN int uv_thread_join(uv_thread_t *tid)
Definition: thread.c:272
UV_EXTERN int uv_timer_start(uv_timer_t *handle, uv_timer_cb cb, uint64_t timeout, uint64_t repeat)
Definition: timer.c:66
UV_EXTERN int uv_timer_init(uv_loop_t *, uv_timer_t *handle)
Definition: timer.c:58
UV_EXTERN void * uv_handle_get_data(const uv_handle_t *handle)
void(* uv_getaddrinfo_cb)(uv_getaddrinfo_t *req, int status, struct addrinfo *res)
Definition: uv.h:331
UV_EXTERN int uv_tcp_open(uv_tcp_t *handle, uv_os_sock_t sock)
Definition: tcp.c:267
UV_EXTERN int uv_process_kill(uv_process_t *, int signum)
Definition: process.c:577
UV_EXTERN void uv_rwlock_wrlock(uv_rwlock_t *rwlock)
Definition: thread.c:393
UV_EXTERN int uv_poll_start(uv_poll_t *handle, int events, uv_poll_cb cb)
Definition: poll.c:118
UV_EXTERN int uv_kill(int pid, int signum)
Definition: process.c:582
UV_EXTERN void * uv_loop_get_data(const uv_loop_t *)
UV_EXTERN int uv_ip6_addr(const char *ip, int port, struct sockaddr_in6 *addr)
Definition: uv-common.c:232
UV_EXTERN int uv_fs_fsync(uv_loop_t *loop, uv_fs_t *req, uv_file file, uv_fs_cb cb)
Definition: fs.c:1758
uv_tty_mode_t
Definition: uv.h:720
@ UV_TTY_MODE_IO
Definition: uv.h:726
@ UV_TTY_MODE_NORMAL
Definition: uv.h:722
@ UV_TTY_MODE_RAW
Definition: uv.h:724
void(* uv_fs_event_cb)(uv_fs_event_t *handle, const char *filename, int events, int status)
Definition: uv.h:369
UV_EXTERN int uv_signal_start_oneshot(uv_signal_t *handle, uv_signal_cb signal_cb, int signum)
Definition: signal.c:345
UV_EXTERN int uv_os_setpriority(uv_pid_t pid, int priority)
Definition: core.c:1424
UV_EXTERN void uv_fs_req_cleanup(uv_fs_t *req)
Definition: fs.c:2070
UV_EXTERN int uv_if_indextoiid(unsigned int ifindex, char *buffer, size_t *size)
Definition: getaddrinfo.c:253
UV_EXTERN void uv_once(uv_once_t *guard, void(*callback)(void))
Definition: thread.c:419
UV_EXTERN int uv_resident_set_memory(size_t *rss)
Definition: aix.c:993
void(* uv_fs_poll_cb)(uv_fs_poll_t *handle, int status, const uv_stat_t *prev, const uv_stat_t *curr)
Definition: uv.h:374
UV_EXTERN int uv_spawn(uv_loop_t *loop, uv_process_t *handle, const uv_process_options_t *options)
Definition: process.c:408
UV_EXTERN int uv_idle_stop(uv_idle_t *idle)
UV_EXTERN int uv_udp_set_ttl(uv_udp_t *handle, int ttl)
Definition: udp.c:1141
uv_handle_type
Definition: uv.h:189
@ UV_FILE
Definition: uv.h:194
@ UV_HANDLE_TYPE_MAX
Definition: uv.h:195
@ UV_UNKNOWN_HANDLE
Definition: uv.h:190
UV_EXTERN uint64_t uv_get_free_memory(void)
Definition: aix.c:367
UV_EXTERN int uv_if_indextoname(unsigned int ifindex, char *buffer, size_t *size)
Definition: getaddrinfo.c:229
void(* uv_free_func)(void *ptr)
Definition: uv.h:267
UV_EXTERN void uv_sleep(unsigned int msec)
Definition: core.c:1526
UV_EXTERN int uv_tcp_connect(uv_connect_t *req, uv_tcp_t *handle, const struct sockaddr *addr, uv_connect_cb cb)
Definition: uv-common.c:345
uv_udp_flags
Definition: uv.h:595
@ UV_UDP_PARTIAL
Definition: uv.h:602
@ UV_UDP_MMSG_FREE
Definition: uv.h:622
@ UV_UDP_MMSG_CHUNK
Definition: uv.h:616
@ UV_UDP_IPV6ONLY
Definition: uv.h:597
@ UV_UDP_RECVMMSG
Definition: uv.h:627
@ UV_UDP_REUSEADDR
Definition: uv.h:611
UV_EXTERN void uv_sem_destroy(uv_sem_t *sem)
Definition: thread.c:662
UV_EXTERN int uv_backend_fd(const uv_loop_t *)
Definition: core.c:328
UV_EXTERN int uv_udp_set_multicast_interface(uv_udp_t *handle, const char *interface_addr)
Definition: udp.c:1227
UV_EXTERN int uv_os_get_passwd(uv_passwd_t *pwd)
Definition: core.c:1244
UV_EXTERN int uv_fs_stat(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:2000
UV_EXTERN int uv_udp_init_ex(uv_loop_t *, uv_udp_t *handle, unsigned int flags)
UV_EXTERN int uv_random(uv_loop_t *loop, uv_random_t *req, void *buf, size_t buflen, unsigned flags, uv_random_cb cb)
Definition: random.c:94
UV_EXTERN uv_loop_t * uv_loop_new(void)
Definition: uv-common.c:775
UV_EXTERN int uv_write(uv_write_t *req, uv_stream_t *handle, const uv_buf_t bufs[], unsigned int nbufs, uv_write_cb cb)
Definition: stream.c:1492
UV_EXTERN int uv_signal_start(uv_signal_t *handle, uv_signal_cb signal_cb, int signum)
Definition: signal.c:340
UV_EXTERN void uv_ref(uv_handle_t *)
Definition: uv-common.c:547
uv_tcp_flags
Definition: uv.h:562
@ UV_TCP_IPV6ONLY
Definition: uv.h:564
UV_EXTERN uv_buf_t uv_buf_init(char *base, unsigned int len)
Definition: uv-common.c:157
UV_EXTERN int uv_check_init(uv_loop_t *, uv_check_t *check)
UV_EXTERN int uv_read_stop(uv_stream_t *)
Definition: stream.c:1590
UV_EXTERN int uv_os_environ(uv_env_item_t **envitems, int *count)
Definition: core.c:1255
UV_EXTERN size_t uv_handle_size(uv_handle_type type)
Definition: uv-common.c:133
UV_EXTERN size_t uv_req_size(uv_req_type type)
Definition: uv-common.c:141
UV_EXTERN int uv_mutex_init_recursive(uv_mutex_t *handle)
Definition: thread.c:305
UV_EXTERN uint64_t uv_hrtime(void)
Definition: core.c:103
UV_EXTERN void uv_loop_set_data(uv_loop_t *, void *data)
UV_EXTERN int uv_fs_access(uv_loop_t *loop, uv_fs_t *req, const char *path, int mode, uv_fs_cb cb)
Definition: fs.c:1659
UV_EXTERN int uv_stream_set_blocking(uv_stream_t *handle, int blocking)
Definition: stream.c:1688
UV_EXTERN int uv_dlopen(const char *filename, uv_lib_t *lib)
Definition: dl.c:33
UV_EXTERN int uv_os_getpriority(uv_pid_t pid, int *priority)
Definition: core.c:1407
void(* uv_prepare_cb)(uv_prepare_t *handle)
Definition: uv.h:323
UV_EXTERN int uv_read_start(uv_stream_t *, uv_alloc_cb alloc_cb, uv_read_cb read_cb)
Definition: stream.c:1555
void(* uv_after_work_cb)(uv_work_t *req, int status)
Definition: uv.h:330
UV_EXTERN int uv_tcp_close_reset(uv_tcp_t *handle, uv_close_cb close_cb)
Definition: tcp.c:311
UV_EXTERN void uv_sem_post(uv_sem_t *sem)
Definition: thread.c:670
UV_EXTERN int uv_udp_send(uv_udp_send_t *req, uv_udp_t *handle, const uv_buf_t bufs[], unsigned int nbufs, const struct sockaddr *addr, uv_udp_send_cb send_cb)
Definition: uv-common.c:438
UV_EXTERN int uv_ip4_name(const struct sockaddr_in *src, char *dst, size_t size)
Definition: uv-common.c:267
UV_EXTERN int uv_is_writable(const uv_stream_t *handle)
Definition: stream.c:1611
UV_EXTERN int uv_listen(uv_stream_t *stream, int backlog, uv_connection_cb cb)
Definition: stream.c:656
UV_EXTERN int uv_cwd(char *buffer, size_t *size)
Definition: core.c:708
UV_EXTERN int uv_udp_set_source_membership(uv_udp_t *handle, const char *multicast_addr, const char *interface_addr, const char *source_addr, uv_membership membership)
Definition: udp.c:1041
UV_EXTERN char ** uv_setup_args(int argc, char **argv)
Definition: aix.c:872
UV_EXTERN int uv_udp_recv_stop(uv_udp_t *handle)
Definition: uv-common.c:478
UV_EXTERN void uv_os_free_passwd(uv_passwd_t *pwd)
Definition: core.c:1228
UV_EXTERN int uv_fs_event_start(uv_fs_event_t *handle, uv_fs_event_cb cb, const char *path, unsigned int flags)
Definition: aix.c:767
UV_EXTERN void uv_freeaddrinfo(struct addrinfo *ai)
Definition: getaddrinfo.c:223
void *(* uv_malloc_func)(size_t size)
Definition: uv.h:264
uv_fs_type
Definition: uv.h:1257
@ UV_FS_STATFS
Definition: uv.h:1293
@ UV_FS_CUSTOM
Definition: uv.h:1259
@ UV_FS_SYMLINK
Definition: uv.h:1283
@ UV_FS_FDATASYNC
Definition: uv.h:1275
@ UV_FS_FCHMOD
Definition: uv.h:1273
@ UV_FS_SCANDIR
Definition: uv.h:1281
@ UV_FS_FTRUNCATE
Definition: uv.h:1268
@ UV_FS_READDIR
Definition: uv.h:1291
@ UV_FS_SENDFILE
Definition: uv.h:1264
@ UV_FS_OPENDIR
Definition: uv.h:1290
@ UV_FS_RENAME
Definition: uv.h:1280
@ UV_FS_READLINK
Definition: uv.h:1284
@ UV_FS_LUTIME
Definition: uv.h:1295
@ UV_FS_STAT
Definition: uv.h:1265
@ UV_FS_CHOWN
Definition: uv.h:1285
@ UV_FS_FUTIME
Definition: uv.h:1270
@ UV_FS_CHMOD
Definition: uv.h:1272
@ UV_FS_REALPATH
Definition: uv.h:1287
@ UV_FS_UNKNOWN
Definition: uv.h:1258
@ UV_FS_UNLINK
Definition: uv.h:1276
@ UV_FS_MKSTEMP
Definition: uv.h:1294
@ UV_FS_RMDIR
Definition: uv.h:1277
@ UV_FS_CLOSEDIR
Definition: uv.h:1292
@ UV_FS_MKDTEMP
Definition: uv.h:1279
@ UV_FS_CLOSE
Definition: uv.h:1261
@ UV_FS_FSYNC
Definition: uv.h:1274
@ UV_FS_FCHOWN
Definition: uv.h:1286
@ UV_FS_READ
Definition: uv.h:1262
@ UV_FS_COPYFILE
Definition: uv.h:1288
@ UV_FS_MKDIR
Definition: uv.h:1278
@ UV_FS_UTIME
Definition: uv.h:1269
@ UV_FS_ACCESS
Definition: uv.h:1271
@ UV_FS_FSTAT
Definition: uv.h:1267
@ UV_FS_LCHOWN
Definition: uv.h:1289
@ UV_FS_LSTAT
Definition: uv.h:1266
@ UV_FS_OPEN
Definition: uv.h:1260
@ UV_FS_WRITE
Definition: uv.h:1263
@ UV_FS_LINK
Definition: uv.h:1282
UV_EXTERN int uv_fs_lstat(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:1804
UV_EXTERN int uv_fs_fchown(uv_loop_t *loop, uv_fs_t *req, uv_file file, uv_uid_t uid, uv_gid_t gid, uv_fs_cb cb)
Definition: fs.c:1716
UV_EXTERN int uv_loop_init(uv_loop_t *loop)
Definition: loop.c:30
UV_EXTERN int uv_prepare_start(uv_prepare_t *prepare, uv_prepare_cb cb)
UV_EXTERN void uv_mutex_destroy(uv_mutex_t *handle)
Definition: thread.c:324
UV_EXTERN void uv_tty_set_vterm_state(uv_tty_vtermstate_t state)
Definition: tty.c:397
UV_EXTERN int uv_pipe_pending_count(uv_pipe_t *handle)
Definition: pipe.c:298
UV_EXTERN int uv_pipe_getsockname(const uv_pipe_t *handle, char *buffer, size_t *size)
Definition: pipe.c:284
void(* uv_thread_cb)(void *arg)
Definition: uv.h:1743
UV_EXTERN int uv_rwlock_tryrdlock(uv_rwlock_t *rwlock)
Definition: thread.c:373
UV_EXTERN int uv_fs_sendfile(uv_loop_t *loop, uv_fs_t *req, uv_file out_fd, uv_file in_fd, int64_t in_offset, size_t length, uv_fs_cb cb)
Definition: fs.c:1984
UV_EXTERN void uv_free_cpu_info(uv_cpu_info_t *cpu_infos, int count)
Definition: uv-common.c:846
UV_EXTERN int uv_getnameinfo(uv_loop_t *loop, uv_getnameinfo_t *req, uv_getnameinfo_cb getnameinfo_cb, const struct sockaddr *addr, int flags)
Definition: getnameinfo.c:81
UV_EXTERN int uv_try_write(uv_stream_t *handle, const uv_buf_t bufs[], unsigned int nbufs)
Definition: stream.c:1507
UV_EXTERN int uv_pipe_init(uv_loop_t *, uv_pipe_t *handle, int ipc)
Definition: pipe.c:33
uv_membership
Definition: uv.h:382
@ UV_JOIN_GROUP
Definition: uv.h:384
@ UV_LEAVE_GROUP
Definition: uv.h:383
UV_EXTERN int uv_tcp_nodelay(uv_tcp_t *handle, int enable)
Definition: tcp.c:410
UV_PRIVATE_REQ_TYPES UV_EXTERN int uv_shutdown(uv_shutdown_t *req, uv_stream_t *handle, uv_shutdown_cb cb)
Definition: stream.c:1259
#define UV_ERRNO_MAP(XX)
Definition: uv.h:70
UV_EXTERN int uv_sem_trywait(uv_sem_t *sem)
Definition: thread.c:686
UV_EXTERN int uv_run(uv_loop_t *, uv_run_mode mode)
Definition: core.c:365
UV_EXTERN int uv_fs_statfs(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:2123
UV_EXTERN char * uv_strerror_r(int err, char *buf, size_t buflen)
Definition: uv-common.c:201
UV_EXTERN size_t uv_stream_get_write_queue_size(const uv_stream_t *stream)
UV_EXTERN int uv_fs_poll_init(uv_loop_t *loop, uv_fs_poll_t *handle)
Definition: fs-poll.c:59
UV_EXTERN void uv_mutex_unlock(uv_mutex_t *handle)
Definition: thread.c:350
UV_EXTERN void uv_rwlock_wrunlock(uv_rwlock_t *rwlock)
Definition: thread.c:413
UV_EXTERN int uv_replace_allocator(uv_malloc_func malloc_func, uv_realloc_func realloc_func, uv_calloc_func calloc_func, uv_free_func free_func)
Definition: uv-common.c:114
UV_EXTERN void uv_handle_set_data(uv_handle_t *handle, void *data)
UV_EXTERN size_t uv_udp_get_send_queue_count(const uv_udp_t *handle)
UV_EXTERN size_t uv_udp_get_send_queue_size(const uv_udp_t *handle)
void *(* uv_calloc_func)(size_t count, size_t size)
Definition: uv.h:266
void(* uv_poll_cb)(uv_poll_t *handle, int status, int events)
Definition: uv.h:320
UV_EXTERN int uv_signal_stop(uv_signal_t *handle)
Definition: signal.c:513
UV_EXTERN const char * uv_req_type_name(uv_req_type type)
UV_EXTERN int uv_os_homedir(char *buffer, size_t *size)
Definition: core.c:1059
UV_EXTERN const char * uv_fs_get_path(const uv_fs_t *)
UV_EXTERN int uv_fs_write(uv_loop_t *loop, uv_fs_t *req, uv_file file, const uv_buf_t bufs[], unsigned int nbufs, int64_t offset, uv_fs_cb cb)
Definition: fs.c:2041
#define UV_REQ_FIELDS
Definition: uv.h:397
UV_EXTERN void uv_key_set(uv_key_t *key, void *value)
Definition: thread.c:839
UV_EXTERN uv_os_fd_t uv_get_osfhandle(int fd)
Definition: core.c:1389
UV_EXTERN int uv_dlsym(uv_lib_t *lib, const char *name, void **ptr)
Definition: dl.c:53
uv_tty_vtermstate_t
Definition: uv.h:729
@ UV_TTY_UNSUPPORTED
Definition: uv.h:738
@ UV_TTY_SUPPORTED
Definition: uv.h:734
UV_EXTERN int uv_barrier_wait(uv_barrier_t *barrier)
Definition: thread.c:89
UV_EXTERN int uv_tty_set_mode(uv_tty_t *, uv_tty_mode_t mode)
Definition: tty.c:250
UV_EXTERN int uv_write2(uv_write_t *req, uv_stream_t *handle, const uv_buf_t bufs[], unsigned int nbufs, uv_stream_t *send_handle, uv_write_cb cb)
Definition: stream.c:1393
void(* uv_getnameinfo_cb)(uv_getnameinfo_t *req, int status, const char *hostname, const char *service)
Definition: uv.h:334
UV_EXTERN int uv_fs_event_stop(uv_fs_event_t *handle)
Definition: aix.c:838
UV_EXTERN int uv_fs_chmod(uv_loop_t *loop, uv_fs_t *req, const char *path, int mode, uv_fs_cb cb)
Definition: fs.c:1671
uv_fs_event_flags
Definition: uv.h:1596
@ UV_FS_EVENT_RECURSIVE
Definition: uv.h:1620
@ UV_FS_EVENT_STAT
Definition: uv.h:1613
@ UV_FS_EVENT_WATCH_ENTRY
Definition: uv.h:1604
UV_EXTERN int uv_fs_fdatasync(uv_loop_t *loop, uv_fs_t *req, uv_file file, uv_fs_cb cb)
Definition: fs.c:1744
UV_EXTERN int uv_udp_set_multicast_ttl(uv_udp_t *handle, int ttl)
Definition: udp.c:1178
UV_EXTERN void uv_barrier_destroy(uv_barrier_t *barrier)
Definition: thread.c:118
UV_EXTERN int uv_os_getenv(const char *name, char *buffer, size_t *size)
Definition: core.c:1311
UV_EXTERN int uv_timer_stop(uv_timer_t *handle)
Definition: timer.c:97
UV_EXTERN const char * uv_err_name(int err)
Definition: uv-common.c:189
UV_EXTERN uint64_t uv_get_constrained_memory(void)
Definition: aix.c:387
UV_EXTERN void uv_req_set_data(uv_req_t *req, void *data)
UV_EXTERN int uv_os_gethostname(char *buffer, size_t *size)
Definition: core.c:1359
UV_EXTERN int uv_fs_readlink(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:1946
UV_EXTERN int uv_udp_open(uv_udp_t *handle, uv_os_sock_t sock)
Definition: udp.c:991
UV_EXTERN uv_fs_type uv_fs_get_type(const uv_fs_t *)
uv_fs_event
Definition: uv.h:1540
@ UV_CHANGE
Definition: uv.h:1542
@ UV_RENAME
Definition: uv.h:1541
UV_EXTERN int uv_thread_equal(const uv_thread_t *t1, const uv_thread_t *t2)
Definition: thread.c:277
UV_EXTERN int uv_fs_futime(uv_loop_t *loop, uv_fs_t *req, uv_file file, double atime, double mtime, uv_fs_cb cb)
Definition: fs.c:1777
UV_EXTERN uv_handle_type uv_pipe_pending_type(uv_pipe_t *handle)
Definition: pipe.c:315
UV_EXTERN uint64_t uv_now(const uv_loop_t *)
Definition: uv-common.c:567
UV_EXTERN uv_req_type uv_req_get_type(const uv_req_t *req)
UV_EXTERN void uv_pipe_pending_instances(uv_pipe_t *handle, int count)
Definition: pipe.c:294
UV_EXTERN int uv_pipe_bind(uv_pipe_t *handle, const char *name)
Definition: pipe.c:43
UV_EXTERN int uv_fs_utime(uv_loop_t *loop, uv_fs_t *req, const char *path, double atime, double mtime, uv_fs_cb cb)
Definition: fs.c:2027
struct uv_process_options_s uv_process_options_t
UV_EXTERN int uv_fs_mkstemp(uv_loop_t *loop, uv_fs_t *req, const char *tpl, uv_fs_cb cb)
Definition: fs.c:1846
UV_EXTERN int uv_os_uname(uv_utsname_t *buffer)
Definition: core.c:1435
UV_EXTERN int uv_fs_get_system_error(const uv_fs_t *)
Definition: fs.c:2132
UV_EXTERN int uv_loop_fork(uv_loop_t *loop)
Definition: loop.c:132
UV_EXTERN int uv_tcp_bind(uv_tcp_t *handle, const struct sockaddr *addr, unsigned int flags)
Definition: uv-common.c:277
UV_EXTERN int uv_udp_try_send(uv_udp_t *handle, const uv_buf_t bufs[], unsigned int nbufs, const struct sockaddr *addr)
Definition: uv-common.c:454
UV_EXTERN int uv_inet_ntop(int af, const void *src, char *dst, size_t size)
Definition: inet.c:40
#define XX(code, _)
Definition: uv.h:1769
UV_EXTERN void uv_unref(uv_handle_t *)
Definition: uv-common.c:552
UV_EXTERN int uv_udp_set_membership(uv_udp_t *handle, const char *multicast_addr, const char *interface_addr, uv_membership membership)
Definition: udp.c:1017
UV_EXTERN int uv_tty_reset_mode(void)
Definition: tty.c:378
void(* uv_check_cb)(uv_check_t *handle)
Definition: uv.h:324
UV_EXTERN int uv_queue_work(uv_loop_t *loop, uv_work_t *req, uv_work_cb work_cb, uv_after_work_cb after_work_cb)
Definition: threadpool.c:338
void(* uv_udp_recv_cb)(uv_udp_t *handle, ssize_t nread, const uv_buf_t *buf, const struct sockaddr *addr, unsigned flags)
Definition: uv.h:631
UV_EXTERN void uv_rwlock_rdlock(uv_rwlock_t *rwlock)
Definition: thread.c:367
UV_EXTERN int uv_fs_event_init(uv_loop_t *loop, uv_fs_event_t *handle)
Definition: aix.c:757
UV_EXTERN int uv_fs_scandir(uv_loop_t *loop, uv_fs_t *req, const char *path, int flags, uv_fs_cb cb)
Definition: fs.c:1900
void(* uv_timer_cb)(uv_timer_t *handle)
Definition: uv.h:321
UV_EXTERN int uv_is_closing(const uv_handle_t *handle)
Definition: core.c:323
UV_EXTERN int uv_check_stop(uv_check_t *check)
UV_EXTERN int uv_udp_init(uv_loop_t *, uv_udp_t *handle)
Definition: uv-common.c:321
void(* uv_read_cb)(uv_stream_t *stream, ssize_t nread, const uv_buf_t *buf)
Definition: uv.h:312
void(* uv_udp_send_cb)(uv_udp_send_t *req, int status)
Definition: uv.h:630
UV_EXTERN int uv_fs_fchmod(uv_loop_t *loop, uv_fs_t *req, uv_file file, int mode, uv_fs_cb cb)
Definition: fs.c:1704
void(* uv_alloc_cb)(uv_handle_t *handle, size_t suggested_size, uv_buf_t *buf)
Definition: uv.h:309
UV_EXTERN int uv_fs_chown(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_uid_t uid, uv_gid_t gid, uv_fs_cb cb)
Definition: fs.c:1683
UV_EXTERN int uv_fs_lchown(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_uid_t uid, uv_gid_t gid, uv_fs_cb cb)
Definition: fs.c:1730
UV_EXTERN int uv_thread_create_ex(uv_thread_t *tid, const uv_thread_options_t *params, uv_thread_cb entry, void *arg)
Definition: thread.c:216
UV_EXTERN const char * uv_version_string(void)
Definition: version.c:43
UV_EXTERN void uv_close(uv_handle_t *handle, uv_close_cb close_cb)
Definition: core.c:108
UV_EXTERN const char * uv_handle_type_name(uv_handle_type type)
UV_EXTERN uv_handle_type uv_guess_handle(uv_file file)
Definition: tty.c:315
UV_EXTERN int uv_fs_mkdtemp(uv_loop_t *loop, uv_fs_t *req, const char *tpl, uv_fs_cb cb)
Definition: fs.c:1834
UV_EXTERN const char * uv_strerror(int err)
Definition: uv-common.c:212
UV_EXTERN int uv_thread_create(uv_thread_t *tid, uv_thread_cb entry, void *arg)
Definition: thread.c:210
UV_EXTERN uint64_t uv_get_total_memory(void)
Definition: aix.c:377
UV_EXTERN int uv_udp_connect(uv_udp_t *handle, const struct sockaddr *addr)
Definition: uv-common.c:365
UV_EXTERN ssize_t uv_fs_get_result(const uv_fs_t *)
void *(* uv_realloc_func)(void *ptr, size_t size)
Definition: uv.h:265
UV_EXTERN int uv_key_create(uv_key_t *key)
Definition: thread.c:823
UV_EXTERN int uv_udp_using_recvmmsg(const uv_udp_t *handle)
Definition: udp.c:980
UV_EXTERN int uv_open_osfhandle(uv_os_fd_t os_fd)
Definition: core.c:1393
#define UV_EXTERN
Definition: uv.h:49
UV_EXTERN int uv_accept(uv_stream_t *server, uv_stream_t *client)
Definition: stream.c:591
UV_EXTERN int uv_fs_scandir_next(uv_fs_t *req, uv_dirent_t *ent)
Definition: uv-common.c:651
#define UV_REQ_TYPE_MAP(XX)
Definition: uv.h:170
void(* uv_signal_cb)(uv_signal_t *handle, int signum)
Definition: uv.h:379
UV_EXTERN int uv_send_buffer_size(uv_handle_t *handle, int *value)
Definition: uv-common.c:588
UV_EXTERN int uv_fs_unlink(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:2020
UV_EXTERN int uv_pipe_getpeername(const uv_pipe_t *handle, char *buffer, size_t *size)
Definition: pipe.c:289
uv_dirent_type_t
Definition: uv.h:1139
@ UV_DIRENT_FIFO
Definition: uv.h:1144
@ UV_DIRENT_CHAR
Definition: uv.h:1146
@ UV_DIRENT_DIR
Definition: uv.h:1142
@ UV_DIRENT_UNKNOWN
Definition: uv.h:1140
@ UV_DIRENT_BLOCK
Definition: uv.h:1147
@ UV_DIRENT_LINK
Definition: uv.h:1143
@ UV_DIRENT_FILE
Definition: uv.h:1141
@ UV_DIRENT_SOCKET
Definition: uv.h:1145
UV_EXTERN int uv_tty_get_winsize(uv_tty_t *, int *width, int *height)
Definition: tty.c:297
UV_EXTERN int uv_udp_set_multicast_loop(uv_udp_t *handle, int on)
Definition: udp.c:1203
UV_EXTERN int uv_has_ref(const uv_handle_t *)
Definition: uv-common.c:557
UV_EXTERN uint64_t uv_timer_get_repeat(const uv_timer_t *handle)
Definition: timer.c:128
UV_EXTERN int uv_cond_timedwait(uv_cond_t *cond, uv_mutex_t *mutex, uint64_t timeout)
Definition: thread.c:785
UV_EXTERN size_t uv_loop_size(void)
Definition: uv-common.c:152
UV_EXTERN char * uv_err_name_r(int err, char *buf, size_t buflen)
Definition: uv-common.c:178
UV_EXTERN uv_stat_t * uv_fs_get_statbuf(uv_fs_t *)
void(* uv_connect_cb)(uv_connect_t *req, int status)
Definition: uv.h:316
UV_EXTERN int uv_uptime(double *uptime)
Definition: aix.c:1017
uv_errno_t
Definition: uv.h:182
@ UV_ERRNO_MAX
Definition: uv.h:186
void(* uv_idle_cb)(uv_idle_t *handle)
Definition: uv.h:325
void(* uv_exit_cb)(uv_process_t *, int64_t exit_status, int term_signal)
Definition: uv.h:326
UV_EXTERN int uv_os_tmpdir(char *buffer, size_t *size)
Definition: core.c:1095
UV_EXTERN int uv_fs_close(uv_loop_t *loop, uv_fs_t *req, uv_file file, uv_fs_cb cb)
Definition: fs.c:1697
UV_EXTERN void uv_rwlock_destroy(uv_rwlock_t *rwlock)
Definition: thread.c:361
UV_EXTERN int uv_fs_poll_start(uv_fs_poll_t *handle, uv_fs_poll_cb poll_cb, const char *path, unsigned int interval)
Definition: fs-poll.c:66
UV_EXTERN int uv_tcp_init(uv_loop_t *, uv_tcp_t *handle)
Definition: tcp.c:143
UV_EXTERN int uv_tcp_simultaneous_accepts(uv_tcp_t *handle, int enable)
Definition: tcp.c:450
UV_EXTERN int uv_poll_init_socket(uv_loop_t *loop, uv_poll_t *handle, uv_os_sock_t socket)
Definition: poll.c:96
UV_EXTERN int uv_tty_init(uv_loop_t *, uv_tty_t *, uv_file fd, int readable)
Definition: tty.c:123
UV_EXTERN void * uv_req_get_data(const uv_req_t *req)
UV_EXTERN int uv_rwlock_trywrlock(uv_rwlock_t *rwlock)
Definition: thread.c:399
UV_EXTERN void uv_library_shutdown(void)
Definition: uv-common.c:859
UV_EXTERN int uv_os_setenv(const char *name, const char *value)
Definition: core.c:1337
UV_EXTERN int uv_is_readable(const uv_stream_t *handle)
Definition: stream.c:1606
UV_EXTERN int uv_loop_alive(const uv_loop_t *loop)
Definition: core.c:360
UV_EXTERN void uv_loadavg(double avg[3])
Definition: aix.c:392
UV_EXTERN int uv_fs_symlink(uv_loop_t *loop, uv_fs_t *req, const char *path, const char *new_path, int flags, uv_fs_cb cb)
Definition: fs.c:2007
UV_EXTERN uint64_t uv_metrics_idle_time(uv_loop_t *loop)
Definition: uv-common.c:914
UV_EXTERN int uv_getaddrinfo(uv_loop_t *loop, uv_getaddrinfo_t *req, uv_getaddrinfo_cb getaddrinfo_cb, const char *node, const char *service, const struct addrinfo *hints)
Definition: getaddrinfo.c:141
UV_EXTERN uv_loop_t * uv_default_loop(void)
Definition: uv-common.c:763
void(* uv_async_cb)(uv_async_t *handle)
Definition: uv.h:322
UV_EXTERN int uv_async_init(uv_loop_t *, uv_async_t *async, uv_async_cb async_cb)
Definition: async.c:45
UV_EXTERN int uv_udp_getsockname(const uv_udp_t *handle, struct sockaddr *name, int *namelen)
Definition: udp.c:1286
UV_EXTERN const char * uv_dlerror(const uv_lib_t *lib)
Definition: dl.c:60
UV_EXTERN int uv_mutex_trylock(uv_mutex_t *handle)
Definition: thread.c:336
UV_EXTERN void uv_os_free_environ(uv_env_item_t *envitems, int count)
Definition: uv-common.c:835
UV_EXTERN int uv_cancel(uv_req_t *req)
Definition: threadpool.c:358
void(* uv_walk_cb)(uv_handle_t *handle, void *arg)
Definition: uv.h:327
UV_EXTERN void uv_cond_wait(uv_cond_t *cond, uv_mutex_t *mutex)
Definition: thread.c:779
UV_EXTERN void uv_cond_signal(uv_cond_t *cond)
Definition: thread.c:769
UV_EXTERN int uv_fs_mkdir(uv_loop_t *loop, uv_fs_t *req, const char *path, int mode, uv_fs_cb cb)
Definition: fs.c:1822
struct uv_stdio_container_s uv_stdio_container_t
UV_EXTERN int uv_os_unsetenv(const char *name)
Definition: core.c:1348
UV_EXTERN int uv_async_send(uv_async_t *async)
Definition: async.c:63
UV_EXTERN int uv_fs_readdir(uv_loop_t *loop, uv_fs_t *req, uv_dir_t *dir, uv_fs_cb cb)
Definition: fs.c:1920
uv_req_type
Definition: uv.h:198
@ UV_REQ_TYPE_MAX
Definition: uv.h:204
@ UV_UNKNOWN_REQ
Definition: uv.h:199
UV_EXTERN int uv_loop_configure(uv_loop_t *loop, uv_loop_option option,...)
Definition: uv-common.c:746
void(* uv_fs_cb)(uv_fs_t *req)
Definition: uv.h:328
#define UV_HANDLE_TYPE_MAP(XX)
Definition: uv.h:152
UV_EXTERN uv_pid_t uv_os_getppid(void)
Definition: core.c:1402
UV_EXTERN void uv_loop_delete(uv_loop_t *)
Definition: uv-common.c:821
UV_EXTERN int uv_fs_realpath(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:1956
UV_EXTERN int uv_timer_again(uv_timer_t *handle)
Definition: timer.c:110
UV_EXTERN int uv_fs_link(uv_loop_t *loop, uv_fs_t *req, const char *path, const char *new_path, uv_fs_cb cb)
Definition: fs.c:1811
UV_EXTERN int uv_udp_getpeername(const uv_udp_t *handle, struct sockaddr *name, int *namelen)
Definition: udp.c:1276
UV_EXTERN int uv_loop_close(uv_loop_t *loop)
Definition: uv-common.c:791
UV_EXTERN void uv_sem_wait(uv_sem_t *sem)
Definition: thread.c:678
UV_EXTERN void uv_cond_broadcast(uv_cond_t *cond)
Definition: thread.c:774
UV_EXTERN int uv_fs_poll_stop(uv_fs_poll_t *handle)
Definition: fs-poll.c:116
UV_EXTERN int uv_fs_opendir(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:1911
uv_poll_event
Definition: uv.h:799
@ UV_WRITABLE
Definition: uv.h:801
@ UV_DISCONNECT
Definition: uv.h:802
@ UV_PRIORITIZED
Definition: uv.h:803
@ UV_READABLE
Definition: uv.h:800
UV_EXTERN int uv_signal_init(uv_loop_t *loop, uv_signal_t *handle)
Definition: signal.c:319
UV_EXTERN int uv_inet_pton(int af, const char *src, void *dst)
Definition: inet.c:150
UV_EXTERN int uv_fs_rmdir(uv_loop_t *loop, uv_fs_t *req, const char *path, uv_fs_cb cb)
Definition: fs.c:1977
UV_EXTERN int uv_fs_lutime(uv_loop_t *loop, uv_fs_t *req, const char *path, double atime, double mtime, uv_fs_cb cb)
Definition: fs.c:1790
UV_EXTERN uint64_t uv_timer_get_due_in(const uv_timer_t *handle)
Definition: timer.c:133
UV_EXTERN void uv_pipe_connect(uv_connect_t *req, uv_pipe_t *handle, const char *name, uv_connect_cb cb)
Definition: pipe.c:173
UV_EXTERN int uv_tcp_getsockname(const uv_tcp_t *handle, struct sockaddr *name, int *namelen)
Definition: tcp.c:283
UV_EXTERN int uv_fs_closedir(uv_loop_t *loop, uv_fs_t *req, uv_dir_t *dir, uv_fs_cb cb)
Definition: fs.c:1933
UV_EXTERN void uv_dlclose(uv_lib_t *lib)
Definition: dl.c:41
UV_EXTERN void uv_disable_stdio_inheritance(void)
Definition: core.c:755
UV_EXTERN uv_handle_type uv_handle_get_type(const uv_handle_t *handle)
UV_EXTERN void uv_timer_set_repeat(uv_timer_t *handle, uint64_t repeat)
Definition: timer.c:123
UV_EXTERN int uv_fs_rename(uv_loop_t *loop, uv_fs_t *req, const char *path, const char *new_path, uv_fs_cb cb)
Definition: fs.c:1966
UV_EXTERN int uv_tty_get_vterm_state(uv_tty_vtermstate_t *state)
Definition: tty.c:400
UV_EXTERN unsigned int uv_version(void)
Definition: version.c:38
UV_EXTERN int uv_poll_stop(uv_poll_t *handle)
Definition: poll.c:111
UV_EXTERN int uv_pipe_open(uv_pipe_t *, uv_file file)
Definition: pipe.c:137
UV_EXTERN int uv_pipe_chmod(uv_pipe_t *handle, int flags)
Definition: pipe.c:326
UV_EXTERN int uv_ip6_name(const struct sockaddr_in6 *src, char *dst, size_t size)
Definition: uv-common.c:272
UV_EXTERN int uv_udp_set_broadcast(uv_udp_t *handle, int on)
Definition: udp.c:1128
UV_EXTERN int uv_prepare_stop(uv_prepare_t *prepare)
UV_EXTERN int uv_sem_init(uv_sem_t *sem, unsigned int value)
Definition: thread.c:650
UV_EXTERN int uv_fileno(const uv_handle_t *handle, uv_os_fd_t *fd)
Definition: core.c:767
UV_EXTERN void uv_update_time(uv_loop_t *)
Definition: core.c:425
UV_EXTERN void * uv_fs_get_ptr(const uv_fs_t *)
UV_EXTERN void uv_rwlock_rdunlock(uv_rwlock_t *rwlock)
Definition: thread.c:387
UV_EXTERN uv_loop_t * uv_handle_get_loop(const uv_handle_t *handle)
void(* uv_close_cb)(uv_handle_t *handle)
Definition: uv.h:319
UV_EXTERN uv_thread_t uv_thread_self(void)
Definition: thread.c:268
UV_EXTERN int uv_idle_start(uv_idle_t *idle, uv_idle_cb cb)
UV_EXTERN int uv_fs_copyfile(uv_loop_t *loop, uv_fs_t *req, const char *path, const char *new_path, int flags, uv_fs_cb cb)
Definition: fs.c:2103
UV_EXTERN int uv_mutex_init(uv_mutex_t *handle)
Definition: thread.c:282
UV_EXTERN int uv_tcp_getpeername(const uv_tcp_t *handle, struct sockaddr *name, int *namelen)
Definition: tcp.c:297
UV_EXTERN void uv_cond_destroy(uv_cond_t *cond)
Definition: thread.c:735
UV_EXTERN int uv_cond_init(uv_cond_t *cond)
Definition: thread.c:704
#define UV_STREAM_FIELDS
Definition: uv.h:479
UV_EXTERN int uv_chdir(const char *dir)
Definition: core.c:747
UV_EXTERN uv_pid_t uv_os_getpid(void)
Definition: core.c:1397
void(* uv_work_cb)(uv_work_t *req)
Definition: uv.h:329
UV_EXTERN int uv_idle_init(uv_loop_t *, uv_idle_t *idle)
UV_EXTERN int uv_fs_event_getpath(uv_fs_event_t *handle, char *buffer, size_t *size)
Definition: uv-common.c:592
uv_loop_option
Definition: uv.h:249
@ UV_LOOP_BLOCK_SIGNAL
Definition: uv.h:250
@ UV_METRICS_IDLE_TIME
Definition: uv.h:251
void(* uv_shutdown_cb)(uv_shutdown_t *req, int status)
Definition: uv.h:317
UV_EXTERN int uv_get_process_title(char *buffer, size_t size)
Definition: aix.c:960
static const z80_opcode fd[]
Definition: z80_tab.h:997
static const char * cb[]
Definition: z80_tab.h:176
static int addr
Definition: z80asm.c:58