1pub const O_CREAT: u32 = 64;
4pub const O_EXCL: u32 = 128;
5pub const O_NOCTTY: u32 = 256;
6pub const O_TRUNC: u32 = 512;
7pub const O_APPEND: u32 = 1024;
8pub const O_NONBLOCK: u32 = 2048;
9pub const O_DSYNC: u32 = 4096;
10pub const O_SYNC: u32 = 1052672;
11pub const O_RSYNC: u32 = 1052672;
12pub const O_DIRECTORY: u32 = 65536;
13pub const O_NOFOLLOW: u32 = 131072;
14pub const O_CLOEXEC: u32 = 524288;
15pub const O_ASYNC: u32 = 8192;
16pub const O_DIRECT: u32 = 16384;
17pub const O_LARGEFILE: u32 = 32768;
18pub const O_NOATIME: u32 = 262144;
19pub const O_PATH: u32 = 2097152;
20pub const O_TMPFILE: u32 = 4259840;
21pub const O_NDELAY: u32 = 2048;
22pub const O_SEARCH: u32 = 2097152;
23pub const O_EXEC: u32 = 2097152;
24pub const O_TTY_INIT: u32 = 0;
25pub const O_ACCMODE: u32 = 2097155;
26pub const O_RDONLY: u32 = 0;
27pub const O_WRONLY: u32 = 1;
28pub const O_RDWR: u32 = 2;
29pub const F_DUPFD: u32 = 0;
30pub const F_GETFD: u32 = 1;
31pub const F_SETFD: u32 = 2;
32pub const F_GETFL: u32 = 3;
33pub const F_SETFL: u32 = 4;
34pub const F_SETOWN: u32 = 8;
35pub const F_GETOWN: u32 = 9;
36pub const F_SETSIG: u32 = 10;
37pub const F_GETSIG: u32 = 11;
38pub const F_GETLK: u32 = 5;
39pub const F_SETLK: u32 = 6;
40pub const F_SETLKW: u32 = 7;
41pub const FD_CLOEXEC: u32 = 1;
42pub const F_DUPFD_CLOEXEC: u32 = 1030;
43pub const F_RDLCK: u32 = 0;
44pub const F_WRLCK: u32 = 1;
45pub const F_UNLCK: u32 = 2;
46pub const F_OK: u32 = 0;
47pub const F_ULOCK: u32 = 0;
48pub const F_LOCK: u32 = 1;
49pub const F_TLOCK: u32 = 2;
50pub const F_TEST: u32 = 3;
51pub const SOCK_STREAM: u32 = 1;
52pub const SOCK_DGRAM: u32 = 2;
53pub const SOCK_RAW: u32 = 3;
54pub const SOCK_RDM: u32 = 4;
55pub const SOCK_SEQPACKET: u32 = 5;
56pub const SOCK_DCCP: u32 = 6;
57pub const SOCK_PACKET: u32 = 10;
58pub const SOCK_CLOEXEC: u32 = 524288;
59pub const SOCK_NONBLOCK: u32 = 2048;
60pub const AF_UNSPEC: u32 = 0;
61pub const AF_LOCAL: u32 = 1;
62pub const AF_UNIX: u32 = 1;
63pub const AF_FILE: u32 = 1;
64pub const AF_INET: u32 = 2;
65pub const AF_AX25: u32 = 3;
66pub const AF_IPX: u32 = 4;
67pub const AF_APPLETALK: u32 = 5;
68pub const AF_NETROM: u32 = 6;
69pub const AF_BRIDGE: u32 = 7;
70pub const AF_ATMPVC: u32 = 8;
71pub const AF_X25: u32 = 9;
72pub const AF_INET6: u32 = 10;
73pub const AF_ROSE: u32 = 11;
74pub const AF_DECnet: u32 = 12;
75pub const AF_NETBEUI: u32 = 13;
76pub const AF_SECURITY: u32 = 14;
77pub const AF_KEY: u32 = 15;
78pub const AF_NETLINK: u32 = 16;
79pub const AF_ROUTE: u32 = 16;
80pub const AF_PACKET: u32 = 17;
81pub const AF_ASH: u32 = 18;
82pub const AF_ECONET: u32 = 19;
83pub const AF_ATMSVC: u32 = 20;
84pub const AF_RDS: u32 = 21;
85pub const AF_SNA: u32 = 22;
86pub const AF_IRDA: u32 = 23;
87pub const AF_PPPOX: u32 = 24;
88pub const AF_WANPIPE: u32 = 25;
89pub const AF_LLC: u32 = 26;
90pub const AF_IB: u32 = 27;
91pub const AF_MPLS: u32 = 28;
92pub const AF_CAN: u32 = 29;
93pub const AF_TIPC: u32 = 30;
94pub const AF_BLUETOOTH: u32 = 31;
95pub const AF_IUCV: u32 = 32;
96pub const AF_RXRPC: u32 = 33;
97pub const AF_ISDN: u32 = 34;
98pub const AF_PHONET: u32 = 35;
99pub const AF_IEEE802154: u32 = 36;
100pub const AF_CAIF: u32 = 37;
101pub const AF_ALG: u32 = 38;
102pub const AF_NFC: u32 = 39;
103pub const AF_VSOCK: u32 = 40;
104pub const AF_KCM: u32 = 41;
105pub const AF_QIPCRTR: u32 = 42;
106pub const AF_SMC: u32 = 43;
107pub const AF_XDP: u32 = 44;
108pub const AF_MAX: u32 = 45;
109pub const IPPROTO_IP: u32 = 0;
110pub const IPPROTO_HOPOPTS: u32 = 0;
111pub const IPPROTO_ICMP: u32 = 1;
112pub const IPPROTO_IGMP: u32 = 2;
113pub const IPPROTO_IPIP: u32 = 4;
114pub const IPPROTO_TCP: u32 = 6;
115pub const IPPROTO_EGP: u32 = 8;
116pub const IPPROTO_PUP: u32 = 12;
117pub const IPPROTO_UDP: u32 = 17;
118pub const IPPROTO_IDP: u32 = 22;
119pub const IPPROTO_TP: u32 = 29;
120pub const IPPROTO_DCCP: u32 = 33;
121pub const IPPROTO_IPV6: u32 = 41;
122pub const IPPROTO_ROUTING: u32 = 43;
123pub const IPPROTO_FRAGMENT: u32 = 44;
124pub const IPPROTO_RSVP: u32 = 46;
125pub const IPPROTO_GRE: u32 = 47;
126pub const IPPROTO_ESP: u32 = 50;
127pub const IPPROTO_AH: u32 = 51;
128pub const IPPROTO_ICMPV6: u32 = 58;
129pub const IPPROTO_NONE: u32 = 59;
130pub const IPPROTO_DSTOPTS: u32 = 60;
131pub const IPPROTO_MTP: u32 = 92;
132pub const IPPROTO_BEETPH: u32 = 94;
133pub const IPPROTO_ENCAP: u32 = 98;
134pub const IPPROTO_PIM: u32 = 103;
135pub const IPPROTO_COMP: u32 = 108;
136pub const IPPROTO_SCTP: u32 = 132;
137pub const IPPROTO_MH: u32 = 135;
138pub const IPPROTO_UDPLITE: u32 = 136;
139pub const IPPROTO_MPLS: u32 = 137;
140pub const IPPROTO_ETHERNET: u32 = 143;
141pub const IPPROTO_RAW: u32 = 255;
142pub const IPPROTO_MPTCP: u32 = 262;
143pub const IPPROTO_MAX: u32 = 263;
144pub const EAI_BADFLAGS: i32 = -1;
145pub const EAI_NONAME: i32 = -2;
146pub const EAI_AGAIN: i32 = -3;
147pub const EAI_FAIL: i32 = -4;
148pub const EAI_FAMILY: i32 = -6;
149pub const EAI_SOCKTYPE: i32 = -7;
150pub const EAI_SERVICE: i32 = -8;
151pub const EAI_MEMORY: i32 = -10;
152pub const EAI_SYSTEM: i32 = -11;
153pub const EAI_OVERFLOW: i32 = -12;
154pub const MAXADDRS: u32 = 48;
155pub const CLOCK_REALTIME: u32 = 0;
156pub const CLOCK_MONOTONIC: u32 = 1;
157pub const EPOLL_CLOEXEC: u32 = 524288;
158pub const EPOLL_NONBLOCK: u32 = 2048;
159pub const EPOLLIN: u32 = 1;
160pub const EPOLLPRI: u32 = 2;
161pub const EPOLLOUT: u32 = 4;
162pub const EPOLLRDNORM: u32 = 64;
163pub const EPOLLNVAL: u32 = 32;
164pub const EPOLLRDBAND: u32 = 128;
165pub const EPOLLWRNORM: u32 = 256;
166pub const EPOLLWRBAND: u32 = 512;
167pub const EPOLLMSG: u32 = 1024;
168pub const EPOLLERR: u32 = 8;
169pub const EPOLLHUP: u32 = 16;
170pub const EPOLLRDHUP: u32 = 8192;
171pub const EPOLLEXCLUSIVE: u32 = 268435456;
172pub const EPOLLWAKEUP: u32 = 536870912;
173pub const EPOLLONESHOT: u32 = 1073741824;
174pub const EPOLLET: u32 = 2147483648;
175pub const EPOLL_CTL_ADD: u32 = 1;
176pub const EPOLL_CTL_DEL: u32 = 2;
177pub const EPOLL_CTL_MOD: u32 = 3;
178pub const RLIMIT_CPU: u32 = 0;
179pub const RLIMIT_FSIZE: u32 = 1;
180pub const RLIMIT_DATA: u32 = 2;
181pub const RLIMIT_STACK: u32 = 3;
182pub const RLIMIT_CORE: u32 = 4;
183pub const RLIMIT_RSS: u32 = 5;
184pub const RLIMIT_NPROC: u32 = 6;
185pub const RLIMIT_NOFILE: u32 = 7;
186pub const RLIMIT_MEMLOCK: u32 = 8;
187pub const RLIMIT_AS: u32 = 9;
188pub const RLIMIT_LOCKS: u32 = 10;
189pub const RLIMIT_SIGPENDING: u32 = 11;
190pub const RLIMIT_MSGQUEUE: u32 = 12;
191pub const RLIMIT_NICE: u32 = 13;
192pub const RLIMIT_RTPRIO: u32 = 14;
193pub const RLIMIT_RTTIME: u32 = 15;
194pub const RLIMIT_NLIMITS: u32 = 16;
195pub const FD_SETSIZE: u32 = 1024;
196pub const _SC_ARG_MAX: u32 = 0;
197pub const _SC_CHILD_MAX: u32 = 1;
198pub const _SC_CLK_TCK: u32 = 2;
199pub const _SC_NGROUPS_MAX: u32 = 3;
200pub const _SC_OPEN_MAX: u32 = 4;
201pub const _SC_STREAM_MAX: u32 = 5;
202pub const _SC_TZNAME_MAX: u32 = 6;
203pub const _SC_JOB_CONTROL: u32 = 7;
204pub const _SC_SAVED_IDS: u32 = 8;
205pub const _SC_REALTIME_SIGNALS: u32 = 9;
206pub const _SC_PRIORITY_SCHEDULING: u32 = 10;
207pub const _SC_TIMERS: u32 = 11;
208pub const _SC_ASYNCHRONOUS_IO: u32 = 12;
209pub const _SC_PRIORITIZED_IO: u32 = 13;
210pub const _SC_SYNCHRONIZED_IO: u32 = 14;
211pub const _SC_FSYNC: u32 = 15;
212pub const _SC_MAPPED_FILES: u32 = 16;
213pub const _SC_MEMLOCK: u32 = 17;
214pub const _SC_MEMLOCK_RANGE: u32 = 18;
215pub const _SC_MEMORY_PROTECTION: u32 = 19;
216pub const _SC_MESSAGE_PASSING: u32 = 20;
217pub const _SC_SEMAPHORES: u32 = 21;
218pub const _SC_SHARED_MEMORY_OBJECTS: u32 = 22;
219pub const _SC_AIO_LISTIO_MAX: u32 = 23;
220pub const _SC_AIO_MAX: u32 = 24;
221pub const _SC_AIO_PRIO_DELTA_MAX: u32 = 25;
222pub const _SC_DELAYTIMER_MAX: u32 = 26;
223pub const _SC_MQ_OPEN_MAX: u32 = 27;
224pub const _SC_MQ_PRIO_MAX: u32 = 28;
225pub const _SC_VERSION: u32 = 29;
226pub const _SC_PAGE_SIZE: u32 = 30;
227pub const _SC_PAGESIZE: u32 = 30;
228pub const _SC_RTSIG_MAX: u32 = 31;
229pub const _SC_SEM_NSEMS_MAX: u32 = 32;
230pub const _SC_SEM_VALUE_MAX: u32 = 33;
231pub const _SC_SIGQUEUE_MAX: u32 = 34;
232pub const _SC_TIMER_MAX: u32 = 35;
233pub const _SC_BC_BASE_MAX: u32 = 36;
234pub const _SC_BC_DIM_MAX: u32 = 37;
235pub const _SC_BC_SCALE_MAX: u32 = 38;
236pub const _SC_BC_STRING_MAX: u32 = 39;
237pub const _SC_COLL_WEIGHTS_MAX: u32 = 40;
238pub const _SC_EXPR_NEST_MAX: u32 = 42;
239pub const _SC_LINE_MAX: u32 = 43;
240pub const _SC_RE_DUP_MAX: u32 = 44;
241pub const _SC_2_VERSION: u32 = 46;
242pub const _SC_2_C_BIND: u32 = 47;
243pub const _SC_2_C_DEV: u32 = 48;
244pub const _SC_2_FORT_DEV: u32 = 49;
245pub const _SC_2_FORT_RUN: u32 = 50;
246pub const _SC_2_SW_DEV: u32 = 51;
247pub const _SC_2_LOCALEDEF: u32 = 52;
248pub const _SC_UIO_MAXIOV: u32 = 60;
249pub const _SC_IOV_MAX: u32 = 60;
250pub const _SC_THREADS: u32 = 67;
251pub const _SC_THREAD_SAFE_FUNCTIONS: u32 = 68;
252pub const _SC_GETGR_R_SIZE_MAX: u32 = 69;
253pub const _SC_GETPW_R_SIZE_MAX: u32 = 70;
254pub const _SC_LOGIN_NAME_MAX: u32 = 71;
255pub const _SC_TTY_NAME_MAX: u32 = 72;
256pub const _SC_THREAD_DESTRUCTOR_ITERATIONS: u32 = 73;
257pub const _SC_THREAD_KEYS_MAX: u32 = 74;
258pub const _SC_THREAD_STACK_MIN: u32 = 75;
259pub const _SC_THREAD_THREADS_MAX: u32 = 76;
260pub const _SC_THREAD_ATTR_STACKADDR: u32 = 77;
261pub const _SC_THREAD_ATTR_STACKSIZE: u32 = 78;
262pub const _SC_THREAD_PRIORITY_SCHEDULING: u32 = 79;
263pub const _SC_THREAD_PRIO_INHERIT: u32 = 80;
264pub const _SC_THREAD_PRIO_PROTECT: u32 = 81;
265pub const _SC_THREAD_PROCESS_SHARED: u32 = 82;
266pub const _SC_NPROCESSORS_CONF: u32 = 83;
267pub const _SC_NPROCESSORS_ONLN: u32 = 84;
268pub const _SC_PHYS_PAGES: u32 = 85;
269pub const _SC_AVPHYS_PAGES: u32 = 86;
270pub const _SC_ATEXIT_MAX: u32 = 87;
271pub const _SC_PASS_MAX: u32 = 88;
272pub const _SC_XOPEN_VERSION: u32 = 89;
273pub const _SC_XOPEN_XCU_VERSION: u32 = 90;
274pub const _SC_XOPEN_UNIX: u32 = 91;
275pub const _SC_XOPEN_CRYPT: u32 = 92;
276pub const _SC_XOPEN_ENH_I18N: u32 = 93;
277pub const _SC_XOPEN_SHM: u32 = 94;
278pub const _SC_2_CHAR_TERM: u32 = 95;
279pub const _SC_2_UPE: u32 = 97;
280pub const _SC_XOPEN_XPG2: u32 = 98;
281pub const _SC_XOPEN_XPG3: u32 = 99;
282pub const _SC_XOPEN_XPG4: u32 = 100;
283pub const _SC_NZERO: u32 = 109;
284pub const _SC_XBS5_ILP32_OFF32: u32 = 125;
285pub const _SC_XBS5_ILP32_OFFBIG: u32 = 126;
286pub const _SC_XBS5_LP64_OFF64: u32 = 127;
287pub const _SC_XBS5_LPBIG_OFFBIG: u32 = 128;
288pub const _SC_XOPEN_LEGACY: u32 = 129;
289pub const _SC_XOPEN_REALTIME: u32 = 130;
290pub const _SC_XOPEN_REALTIME_THREADS: u32 = 131;
291pub const _SC_ADVISORY_INFO: u32 = 132;
292pub const _SC_BARRIERS: u32 = 133;
293pub const _SC_CLOCK_SELECTION: u32 = 137;
294pub const _SC_CPUTIME: u32 = 138;
295pub const _SC_THREAD_CPUTIME: u32 = 139;
296pub const _SC_MONOTONIC_CLOCK: u32 = 149;
297pub const _SC_READER_WRITER_LOCKS: u32 = 153;
298pub const _SC_SPIN_LOCKS: u32 = 154;
299pub const _SC_REGEXP: u32 = 155;
300pub const _SC_SHELL: u32 = 157;
301pub const _SC_SPAWN: u32 = 159;
302pub const _SC_SPORADIC_SERVER: u32 = 160;
303pub const _SC_THREAD_SPORADIC_SERVER: u32 = 161;
304pub const _SC_TIMEOUTS: u32 = 164;
305pub const _SC_TYPED_MEMORY_OBJECTS: u32 = 165;
306pub const _SC_2_PBS: u32 = 168;
307pub const _SC_2_PBS_ACCOUNTING: u32 = 169;
308pub const _SC_2_PBS_LOCATE: u32 = 170;
309pub const _SC_2_PBS_MESSAGE: u32 = 171;
310pub const _SC_2_PBS_TRACK: u32 = 172;
311pub const _SC_SYMLOOP_MAX: u32 = 173;
312pub const _SC_STREAMS: u32 = 174;
313pub const _SC_2_PBS_CHECKPOINT: u32 = 175;
314pub const _SC_V6_ILP32_OFF32: u32 = 176;
315pub const _SC_V6_ILP32_OFFBIG: u32 = 177;
316pub const _SC_V6_LP64_OFF64: u32 = 178;
317pub const _SC_V6_LPBIG_OFFBIG: u32 = 179;
318pub const _SC_HOST_NAME_MAX: u32 = 180;
319pub const _SC_TRACE: u32 = 181;
320pub const _SC_TRACE_EVENT_FILTER: u32 = 182;
321pub const _SC_TRACE_INHERIT: u32 = 183;
322pub const _SC_TRACE_LOG: u32 = 184;
323pub const _SC_IPV6: u32 = 235;
324pub const _SC_RAW_SOCKETS: u32 = 236;
325pub const _SC_V7_ILP32_OFF32: u32 = 237;
326pub const _SC_V7_ILP32_OFFBIG: u32 = 238;
327pub const _SC_V7_LP64_OFF64: u32 = 239;
328pub const _SC_V7_LPBIG_OFFBIG: u32 = 240;
329pub const _SC_SS_REPL_MAX: u32 = 241;
330pub const _SC_TRACE_EVENT_NAME_MAX: u32 = 242;
331pub const _SC_TRACE_NAME_MAX: u32 = 243;
332pub const _SC_TRACE_SYS_MAX: u32 = 244;
333pub const _SC_TRACE_USER_EVENT_MAX: u32 = 245;
334pub const _SC_XOPEN_STREAMS: u32 = 246;
335pub const _SC_THREAD_ROBUST_PRIO_INHERIT: u32 = 247;
336pub const _SC_THREAD_ROBUST_PRIO_PROTECT: u32 = 248;
337pub type size_t = usize;
338pub type ssize_t = isize;
339pub type clockid_t = ::core::ffi::c_int;
340pub type mode_t = ::core::ffi::c_uint;
341pub type nlink_t = u32;
342pub type off_t = i64;
343pub type ino_t = u64;
344pub type dev_t = u64;
345pub type blksize_t = ::core::ffi::c_long;
346pub type blkcnt_t = i64;
347pub type uid_t = ::core::ffi::c_uint;
348pub type gid_t = ::core::ffi::c_uint;
349#[repr(C)]
350#[derive(Debug, Copy, Clone)]
351pub struct iovec {
352 pub iov_base: *mut ::core::ffi::c_void,
353 pub iov_len: size_t,
354}
355#[allow(clippy::unnecessary_operation, clippy::identity_op)]
356const _: () = {
357 ["Size of iovec"][::core::mem::size_of::<iovec>() - 16usize];
358 ["Alignment of iovec"][::core::mem::align_of::<iovec>() - 8usize];
359 ["Offset of field: iovec::iov_base"][::core::mem::offset_of!(iovec, iov_base) - 0usize];
360 ["Offset of field: iovec::iov_len"][::core::mem::offset_of!(iovec, iov_len) - 8usize];
361};
362impl Default for iovec {
363 fn default() -> Self {
364 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
365 unsafe {
366 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
367 s.assume_init()
368 }
369 }
370}
371pub type socklen_t = ::core::ffi::c_uint;
372pub type sa_family_t = ::core::ffi::c_ushort;
373#[repr(C)]
374#[derive(Debug, Default, Copy, Clone)]
375pub struct sockaddr {
376 pub sa_family: sa_family_t,
377 pub sa_data: [::core::ffi::c_char; 14usize],
378}
379#[allow(clippy::unnecessary_operation, clippy::identity_op)]
380const _: () = {
381 ["Size of sockaddr"][::core::mem::size_of::<sockaddr>() - 16usize];
382 ["Alignment of sockaddr"][::core::mem::align_of::<sockaddr>() - 2usize];
383 ["Offset of field: sockaddr::sa_family"][::core::mem::offset_of!(sockaddr, sa_family) - 0usize];
384 ["Offset of field: sockaddr::sa_data"][::core::mem::offset_of!(sockaddr, sa_data) - 2usize];
385};
386#[repr(C)]
387#[derive(Debug, Copy, Clone)]
388pub struct sockaddr_storage {
389 pub ss_family: sa_family_t,
390 pub __ss_padding: [::core::ffi::c_char; 118usize],
391 pub __ss_align: ::core::ffi::c_ulong,
392}
393#[allow(clippy::unnecessary_operation, clippy::identity_op)]
394const _: () = {
395 ["Size of sockaddr_storage"][::core::mem::size_of::<sockaddr_storage>() - 128usize];
396 ["Alignment of sockaddr_storage"][::core::mem::align_of::<sockaddr_storage>() - 8usize];
397 ["Offset of field: sockaddr_storage::ss_family"]
398 [::core::mem::offset_of!(sockaddr_storage, ss_family) - 0usize];
399 ["Offset of field: sockaddr_storage::__ss_padding"]
400 [::core::mem::offset_of!(sockaddr_storage, __ss_padding) - 2usize];
401 ["Offset of field: sockaddr_storage::__ss_align"]
402 [::core::mem::offset_of!(sockaddr_storage, __ss_align) - 120usize];
403};
404impl Default for sockaddr_storage {
405 fn default() -> Self {
406 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
407 unsafe {
408 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
409 s.assume_init()
410 }
411 }
412}
413pub type in_port_t = u16;
414pub type in_addr_t = u32;
415#[repr(C)]
416#[derive(Debug, Default, Copy, Clone)]
417pub struct in_addr {
418 pub s_addr: in_addr_t,
419}
420#[allow(clippy::unnecessary_operation, clippy::identity_op)]
421const _: () = {
422 ["Size of in_addr"][::core::mem::size_of::<in_addr>() - 4usize];
423 ["Alignment of in_addr"][::core::mem::align_of::<in_addr>() - 4usize];
424 ["Offset of field: in_addr::s_addr"][::core::mem::offset_of!(in_addr, s_addr) - 0usize];
425};
426#[repr(C)]
427#[derive(Debug, Default, Copy, Clone)]
428pub struct sockaddr_in {
429 pub sin_family: sa_family_t,
430 pub sin_port: in_port_t,
431 pub sin_addr: in_addr,
432 pub sin_zero: [u8; 8usize],
433}
434#[allow(clippy::unnecessary_operation, clippy::identity_op)]
435const _: () = {
436 ["Size of sockaddr_in"][::core::mem::size_of::<sockaddr_in>() - 16usize];
437 ["Alignment of sockaddr_in"][::core::mem::align_of::<sockaddr_in>() - 4usize];
438 ["Offset of field: sockaddr_in::sin_family"]
439 [::core::mem::offset_of!(sockaddr_in, sin_family) - 0usize];
440 ["Offset of field: sockaddr_in::sin_port"]
441 [::core::mem::offset_of!(sockaddr_in, sin_port) - 2usize];
442 ["Offset of field: sockaddr_in::sin_addr"]
443 [::core::mem::offset_of!(sockaddr_in, sin_addr) - 4usize];
444 ["Offset of field: sockaddr_in::sin_zero"]
445 [::core::mem::offset_of!(sockaddr_in, sin_zero) - 8usize];
446};
447#[repr(C)]
448#[derive(Copy, Clone)]
449pub struct in6_addr {
450 pub __in6_union: in6_addr__bindgen_ty_1,
451}
452#[repr(C)]
453#[derive(Copy, Clone)]
454pub union in6_addr__bindgen_ty_1 {
455 pub __s6_addr: [u8; 16usize],
456 pub __s6_addr16: [u16; 8usize],
457 pub __s6_addr32: [u32; 4usize],
458}
459#[allow(clippy::unnecessary_operation, clippy::identity_op)]
460const _: () = {
461 ["Size of in6_addr__bindgen_ty_1"][::core::mem::size_of::<in6_addr__bindgen_ty_1>() - 16usize];
462 ["Alignment of in6_addr__bindgen_ty_1"]
463 [::core::mem::align_of::<in6_addr__bindgen_ty_1>() - 4usize];
464 ["Offset of field: in6_addr__bindgen_ty_1::__s6_addr"]
465 [::core::mem::offset_of!(in6_addr__bindgen_ty_1, __s6_addr) - 0usize];
466 ["Offset of field: in6_addr__bindgen_ty_1::__s6_addr16"]
467 [::core::mem::offset_of!(in6_addr__bindgen_ty_1, __s6_addr16) - 0usize];
468 ["Offset of field: in6_addr__bindgen_ty_1::__s6_addr32"]
469 [::core::mem::offset_of!(in6_addr__bindgen_ty_1, __s6_addr32) - 0usize];
470};
471impl Default for in6_addr__bindgen_ty_1 {
472 fn default() -> Self {
473 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
474 unsafe {
475 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
476 s.assume_init()
477 }
478 }
479}
480#[allow(clippy::unnecessary_operation, clippy::identity_op)]
481const _: () = {
482 ["Size of in6_addr"][::core::mem::size_of::<in6_addr>() - 16usize];
483 ["Alignment of in6_addr"][::core::mem::align_of::<in6_addr>() - 4usize];
484 ["Offset of field: in6_addr::__in6_union"]
485 [::core::mem::offset_of!(in6_addr, __in6_union) - 0usize];
486};
487impl Default for in6_addr {
488 fn default() -> Self {
489 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
490 unsafe {
491 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
492 s.assume_init()
493 }
494 }
495}
496#[repr(C)]
497#[derive(Copy, Clone)]
498pub struct sockaddr_in6 {
499 pub sin6_family: sa_family_t,
500 pub sin6_port: in_port_t,
501 pub sin6_flowinfo: u32,
502 pub sin6_addr: in6_addr,
503 pub sin6_scope_id: u32,
504}
505#[allow(clippy::unnecessary_operation, clippy::identity_op)]
506const _: () = {
507 ["Size of sockaddr_in6"][::core::mem::size_of::<sockaddr_in6>() - 28usize];
508 ["Alignment of sockaddr_in6"][::core::mem::align_of::<sockaddr_in6>() - 4usize];
509 ["Offset of field: sockaddr_in6::sin6_family"]
510 [::core::mem::offset_of!(sockaddr_in6, sin6_family) - 0usize];
511 ["Offset of field: sockaddr_in6::sin6_port"]
512 [::core::mem::offset_of!(sockaddr_in6, sin6_port) - 2usize];
513 ["Offset of field: sockaddr_in6::sin6_flowinfo"]
514 [::core::mem::offset_of!(sockaddr_in6, sin6_flowinfo) - 4usize];
515 ["Offset of field: sockaddr_in6::sin6_addr"]
516 [::core::mem::offset_of!(sockaddr_in6, sin6_addr) - 8usize];
517 ["Offset of field: sockaddr_in6::sin6_scope_id"]
518 [::core::mem::offset_of!(sockaddr_in6, sin6_scope_id) - 24usize];
519};
520impl Default for sockaddr_in6 {
521 fn default() -> Self {
522 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
523 unsafe {
524 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
525 s.assume_init()
526 }
527 }
528}
529#[repr(C)]
530#[derive(Debug, Copy, Clone)]
531pub struct addrinfo {
532 pub ai_flags: ::core::ffi::c_int,
533 pub ai_family: ::core::ffi::c_int,
534 pub ai_socktype: ::core::ffi::c_int,
535 pub ai_protocol: ::core::ffi::c_int,
536 pub ai_addrlen: socklen_t,
537 pub ai_addr: *mut sockaddr,
538 pub ai_canonname: *mut ::core::ffi::c_char,
539 pub ai_next: *mut addrinfo,
540}
541#[allow(clippy::unnecessary_operation, clippy::identity_op)]
542const _: () = {
543 ["Size of addrinfo"][::core::mem::size_of::<addrinfo>() - 48usize];
544 ["Alignment of addrinfo"][::core::mem::align_of::<addrinfo>() - 8usize];
545 ["Offset of field: addrinfo::ai_flags"][::core::mem::offset_of!(addrinfo, ai_flags) - 0usize];
546 ["Offset of field: addrinfo::ai_family"][::core::mem::offset_of!(addrinfo, ai_family) - 4usize];
547 ["Offset of field: addrinfo::ai_socktype"]
548 [::core::mem::offset_of!(addrinfo, ai_socktype) - 8usize];
549 ["Offset of field: addrinfo::ai_protocol"]
550 [::core::mem::offset_of!(addrinfo, ai_protocol) - 12usize];
551 ["Offset of field: addrinfo::ai_addrlen"]
552 [::core::mem::offset_of!(addrinfo, ai_addrlen) - 16usize];
553 ["Offset of field: addrinfo::ai_addr"][::core::mem::offset_of!(addrinfo, ai_addr) - 24usize];
554 ["Offset of field: addrinfo::ai_canonname"]
555 [::core::mem::offset_of!(addrinfo, ai_canonname) - 32usize];
556 ["Offset of field: addrinfo::ai_next"][::core::mem::offset_of!(addrinfo, ai_next) - 40usize];
557};
558impl Default for addrinfo {
559 fn default() -> Self {
560 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
561 unsafe {
562 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
563 s.assume_init()
564 }
565 }
566}
567#[repr(C)]
568#[derive(Copy, Clone)]
569pub struct aibuf {
570 pub ai: addrinfo,
571 pub sa: aibuf_sa,
572 pub lock: [::core::ffi::c_int; 1usize],
573 pub slot: ::core::ffi::c_short,
574 pub ref_: ::core::ffi::c_short,
575}
576#[repr(C)]
577#[derive(Copy, Clone)]
578pub union aibuf_sa {
579 pub sin: sockaddr_in,
580 pub sin6: sockaddr_in6,
581}
582#[allow(clippy::unnecessary_operation, clippy::identity_op)]
583const _: () = {
584 ["Size of aibuf_sa"][::core::mem::size_of::<aibuf_sa>() - 28usize];
585 ["Alignment of aibuf_sa"][::core::mem::align_of::<aibuf_sa>() - 4usize];
586 ["Offset of field: aibuf_sa::sin"][::core::mem::offset_of!(aibuf_sa, sin) - 0usize];
587 ["Offset of field: aibuf_sa::sin6"][::core::mem::offset_of!(aibuf_sa, sin6) - 0usize];
588};
589impl Default for aibuf_sa {
590 fn default() -> Self {
591 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
592 unsafe {
593 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
594 s.assume_init()
595 }
596 }
597}
598#[allow(clippy::unnecessary_operation, clippy::identity_op)]
599const _: () = {
600 ["Size of aibuf"][::core::mem::size_of::<aibuf>() - 88usize];
601 ["Alignment of aibuf"][::core::mem::align_of::<aibuf>() - 8usize];
602 ["Offset of field: aibuf::ai"][::core::mem::offset_of!(aibuf, ai) - 0usize];
603 ["Offset of field: aibuf::sa"][::core::mem::offset_of!(aibuf, sa) - 48usize];
604 ["Offset of field: aibuf::lock"][::core::mem::offset_of!(aibuf, lock) - 76usize];
605 ["Offset of field: aibuf::slot"][::core::mem::offset_of!(aibuf, slot) - 80usize];
606 ["Offset of field: aibuf::ref_"][::core::mem::offset_of!(aibuf, ref_) - 82usize];
607};
608impl Default for aibuf {
609 fn default() -> Self {
610 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
611 unsafe {
612 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
613 s.assume_init()
614 }
615 }
616}
617pub type time_t = ::core::ffi::c_longlong;
618#[repr(C)]
619#[derive(Debug, Default, Copy, Clone)]
620pub struct timeval {
621 pub tv_sec: time_t,
622 pub tv_usec: ::core::ffi::c_long,
623}
624#[allow(clippy::unnecessary_operation, clippy::identity_op)]
625const _: () = {
626 ["Size of timeval"][::core::mem::size_of::<timeval>() - 16usize];
627 ["Alignment of timeval"][::core::mem::align_of::<timeval>() - 8usize];
628 ["Offset of field: timeval::tv_sec"][::core::mem::offset_of!(timeval, tv_sec) - 0usize];
629 ["Offset of field: timeval::tv_usec"][::core::mem::offset_of!(timeval, tv_usec) - 8usize];
630};
631#[repr(C)]
632#[derive(Debug, Default, Copy, Clone)]
633pub struct timespec {
634 pub tv_sec: time_t,
635 pub tv_nsec: ::core::ffi::c_long,
636}
637#[allow(clippy::unnecessary_operation, clippy::identity_op)]
638const _: () = {
639 ["Size of timespec"][::core::mem::size_of::<timespec>() - 16usize];
640 ["Alignment of timespec"][::core::mem::align_of::<timespec>() - 8usize];
641 ["Offset of field: timespec::tv_sec"][::core::mem::offset_of!(timespec, tv_sec) - 0usize];
642 ["Offset of field: timespec::tv_nsec"][::core::mem::offset_of!(timespec, tv_nsec) - 8usize];
643};
644#[repr(C)]
645#[derive(Debug, Default, Copy, Clone)]
646pub struct pthread_mutex_t {
647 pub __l: [::core::ffi::c_long; 6usize],
648}
649#[allow(clippy::unnecessary_operation, clippy::identity_op)]
650const _: () = {
651 ["Size of pthread_mutex_t"][::core::mem::size_of::<pthread_mutex_t>() - 48usize];
652 ["Alignment of pthread_mutex_t"][::core::mem::align_of::<pthread_mutex_t>() - 8usize];
653 ["Offset of field: pthread_mutex_t::__l"]
654 [::core::mem::offset_of!(pthread_mutex_t, __l) - 0usize];
655};
656#[repr(C)]
657#[derive(Debug, Default, Copy, Clone)]
658pub struct pthread_mutexattr_t {
659 pub __attr: ::core::ffi::c_uint,
660}
661#[allow(clippy::unnecessary_operation, clippy::identity_op)]
662const _: () = {
663 ["Size of pthread_mutexattr_t"][::core::mem::size_of::<pthread_mutexattr_t>() - 4usize];
664 ["Alignment of pthread_mutexattr_t"][::core::mem::align_of::<pthread_mutexattr_t>() - 4usize];
665 ["Offset of field: pthread_mutexattr_t::__attr"]
666 [::core::mem::offset_of!(pthread_mutexattr_t, __attr) - 0usize];
667};
668#[repr(C)]
669#[derive(Copy, Clone)]
670pub struct pthread_attr_t {
671 pub __u: pthread_attr_t__bindgen_ty_1,
672}
673#[repr(C)]
674#[derive(Copy, Clone)]
675pub union pthread_attr_t__bindgen_ty_1 {
676 pub __i: [::core::ffi::c_int; 14usize],
677 pub __vi: [::core::ffi::c_int; 14usize],
678 pub __s: [::core::ffi::c_ulong; 7usize],
679}
680#[allow(clippy::unnecessary_operation, clippy::identity_op)]
681const _: () = {
682 ["Size of pthread_attr_t__bindgen_ty_1"]
683 [::core::mem::size_of::<pthread_attr_t__bindgen_ty_1>() - 56usize];
684 ["Alignment of pthread_attr_t__bindgen_ty_1"]
685 [::core::mem::align_of::<pthread_attr_t__bindgen_ty_1>() - 8usize];
686 ["Offset of field: pthread_attr_t__bindgen_ty_1::__i"]
687 [::core::mem::offset_of!(pthread_attr_t__bindgen_ty_1, __i) - 0usize];
688 ["Offset of field: pthread_attr_t__bindgen_ty_1::__vi"]
689 [::core::mem::offset_of!(pthread_attr_t__bindgen_ty_1, __vi) - 0usize];
690 ["Offset of field: pthread_attr_t__bindgen_ty_1::__s"]
691 [::core::mem::offset_of!(pthread_attr_t__bindgen_ty_1, __s) - 0usize];
692};
693impl Default for pthread_attr_t__bindgen_ty_1 {
694 fn default() -> Self {
695 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
696 unsafe {
697 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
698 s.assume_init()
699 }
700 }
701}
702#[allow(clippy::unnecessary_operation, clippy::identity_op)]
703const _: () = {
704 ["Size of pthread_attr_t"][::core::mem::size_of::<pthread_attr_t>() - 56usize];
705 ["Alignment of pthread_attr_t"][::core::mem::align_of::<pthread_attr_t>() - 8usize];
706 ["Offset of field: pthread_attr_t::__u"][::core::mem::offset_of!(pthread_attr_t, __u) - 0usize];
707};
708impl Default for pthread_attr_t {
709 fn default() -> Self {
710 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
711 unsafe {
712 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
713 s.assume_init()
714 }
715 }
716}
717pub type pthread_t = *mut ::core::ffi::c_void;
718#[repr(C)]
719#[derive(Copy, Clone)]
720pub union epoll_data {
721 pub ptr: *mut ::core::ffi::c_void,
722 pub fd: ::core::ffi::c_int,
723 pub u32_: u32,
724 pub u64_: u64,
725}
726#[allow(clippy::unnecessary_operation, clippy::identity_op)]
727const _: () = {
728 ["Size of epoll_data"][::core::mem::size_of::<epoll_data>() - 8usize];
729 ["Alignment of epoll_data"][::core::mem::align_of::<epoll_data>() - 8usize];
730 ["Offset of field: epoll_data::ptr"][::core::mem::offset_of!(epoll_data, ptr) - 0usize];
731 ["Offset of field: epoll_data::fd"][::core::mem::offset_of!(epoll_data, fd) - 0usize];
732 ["Offset of field: epoll_data::u32_"][::core::mem::offset_of!(epoll_data, u32_) - 0usize];
733 ["Offset of field: epoll_data::u64_"][::core::mem::offset_of!(epoll_data, u64_) - 0usize];
734};
735impl Default for epoll_data {
736 fn default() -> Self {
737 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
738 unsafe {
739 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
740 s.assume_init()
741 }
742 }
743}
744pub type epoll_data_t = epoll_data;
745#[repr(C, packed)]
746#[derive(Copy, Clone)]
747pub struct epoll_event {
748 pub events: u32,
749 pub data: epoll_data_t,
750}
751#[allow(clippy::unnecessary_operation, clippy::identity_op)]
752const _: () = {
753 ["Size of epoll_event"][::core::mem::size_of::<epoll_event>() - 12usize];
754 ["Alignment of epoll_event"][::core::mem::align_of::<epoll_event>() - 1usize];
755 ["Offset of field: epoll_event::events"][::core::mem::offset_of!(epoll_event, events) - 0usize];
756 ["Offset of field: epoll_event::data"][::core::mem::offset_of!(epoll_event, data) - 4usize];
757};
758impl Default for epoll_event {
759 fn default() -> Self {
760 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
761 unsafe {
762 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
763 s.assume_init()
764 }
765 }
766}
767pub type rlim_t = ::core::ffi::c_ulonglong;
768#[repr(C)]
769#[derive(Debug, Default, Copy, Clone)]
770pub struct rlimit {
771 pub rlim_cur: rlim_t,
772 pub rlim_max: rlim_t,
773}
774#[allow(clippy::unnecessary_operation, clippy::identity_op)]
775const _: () = {
776 ["Size of rlimit"][::core::mem::size_of::<rlimit>() - 16usize];
777 ["Alignment of rlimit"][::core::mem::align_of::<rlimit>() - 8usize];
778 ["Offset of field: rlimit::rlim_cur"][::core::mem::offset_of!(rlimit, rlim_cur) - 0usize];
779 ["Offset of field: rlimit::rlim_max"][::core::mem::offset_of!(rlimit, rlim_max) - 8usize];
780};
781#[repr(C)]
782#[derive(Debug, Default, Copy, Clone)]
783pub struct fd_set {
784 pub fds_bits: [::core::ffi::c_ulong; 16usize],
785}
786#[allow(clippy::unnecessary_operation, clippy::identity_op)]
787const _: () = {
788 ["Size of fd_set"][::core::mem::size_of::<fd_set>() - 128usize];
789 ["Alignment of fd_set"][::core::mem::align_of::<fd_set>() - 8usize];
790 ["Offset of field: fd_set::fds_bits"][::core::mem::offset_of!(fd_set, fds_bits) - 0usize];
791};
792#[repr(C)]
793#[derive(Debug, Default, Copy, Clone)]
794pub struct stat {
795 pub st_dev: dev_t,
796 pub st_ino: ino_t,
797 pub st_mode: mode_t,
798 pub st_nlink: nlink_t,
799 pub st_uid: uid_t,
800 pub st_gid: gid_t,
801 pub st_rdev: dev_t,
802 pub st_size: off_t,
803 pub st_blksize: blksize_t,
804 pub st_blocks: blkcnt_t,
805 pub st_atime: timespec,
806 pub st_mtime: timespec,
807 pub st_ctime: timespec,
808}
809#[allow(clippy::unnecessary_operation, clippy::identity_op)]
810const _: () = {
811 ["Size of stat"][::core::mem::size_of::<stat>() - 112usize];
812 ["Alignment of stat"][::core::mem::align_of::<stat>() - 8usize];
813 ["Offset of field: stat::st_dev"][::core::mem::offset_of!(stat, st_dev) - 0usize];
814 ["Offset of field: stat::st_ino"][::core::mem::offset_of!(stat, st_ino) - 8usize];
815 ["Offset of field: stat::st_mode"][::core::mem::offset_of!(stat, st_mode) - 16usize];
816 ["Offset of field: stat::st_nlink"][::core::mem::offset_of!(stat, st_nlink) - 20usize];
817 ["Offset of field: stat::st_uid"][::core::mem::offset_of!(stat, st_uid) - 24usize];
818 ["Offset of field: stat::st_gid"][::core::mem::offset_of!(stat, st_gid) - 28usize];
819 ["Offset of field: stat::st_rdev"][::core::mem::offset_of!(stat, st_rdev) - 32usize];
820 ["Offset of field: stat::st_size"][::core::mem::offset_of!(stat, st_size) - 40usize];
821 ["Offset of field: stat::st_blksize"][::core::mem::offset_of!(stat, st_blksize) - 48usize];
822 ["Offset of field: stat::st_blocks"][::core::mem::offset_of!(stat, st_blocks) - 56usize];
823 ["Offset of field: stat::st_atime"][::core::mem::offset_of!(stat, st_atime) - 64usize];
824 ["Offset of field: stat::st_mtime"][::core::mem::offset_of!(stat, st_mtime) - 80usize];
825 ["Offset of field: stat::st_ctime"][::core::mem::offset_of!(stat, st_ctime) - 96usize];
826};