]> git.proxmox.com Git - rustc.git/blame - src/liblibc/src/unix/bsd/apple/mod.rs
Imported Upstream version 1.9.0+dfsg1
[rustc.git] / src / liblibc / src / unix / bsd / apple / mod.rs
CommitLineData
92a42be0
SL
1//! Apple (ios/darwin)-specific definitions
2//!
3//! This covers *-apple-* triples currently
4
5pub type clock_t = c_ulong;
6pub type time_t = c_long;
7pub type suseconds_t = i32;
8pub type dev_t = i32;
9pub type ino_t = u64;
10pub type mode_t = u16;
11pub type nlink_t = u16;
12pub type blksize_t = i32;
13pub type rlim_t = u64;
14pub type mach_timebase_info_data_t = mach_timebase_info;
15pub type pthread_key_t = c_ulong;
16pub type sigset_t = u32;
9cc50fc6
SL
17pub type fsblkcnt_t = ::c_uint;
18pub type fsfilcnt_t = ::c_uint;
19pub type speed_t = ::c_ulong;
20pub type tcflag_t = ::c_ulong;
92a42be0
SL
21
22pub enum timezone {}
23
24s! {
25 pub struct glob_t {
26 pub gl_pathc: ::size_t,
27 __unused1: ::c_int,
28 pub gl_offs: ::size_t,
29 __unused2: ::c_int,
30 pub gl_pathv: *mut *mut ::c_char,
31
32 __unused3: *mut ::c_void,
33
34 __unused4: *mut ::c_void,
35 __unused5: *mut ::c_void,
36 __unused6: *mut ::c_void,
37 __unused7: *mut ::c_void,
38 __unused8: *mut ::c_void,
39 }
40
41 pub struct sockaddr_storage {
42 pub ss_len: u8,
43 pub ss_family: ::sa_family_t,
44 __ss_pad1: [u8; 6],
45 __ss_align: i64,
46 __ss_pad2: [u8; 112],
47 }
48
49 pub struct addrinfo {
50 pub ai_flags: ::c_int,
51 pub ai_family: ::c_int,
52 pub ai_socktype: ::c_int,
53 pub ai_protocol: ::c_int,
54 pub ai_addrlen: ::socklen_t,
55 pub ai_canonname: *mut ::c_char,
56 pub ai_addr: *mut ::sockaddr,
57 pub ai_next: *mut addrinfo,
58 }
59
60 pub struct mach_timebase_info {
61 pub numer: u32,
62 pub denom: u32,
63 }
64
65 pub struct stat {
66 pub st_dev: dev_t,
67 pub st_mode: mode_t,
68 pub st_nlink: nlink_t,
69 pub st_ino: ino_t,
70 pub st_uid: ::uid_t,
71 pub st_gid: ::gid_t,
72 pub st_rdev: dev_t,
73 pub st_atime: time_t,
74 pub st_atime_nsec: c_long,
75 pub st_mtime: time_t,
76 pub st_mtime_nsec: c_long,
77 pub st_ctime: time_t,
78 pub st_ctime_nsec: c_long,
79 pub st_birthtime: time_t,
80 pub st_birthtime_nsec: c_long,
81 pub st_size: ::off_t,
82 pub st_blocks: ::blkcnt_t,
83 pub st_blksize: blksize_t,
84 pub st_flags: ::uint32_t,
85 pub st_gen: ::uint32_t,
86 pub st_lspare: ::int32_t,
87 pub st_qspare: [::int64_t; 2],
88 }
89
90 pub struct dirent {
91 pub d_ino: u64,
92 pub d_seekoff: u64,
93 pub d_reclen: u16,
94 pub d_namlen: u16,
95 pub d_type: u8,
96 pub d_name: [::c_char; 1024],
97 }
98
99 pub struct pthread_mutex_t {
100 __sig: ::c_long,
101 __opaque: [u8; __PTHREAD_MUTEX_SIZE__],
102 }
103
104 pub struct pthread_mutexattr_t {
105 __sig: ::c_long,
106 __opaque: [u8; 8],
107 }
108
109 pub struct pthread_cond_t {
110 __sig: ::c_long,
111 __opaque: [u8; __PTHREAD_COND_SIZE__],
112 }
113
114 pub struct pthread_rwlock_t {
115 __sig: ::c_long,
116 __opaque: [u8; __PTHREAD_RWLOCK_SIZE__],
117 }
118
119 pub struct siginfo_t {
120 pub si_signo: ::c_int,
121 pub si_errno: ::c_int,
122 pub si_code: ::c_int,
123 pub si_pid: ::pid_t,
124 pub si_uid: ::uid_t,
125 pub si_status: ::c_int,
126 pub si_addr: *mut ::c_void,
127 _pad: [usize; 9],
128 }
129
130 pub struct sigaction {
131 pub sa_sigaction: ::sighandler_t,
132 pub sa_mask: sigset_t,
133 pub sa_flags: ::c_int,
134 }
135
136 pub struct stack_t {
137 pub ss_sp: *mut ::c_void,
138 pub ss_size: ::size_t,
139 pub ss_flags: ::c_int,
140 }
141
142 pub struct fstore_t {
143 pub fst_flags: ::c_uint,
144 pub fst_posmode: ::c_int,
145 pub fst_offset: ::off_t,
146 pub fst_length: ::off_t,
147 pub fst_bytesalloc: ::off_t,
148 }
149
150 pub struct radvisory {
151 pub ra_offset: ::off_t,
152 pub ra_count: ::c_int,
153 }
154
155 pub struct statvfs {
156 pub f_bsize: ::c_ulong,
157 pub f_frsize: ::c_ulong,
158 pub f_blocks: ::fsblkcnt_t,
159 pub f_bfree: ::fsblkcnt_t,
160 pub f_bavail: ::fsblkcnt_t,
161 pub f_files: ::fsfilcnt_t,
162 pub f_ffree: ::fsfilcnt_t,
163 pub f_favail: ::fsfilcnt_t,
164 pub f_fsid: ::c_ulong,
165 pub f_flag: ::c_ulong,
166 pub f_namemax: ::c_ulong,
167 }
9cc50fc6
SL
168
169 pub struct Dl_info {
170 pub dli_fname: *const ::c_char,
171 pub dli_fbase: *mut ::c_void,
172 pub dli_sname: *const ::c_char,
173 pub dli_saddr: *mut ::c_void,
174 }
175
176 pub struct sockaddr_in {
177 pub sin_len: u8,
178 pub sin_family: ::sa_family_t,
179 pub sin_port: ::in_port_t,
180 pub sin_addr: ::in_addr,
181 pub sin_zero: [::c_char; 8],
182 }
183
184 pub struct statfs {
185 pub f_bsize: ::uint32_t,
186 pub f_iosize: ::int32_t,
187 pub f_blocks: ::uint64_t,
188 pub f_bfree: ::uint64_t,
189 pub f_bavail: ::uint64_t,
190 pub f_files: ::uint64_t,
191 pub f_ffree: ::uint64_t,
192 pub f_fsid: ::fsid_t,
193 pub f_owner: ::uid_t,
194 pub f_type: ::uint32_t,
195 pub f_flags: ::uint32_t,
196 pub f_fssubtype: ::uint32_t,
197 pub f_fstypename: [::c_char; 16],
198 pub f_mntonname: [::c_char; 1024],
199 pub f_mntfromname: [::c_char; 1024],
200 pub f_reserved: [::uint32_t; 8],
201 }
202
203 // FIXME: this should have align 4 but it's got align 8 on 64-bit
204 pub struct kevent {
205 pub ident: ::uintptr_t,
206 pub filter: ::int16_t,
207 pub flags: ::uint16_t,
208 pub fflags: ::uint32_t,
209 pub data: ::intptr_t,
210 pub udata: *mut ::c_void,
211 }
212
213 pub struct kevent64_s {
214 pub ident: ::uint64_t,
215 pub filter: ::int16_t,
216 pub flags: ::uint16_t,
217 pub fflags: ::uint32_t,
218 pub data: ::int64_t,
219 pub udata: ::uint64_t,
220 pub ext: [::uint64_t; 2],
221 }
222
223 pub struct dqblk {
224 pub dqb_bhardlimit: ::uint64_t,
225 pub dqb_bsoftlimit: ::uint64_t,
226 pub dqb_curbytes: ::uint64_t,
227 pub dqb_ihardlimit: ::uint32_t,
228 pub dqb_isoftlimit: ::uint32_t,
229 pub dqb_curinodes: ::uint32_t,
230 pub dqb_btime: ::uint32_t,
231 pub dqb_itime: ::uint32_t,
232 pub dqb_id: ::uint32_t,
233 pub dqb_spare: [::uint32_t; 4],
234 }
235
236 pub struct termios {
237 pub c_iflag: ::tcflag_t,
238 pub c_oflag: ::tcflag_t,
239 pub c_cflag: ::tcflag_t,
240 pub c_lflag: ::tcflag_t,
241 pub c_cc: [::cc_t; ::NCCS],
242 pub c_ispeed: ::speed_t,
243 pub c_ospeed: ::speed_t,
244 }
7453a54e
SL
245
246 pub struct flock {
247 pub l_start: ::off_t,
248 pub l_len: ::off_t,
249 pub l_pid: ::pid_t,
250 pub l_type: ::c_short,
251 pub l_whence: ::c_short,
252 }
253
254 pub struct sf_hdtr {
255 pub headers: *mut ::iovec,
256 pub hdr_cnt: ::c_int,
257 pub trailers: *mut ::iovec,
258 pub trl_cnt: ::c_int,
259 }
54a0048b
SL
260
261 pub struct lconv {
262 pub decimal_point: *mut ::c_char,
263 pub thousands_sep: *mut ::c_char,
264 pub grouping: *mut ::c_char,
265 pub int_curr_symbol: *mut ::c_char,
266 pub currency_symbol: *mut ::c_char,
267 pub mon_decimal_point: *mut ::c_char,
268 pub mon_thousands_sep: *mut ::c_char,
269 pub mon_grouping: *mut ::c_char,
270 pub positive_sign: *mut ::c_char,
271 pub negative_sign: *mut ::c_char,
272 pub int_frac_digits: ::c_char,
273 pub frac_digits: ::c_char,
274 pub p_cs_precedes: ::c_char,
275 pub p_sep_by_space: ::c_char,
276 pub n_cs_precedes: ::c_char,
277 pub n_sep_by_space: ::c_char,
278 pub p_sign_posn: ::c_char,
279 pub n_sign_posn: ::c_char,
280 pub int_p_cs_precedes: ::c_char,
281 pub int_n_cs_precedes: ::c_char,
282 pub int_p_sep_by_space: ::c_char,
283 pub int_n_sep_by_space: ::c_char,
284 pub int_p_sign_posn: ::c_char,
285 pub int_n_sign_posn: ::c_char,
286 }
92a42be0
SL
287}
288
289pub const EXIT_FAILURE: ::c_int = 1;
290pub const EXIT_SUCCESS: ::c_int = 0;
291pub const RAND_MAX: ::c_int = 2147483647;
292pub const EOF: ::c_int = -1;
293pub const SEEK_SET: ::c_int = 0;
294pub const SEEK_CUR: ::c_int = 1;
295pub const SEEK_END: ::c_int = 2;
296pub const _IOFBF: ::c_int = 0;
297pub const _IONBF: ::c_int = 2;
298pub const _IOLBF: ::c_int = 1;
299pub const BUFSIZ: ::c_uint = 1024;
300pub const FOPEN_MAX: ::c_uint = 20;
301pub const FILENAME_MAX: ::c_uint = 1024;
302pub const L_tmpnam: ::c_uint = 1024;
303pub const TMP_MAX: ::c_uint = 308915776;
304pub const _PC_NAME_MAX: ::c_int = 4;
305
306pub const O_RDONLY: ::c_int = 0;
307pub const O_WRONLY: ::c_int = 1;
308pub const O_RDWR: ::c_int = 2;
309pub const O_APPEND: ::c_int = 8;
310pub const O_CREAT: ::c_int = 512;
311pub const O_EXCL: ::c_int = 2048;
312pub const O_NOCTTY: ::c_int = 131072;
313pub const O_TRUNC: ::c_int = 1024;
314pub const O_CLOEXEC: ::c_int = 0x1000000;
9cc50fc6 315pub const O_DIRECTORY: ::c_int = 0x100000;
92a42be0
SL
316pub const S_IFIFO: mode_t = 4096;
317pub const S_IFCHR: mode_t = 8192;
318pub const S_IFBLK: mode_t = 24576;
319pub const S_IFDIR: mode_t = 16384;
320pub const S_IFREG: mode_t = 32768;
321pub const S_IFLNK: mode_t = 40960;
322pub const S_IFSOCK: mode_t = 49152;
323pub const S_IFMT: mode_t = 61440;
324pub const S_IEXEC: mode_t = 64;
325pub const S_IWRITE: mode_t = 128;
326pub const S_IREAD: mode_t = 256;
327pub const S_IRWXU: mode_t = 448;
328pub const S_IXUSR: mode_t = 64;
329pub const S_IWUSR: mode_t = 128;
330pub const S_IRUSR: mode_t = 256;
331pub const S_IRWXG: mode_t = 56;
332pub const S_IXGRP: mode_t = 8;
333pub const S_IWGRP: mode_t = 16;
334pub const S_IRGRP: mode_t = 32;
335pub const S_IRWXO: mode_t = 7;
336pub const S_IXOTH: mode_t = 1;
337pub const S_IWOTH: mode_t = 2;
338pub const S_IROTH: mode_t = 4;
339pub const F_OK: ::c_int = 0;
340pub const R_OK: ::c_int = 4;
341pub const W_OK: ::c_int = 2;
342pub const X_OK: ::c_int = 1;
343pub const STDIN_FILENO: ::c_int = 0;
344pub const STDOUT_FILENO: ::c_int = 1;
345pub const STDERR_FILENO: ::c_int = 2;
346pub const F_LOCK: ::c_int = 1;
347pub const F_TEST: ::c_int = 3;
348pub const F_TLOCK: ::c_int = 2;
349pub const F_ULOCK: ::c_int = 0;
7453a54e
SL
350pub const F_GETLK: ::c_int = 7;
351pub const F_SETLK: ::c_int = 8;
352pub const F_SETLKW: ::c_int = 9;
92a42be0
SL
353pub const SIGHUP: ::c_int = 1;
354pub const SIGINT: ::c_int = 2;
355pub const SIGQUIT: ::c_int = 3;
356pub const SIGILL: ::c_int = 4;
357pub const SIGABRT: ::c_int = 6;
358pub const SIGFPE: ::c_int = 8;
359pub const SIGKILL: ::c_int = 9;
360pub const SIGSEGV: ::c_int = 11;
361pub const SIGPIPE: ::c_int = 13;
362pub const SIGALRM: ::c_int = 14;
363pub const SIGTERM: ::c_int = 15;
364
365pub const PROT_NONE: ::c_int = 0;
366pub const PROT_READ: ::c_int = 1;
367pub const PROT_WRITE: ::c_int = 2;
368pub const PROT_EXEC: ::c_int = 4;
369
370pub const MAP_FILE: ::c_int = 0x0000;
371pub const MAP_SHARED: ::c_int = 0x0001;
372pub const MAP_PRIVATE: ::c_int = 0x0002;
373pub const MAP_FIXED: ::c_int = 0x0010;
374pub const MAP_ANON: ::c_int = 0x1000;
375
376pub const MAP_FAILED: *mut ::c_void = !0 as *mut ::c_void;
377
378pub const MCL_CURRENT: ::c_int = 0x0001;
379pub const MCL_FUTURE: ::c_int = 0x0002;
380
381pub const MS_ASYNC: ::c_int = 0x0001;
382pub const MS_INVALIDATE: ::c_int = 0x0002;
383pub const MS_SYNC: ::c_int = 0x0010;
384
385pub const MS_KILLPAGES: ::c_int = 0x0004;
386pub const MS_DEACTIVATE: ::c_int = 0x0008;
387
388pub const EPERM: ::c_int = 1;
389pub const ENOENT: ::c_int = 2;
390pub const ESRCH: ::c_int = 3;
391pub const EINTR: ::c_int = 4;
392pub const EIO: ::c_int = 5;
393pub const ENXIO: ::c_int = 6;
394pub const E2BIG: ::c_int = 7;
395pub const ENOEXEC: ::c_int = 8;
396pub const EBADF: ::c_int = 9;
397pub const ECHILD: ::c_int = 10;
398pub const EDEADLK: ::c_int = 11;
399pub const ENOMEM: ::c_int = 12;
400pub const EACCES: ::c_int = 13;
401pub const EFAULT: ::c_int = 14;
402pub const ENOTBLK: ::c_int = 15;
403pub const EBUSY: ::c_int = 16;
404pub const EEXIST: ::c_int = 17;
405pub const EXDEV: ::c_int = 18;
406pub const ENODEV: ::c_int = 19;
407pub const ENOTDIR: ::c_int = 20;
408pub const EISDIR: ::c_int = 21;
409pub const EINVAL: ::c_int = 22;
410pub const ENFILE: ::c_int = 23;
411pub const EMFILE: ::c_int = 24;
412pub const ENOTTY: ::c_int = 25;
413pub const ETXTBSY: ::c_int = 26;
414pub const EFBIG: ::c_int = 27;
415pub const ENOSPC: ::c_int = 28;
416pub const ESPIPE: ::c_int = 29;
417pub const EROFS: ::c_int = 30;
418pub const EMLINK: ::c_int = 31;
419pub const EPIPE: ::c_int = 32;
420pub const EDOM: ::c_int = 33;
421pub const ERANGE: ::c_int = 34;
422pub const EAGAIN: ::c_int = 35;
423pub const EWOULDBLOCK: ::c_int = EAGAIN;
424pub const EINPROGRESS: ::c_int = 36;
425pub const EALREADY: ::c_int = 37;
426pub const ENOTSOCK: ::c_int = 38;
427pub const EDESTADDRREQ: ::c_int = 39;
428pub const EMSGSIZE: ::c_int = 40;
429pub const EPROTOTYPE: ::c_int = 41;
430pub const ENOPROTOOPT: ::c_int = 42;
431pub const EPROTONOSUPPORT: ::c_int = 43;
432pub const ESOCKTNOSUPPORT: ::c_int = 44;
433pub const ENOTSUP: ::c_int = 45;
434pub const EPFNOSUPPORT: ::c_int = 46;
435pub const EAFNOSUPPORT: ::c_int = 47;
436pub const EADDRINUSE: ::c_int = 48;
437pub const EADDRNOTAVAIL: ::c_int = 49;
438pub const ENETDOWN: ::c_int = 50;
439pub const ENETUNREACH: ::c_int = 51;
440pub const ENETRESET: ::c_int = 52;
441pub const ECONNABORTED: ::c_int = 53;
442pub const ECONNRESET: ::c_int = 54;
443pub const ENOBUFS: ::c_int = 55;
444pub const EISCONN: ::c_int = 56;
445pub const ENOTCONN: ::c_int = 57;
446pub const ESHUTDOWN: ::c_int = 58;
447pub const ETOOMANYREFS: ::c_int = 59;
448pub const ETIMEDOUT: ::c_int = 60;
449pub const ECONNREFUSED: ::c_int = 61;
450pub const ELOOP: ::c_int = 62;
451pub const ENAMETOOLONG: ::c_int = 63;
452pub const EHOSTDOWN: ::c_int = 64;
453pub const EHOSTUNREACH: ::c_int = 65;
454pub const ENOTEMPTY: ::c_int = 66;
455pub const EPROCLIM: ::c_int = 67;
456pub const EUSERS: ::c_int = 68;
457pub const EDQUOT: ::c_int = 69;
458pub const ESTALE: ::c_int = 70;
459pub const EREMOTE: ::c_int = 71;
460pub const EBADRPC: ::c_int = 72;
461pub const ERPCMISMATCH: ::c_int = 73;
462pub const EPROGUNAVAIL: ::c_int = 74;
463pub const EPROGMISMATCH: ::c_int = 75;
464pub const EPROCUNAVAIL: ::c_int = 76;
465pub const ENOLCK: ::c_int = 77;
466pub const ENOSYS: ::c_int = 78;
467pub const EFTYPE: ::c_int = 79;
468pub const EAUTH: ::c_int = 80;
469pub const ENEEDAUTH: ::c_int = 81;
470pub const EPWROFF: ::c_int = 82;
471pub const EDEVERR: ::c_int = 83;
472pub const EOVERFLOW: ::c_int = 84;
473pub const EBADEXEC: ::c_int = 85;
474pub const EBADARCH: ::c_int = 86;
475pub const ESHLIBVERS: ::c_int = 87;
476pub const EBADMACHO: ::c_int = 88;
477pub const ECANCELED: ::c_int = 89;
478pub const EIDRM: ::c_int = 90;
479pub const ENOMSG: ::c_int = 91;
480pub const EILSEQ: ::c_int = 92;
481pub const ENOATTR: ::c_int = 93;
482pub const EBADMSG: ::c_int = 94;
483pub const EMULTIHOP: ::c_int = 95;
484pub const ENODATA: ::c_int = 96;
485pub const ENOLINK: ::c_int = 97;
486pub const ENOSR: ::c_int = 98;
487pub const ENOSTR: ::c_int = 99;
488pub const EPROTO: ::c_int = 100;
489pub const ETIME: ::c_int = 101;
490pub const EOPNOTSUPP: ::c_int = 102;
491pub const ENOPOLICY: ::c_int = 103;
492pub const ENOTRECOVERABLE: ::c_int = 104;
493pub const EOWNERDEAD: ::c_int = 105;
494pub const EQFULL: ::c_int = 106;
495pub const ELAST: ::c_int = 106;
496
497pub const F_DUPFD: ::c_int = 0;
498pub const F_DUPFD_CLOEXEC: ::c_int = 67;
499pub const F_GETFD: ::c_int = 1;
500pub const F_SETFD: ::c_int = 2;
501pub const F_GETFL: ::c_int = 3;
502pub const F_SETFL: ::c_int = 4;
503pub const F_PREALLOCATE: ::c_int = 42;
504pub const F_RDADVISE: ::c_int = 44;
505pub const F_RDAHEAD: ::c_int = 45;
506pub const F_NOCACHE: ::c_int = 48;
507pub const F_GETPATH: ::c_int = 50;
508pub const F_FULLFSYNC: ::c_int = 51;
509pub const F_FREEZE_FS: ::c_int = 53;
510pub const F_THAW_FS: ::c_int = 54;
511pub const F_GLOBAL_NOCACHE: ::c_int = 55;
512pub const F_NODIRECT: ::c_int = 62;
513
514pub const F_ALLOCATECONTIG: ::c_uint = 0x02;
515pub const F_ALLOCATEALL: ::c_uint = 0x04;
516
517pub const F_PEOFPOSMODE: ::c_int = 3;
518pub const F_VOLPOSMODE: ::c_int = 4;
519
520pub const O_ACCMODE: ::c_int = 3;
521
54a0048b
SL
522pub const TIOCMODG: ::c_ulong = 0x40047403;
523pub const TIOCMODS: ::c_ulong = 0x80047404;
524pub const TIOCM_LE: ::c_int = 0x1;
525pub const TIOCM_DTR: ::c_int = 0x2;
526pub const TIOCM_RTS: ::c_int = 0x4;
527pub const TIOCM_ST: ::c_int = 0x8;
528pub const TIOCM_SR: ::c_int = 0x10;
529pub const TIOCM_CTS: ::c_int = 0x20;
530pub const TIOCM_CAR: ::c_int = 0x40;
531pub const TIOCM_CD: ::c_int = 0x40;
532pub const TIOCM_RNG: ::c_int = 0x80;
533pub const TIOCM_RI: ::c_int = 0x80;
534pub const TIOCM_DSR: ::c_int = 0x100;
535pub const TIOCEXCL: ::c_int = 0x2000740d;
536pub const TIOCNXCL: ::c_int = 0x2000740e;
537pub const TIOCFLUSH: ::c_ulong = 0x80047410;
538pub const TIOCGETD: ::c_ulong = 0x4004741a;
539pub const TIOCSETD: ::c_ulong = 0x8004741b;
540pub const TIOCIXON: ::c_uint = 0x20007481;
541pub const TIOCIXOFF: ::c_uint = 0x20007480;
542pub const TIOCSBRK: ::c_uint = 0x2000747b;
543pub const TIOCCBRK: ::c_uint = 0x2000747a;
544pub const TIOCSDTR: ::c_uint = 0x20007479;
545pub const TIOCCDTR: ::c_uint = 0x20007478;
546pub const TIOCGPGRP: ::c_ulong = 0x40047477;
547pub const TIOCSPGRP: ::c_ulong = 0x80047476;
548pub const TIOCOUTQ: ::c_ulong = 0x40047473;
549pub const TIOCSTI: ::c_ulong = 0x80017472;
550pub const TIOCNOTTY: ::c_uint = 0x20007471;
551pub const TIOCPKT: ::c_ulong = 0x80047470;
552pub const TIOCPKT_DATA: ::c_int = 0x0;
553pub const TIOCPKT_FLUSHREAD: ::c_int = 0x1;
554pub const TIOCPKT_FLUSHWRITE: ::c_int = 0x2;
555pub const TIOCPKT_STOP: ::c_int = 0x4;
556pub const TIOCPKT_START: ::c_int = 0x8;
557pub const TIOCPKT_NOSTOP: ::c_int = 0x10;
558pub const TIOCPKT_DOSTOP: ::c_int = 0x20;
559pub const TIOCPKT_IOCTL: ::c_int = 0x40;
560pub const TIOCSTOP: ::c_uint = 0x2000746f;
561pub const TIOCSTART: ::c_uint = 0x2000746e;
562pub const TIOCMSET: ::c_ulong = 0x8004746d;
563pub const TIOCMBIS: ::c_ulong = 0x8004746c;
564pub const TIOCMBIC: ::c_ulong = 0x8004746b;
565pub const TIOCMGET: ::c_ulong = 0x4004746a;
566pub const TIOCREMOTE: ::c_ulong = 0x80047469;
567pub const TIOCGWINSZ: ::c_ulong = 0x40087468;
568pub const TIOCSWINSZ: ::c_ulong = 0x80087467;
569pub const TIOCUCNTL: ::c_ulong = 0x80047466;
570pub const TIOCSTAT: ::c_uint = 0x20007465;
571pub const TIOCSCONS: ::c_uint = 0x20007463;
572pub const TIOCCONS: ::c_ulong = 0x80047462;
573pub const TIOCSCTTY: ::c_uint = 0x20007461;
574pub const TIOCEXT: ::c_ulong = 0x80047460;
575pub const TIOCSIG: ::c_uint = 0x2000745f;
576pub const TIOCDRAIN: ::c_uint = 0x2000745e;
577pub const TIOCMSDTRWAIT: ::c_ulong = 0x8004745b;
578pub const TIOCMGDTRWAIT: ::c_ulong = 0x4004745a;
579pub const TIOCSDRAINWAIT: ::c_ulong = 0x80047457;
580pub const TIOCGDRAINWAIT: ::c_ulong = 0x40047456;
581pub const TIOCDSIMICROCODE: ::c_uint = 0x20007455;
582pub const TIOCPTYGRANT: ::c_uint = 0x20007454;
583pub const TIOCPTYGNAME: ::c_uint = 0x40807453;
584pub const TIOCPTYUNLK: ::c_uint = 0x20007452;
585
92a42be0
SL
586pub const SIGTRAP: ::c_int = 5;
587
588pub const GLOB_APPEND : ::c_int = 0x0001;
589pub const GLOB_DOOFFS : ::c_int = 0x0002;
590pub const GLOB_ERR : ::c_int = 0x0004;
591pub const GLOB_MARK : ::c_int = 0x0008;
592pub const GLOB_NOCHECK : ::c_int = 0x0010;
593pub const GLOB_NOSORT : ::c_int = 0x0020;
594pub const GLOB_NOESCAPE: ::c_int = 0x2000;
595
596pub const GLOB_NOSPACE : ::c_int = -1;
597pub const GLOB_ABORTED : ::c_int = -2;
598pub const GLOB_NOMATCH : ::c_int = -3;
599
600pub const POSIX_MADV_NORMAL: ::c_int = 0;
601pub const POSIX_MADV_RANDOM: ::c_int = 1;
602pub const POSIX_MADV_SEQUENTIAL: ::c_int = 2;
603pub const POSIX_MADV_WILLNEED: ::c_int = 3;
604pub const POSIX_MADV_DONTNEED: ::c_int = 4;
605
606pub const _SC_IOV_MAX: ::c_int = 56;
607pub const _SC_GETGR_R_SIZE_MAX: ::c_int = 70;
608pub const _SC_GETPW_R_SIZE_MAX: ::c_int = 71;
609pub const _SC_LOGIN_NAME_MAX: ::c_int = 73;
610pub const _SC_MQ_PRIO_MAX: ::c_int = 75;
611pub const _SC_THREAD_ATTR_STACKADDR: ::c_int = 82;
612pub const _SC_THREAD_ATTR_STACKSIZE: ::c_int = 83;
613pub const _SC_THREAD_DESTRUCTOR_ITERATIONS: ::c_int = 85;
614pub const _SC_THREAD_KEYS_MAX: ::c_int = 86;
615pub const _SC_THREAD_PRIO_INHERIT: ::c_int = 87;
616pub const _SC_THREAD_PRIO_PROTECT: ::c_int = 88;
617pub const _SC_THREAD_PRIORITY_SCHEDULING: ::c_int = 89;
618pub const _SC_THREAD_PROCESS_SHARED: ::c_int = 90;
619pub const _SC_THREAD_SAFE_FUNCTIONS: ::c_int = 91;
620pub const _SC_THREAD_STACK_MIN: ::c_int = 93;
621pub const _SC_THREAD_THREADS_MAX: ::c_int = 94;
622pub const _SC_THREADS: ::c_int = 96;
623pub const _SC_TTY_NAME_MAX: ::c_int = 101;
624pub const _SC_ATEXIT_MAX: ::c_int = 107;
625pub const _SC_XOPEN_CRYPT: ::c_int = 108;
626pub const _SC_XOPEN_ENH_I18N: ::c_int = 109;
627pub const _SC_XOPEN_LEGACY: ::c_int = 110;
628pub const _SC_XOPEN_REALTIME: ::c_int = 111;
629pub const _SC_XOPEN_REALTIME_THREADS: ::c_int = 112;
630pub const _SC_XOPEN_SHM: ::c_int = 113;
631pub const _SC_XOPEN_UNIX: ::c_int = 115;
632pub const _SC_XOPEN_VERSION: ::c_int = 116;
633pub const _SC_XOPEN_XCU_VERSION: ::c_int = 121;
634
635pub const PTHREAD_CREATE_JOINABLE: ::c_int = 1;
636pub const PTHREAD_CREATE_DETACHED: ::c_int = 2;
637pub const PTHREAD_STACK_MIN: ::size_t = 8192;
638
639pub const RLIMIT_CPU: ::c_int = 0;
640pub const RLIMIT_FSIZE: ::c_int = 1;
641pub const RLIMIT_DATA: ::c_int = 2;
642pub const RLIMIT_STACK: ::c_int = 3;
643pub const RLIMIT_CORE: ::c_int = 4;
644pub const RLIMIT_AS: ::c_int = 5;
645pub const RLIMIT_MEMLOCK: ::c_int = 6;
646pub const RLIMIT_NPROC: ::c_int = 7;
647pub const RLIMIT_NOFILE: ::c_int = 8;
648pub const RLIM_NLIMITS: ::c_int = 9;
649pub const _RLIMIT_POSIX_FLAG: ::c_int = 0x1000;
650
651pub const RLIM_INFINITY: rlim_t = 0x7fff_ffff_ffff_ffff;
652
653pub const RUSAGE_SELF: ::c_int = 0;
654pub const RUSAGE_CHILDREN: ::c_int = -1;
655
656pub const MADV_NORMAL: ::c_int = 0;
657pub const MADV_RANDOM: ::c_int = 1;
658pub const MADV_SEQUENTIAL: ::c_int = 2;
659pub const MADV_WILLNEED: ::c_int = 3;
660pub const MADV_DONTNEED: ::c_int = 4;
661pub const MADV_FREE: ::c_int = 5;
662pub const MADV_ZERO_WIRED_PAGES: ::c_int = 6;
663pub const MADV_FREE_REUSABLE: ::c_int = 7;
664pub const MADV_FREE_REUSE: ::c_int = 8;
665pub const MADV_CAN_REUSE: ::c_int = 9;
666
667pub const MINCORE_INCORE: ::c_int = 0x1;
668pub const MINCORE_REFERENCED: ::c_int = 0x2;
669pub const MINCORE_MODIFIED: ::c_int = 0x4;
670pub const MINCORE_REFERENCED_OTHER: ::c_int = 0x8;
671pub const MINCORE_MODIFIED_OTHER: ::c_int = 0x10;
672
673pub const AF_UNIX: ::c_int = 1;
674pub const AF_INET: ::c_int = 2;
675pub const AF_INET6: ::c_int = 30;
676pub const SOCK_STREAM: ::c_int = 1;
677pub const SOCK_DGRAM: ::c_int = 2;
678pub const SOCK_RAW: ::c_int = 3;
679pub const IPPROTO_TCP: ::c_int = 6;
680pub const IPPROTO_IP: ::c_int = 0;
681pub const IPPROTO_IPV6: ::c_int = 41;
682pub const IP_MULTICAST_TTL: ::c_int = 10;
683pub const IP_MULTICAST_LOOP: ::c_int = 11;
684pub const IP_TTL: ::c_int = 4;
685pub const IP_HDRINCL: ::c_int = 2;
686pub const IP_ADD_MEMBERSHIP: ::c_int = 12;
687pub const IP_DROP_MEMBERSHIP: ::c_int = 13;
688pub const IPV6_JOIN_GROUP: ::c_int = 12;
689pub const IPV6_LEAVE_GROUP: ::c_int = 13;
690
691pub const TCP_NODELAY: ::c_int = 0x01;
692pub const TCP_KEEPALIVE: ::c_int = 0x10;
693pub const SOL_SOCKET: ::c_int = 0xffff;
694
695pub const SO_DEBUG: ::c_int = 0x01;
696pub const SO_ACCEPTCONN: ::c_int = 0x0002;
697pub const SO_REUSEADDR: ::c_int = 0x0004;
698pub const SO_KEEPALIVE: ::c_int = 0x0008;
699pub const SO_DONTROUTE: ::c_int = 0x0010;
700pub const SO_BROADCAST: ::c_int = 0x0020;
701pub const SO_USELOOPBACK: ::c_int = 0x0040;
702pub const SO_LINGER: ::c_int = 0x0080;
703pub const SO_OOBINLINE: ::c_int = 0x0100;
704pub const SO_REUSEPORT: ::c_int = 0x0200;
705pub const SO_SNDBUF: ::c_int = 0x1001;
706pub const SO_RCVBUF: ::c_int = 0x1002;
707pub const SO_SNDLOWAT: ::c_int = 0x1003;
708pub const SO_RCVLOWAT: ::c_int = 0x1004;
709pub const SO_SNDTIMEO: ::c_int = 0x1005;
710pub const SO_RCVTIMEO: ::c_int = 0x1006;
711pub const SO_ERROR: ::c_int = 0x1007;
712pub const SO_TYPE: ::c_int = 0x1008;
713
714pub const IFF_LOOPBACK: ::c_int = 0x8;
715
716pub const SHUT_RD: ::c_int = 0;
717pub const SHUT_WR: ::c_int = 1;
718pub const SHUT_RDWR: ::c_int = 2;
719
720pub const LOCK_SH: ::c_int = 1;
721pub const LOCK_EX: ::c_int = 2;
722pub const LOCK_NB: ::c_int = 4;
723pub const LOCK_UN: ::c_int = 8;
724
725pub const O_DSYNC: ::c_int = 4194304;
726pub const O_SYNC: ::c_int = 128;
727pub const O_NONBLOCK: ::c_int = 4;
728
729pub const MAP_COPY: ::c_int = 0x0002;
730pub const MAP_RENAME: ::c_int = 0x0020;
731pub const MAP_NORESERVE: ::c_int = 0x0040;
732pub const MAP_NOEXTEND: ::c_int = 0x0100;
733pub const MAP_HASSEMAPHORE: ::c_int = 0x0200;
734pub const MAP_NOCACHE: ::c_int = 0x0400;
735pub const MAP_JIT: ::c_int = 0x0800;
736
737pub const IPPROTO_RAW: ::c_int = 255;
738
739pub const SO_NREAD: ::c_int = 0x1020;
740pub const SO_NKE: ::c_int = 0x1021;
741pub const SO_NOSIGPIPE: ::c_int = 0x1022;
742pub const SO_NOADDRERR: ::c_int = 0x1023;
743pub const SO_NWRITE: ::c_int = 0x1024;
744pub const SO_DONTTRUNC: ::c_int = 0x2000;
745pub const SO_WANTMORE: ::c_int = 0x4000;
746pub const SO_WANTOOBFLAG: ::c_int = 0x8000;
747
92a42be0
SL
748pub const _SC_ARG_MAX: ::c_int = 1;
749pub const _SC_CHILD_MAX: ::c_int = 2;
750pub const _SC_CLK_TCK: ::c_int = 3;
751pub const _SC_NGROUPS_MAX: ::c_int = 4;
752pub const _SC_OPEN_MAX: ::c_int = 5;
753pub const _SC_JOB_CONTROL: ::c_int = 6;
754pub const _SC_SAVED_IDS: ::c_int = 7;
755pub const _SC_VERSION: ::c_int = 8;
756pub const _SC_BC_BASE_MAX: ::c_int = 9;
757pub const _SC_BC_DIM_MAX: ::c_int = 10;
758pub const _SC_BC_SCALE_MAX: ::c_int = 11;
759pub const _SC_BC_STRING_MAX: ::c_int = 12;
760pub const _SC_COLL_WEIGHTS_MAX: ::c_int = 13;
761pub const _SC_EXPR_NEST_MAX: ::c_int = 14;
762pub const _SC_LINE_MAX: ::c_int = 15;
763pub const _SC_RE_DUP_MAX: ::c_int = 16;
764pub const _SC_2_VERSION: ::c_int = 17;
765pub const _SC_2_C_BIND: ::c_int = 18;
766pub const _SC_2_C_DEV: ::c_int = 19;
767pub const _SC_2_CHAR_TERM: ::c_int = 20;
768pub const _SC_2_FORT_DEV: ::c_int = 21;
769pub const _SC_2_FORT_RUN: ::c_int = 22;
770pub const _SC_2_LOCALEDEF: ::c_int = 23;
771pub const _SC_2_SW_DEV: ::c_int = 24;
772pub const _SC_2_UPE: ::c_int = 25;
773pub const _SC_STREAM_MAX: ::c_int = 26;
774pub const _SC_TZNAME_MAX: ::c_int = 27;
775pub const _SC_ASYNCHRONOUS_IO: ::c_int = 28;
776pub const _SC_PAGESIZE: ::c_int = 29;
777pub const _SC_MEMLOCK: ::c_int = 30;
778pub const _SC_MEMLOCK_RANGE: ::c_int = 31;
779pub const _SC_MEMORY_PROTECTION: ::c_int = 32;
780pub const _SC_MESSAGE_PASSING: ::c_int = 33;
781pub const _SC_PRIORITIZED_IO: ::c_int = 34;
782pub const _SC_PRIORITY_SCHEDULING: ::c_int = 35;
783pub const _SC_REALTIME_SIGNALS: ::c_int = 36;
784pub const _SC_SEMAPHORES: ::c_int = 37;
785pub const _SC_FSYNC: ::c_int = 38;
786pub const _SC_SHARED_MEMORY_OBJECTS: ::c_int = 39;
787pub const _SC_SYNCHRONIZED_IO: ::c_int = 40;
788pub const _SC_TIMERS: ::c_int = 41;
789pub const _SC_AIO_LISTIO_MAX: ::c_int = 42;
790pub const _SC_AIO_MAX: ::c_int = 43;
791pub const _SC_AIO_PRIO_DELTA_MAX: ::c_int = 44;
792pub const _SC_DELAYTIMER_MAX: ::c_int = 45;
793pub const _SC_MQ_OPEN_MAX: ::c_int = 46;
794pub const _SC_MAPPED_FILES: ::c_int = 47;
795pub const _SC_RTSIG_MAX: ::c_int = 48;
796pub const _SC_SEM_NSEMS_MAX: ::c_int = 49;
797pub const _SC_SEM_VALUE_MAX: ::c_int = 50;
798pub const _SC_SIGQUEUE_MAX: ::c_int = 51;
799pub const _SC_TIMER_MAX: ::c_int = 52;
800pub const _SC_NPROCESSORS_CONF: ::c_int = 57;
801pub const _SC_NPROCESSORS_ONLN: ::c_int = 58;
802pub const _SC_2_PBS: ::c_int = 59;
803pub const _SC_2_PBS_ACCOUNTING: ::c_int = 60;
804pub const _SC_2_PBS_CHECKPOINT: ::c_int = 61;
805pub const _SC_2_PBS_LOCATE: ::c_int = 62;
806pub const _SC_2_PBS_MESSAGE: ::c_int = 63;
807pub const _SC_2_PBS_TRACK: ::c_int = 64;
808pub const _SC_ADVISORY_INFO: ::c_int = 65;
809pub const _SC_BARRIERS: ::c_int = 66;
810pub const _SC_CLOCK_SELECTION: ::c_int = 67;
811pub const _SC_CPUTIME: ::c_int = 68;
812pub const _SC_FILE_LOCKING: ::c_int = 69;
813pub const _SC_HOST_NAME_MAX: ::c_int = 72;
814pub const _SC_MONOTONIC_CLOCK: ::c_int = 74;
815pub const _SC_READER_WRITER_LOCKS: ::c_int = 76;
816pub const _SC_REGEXP: ::c_int = 77;
817pub const _SC_SHELL: ::c_int = 78;
818pub const _SC_SPAWN: ::c_int = 79;
819pub const _SC_SPIN_LOCKS: ::c_int = 80;
820pub const _SC_SPORADIC_SERVER: ::c_int = 81;
821pub const _SC_THREAD_CPUTIME: ::c_int = 84;
822pub const _SC_THREAD_SPORADIC_SERVER: ::c_int = 92;
823pub const _SC_TIMEOUTS: ::c_int = 95;
824pub const _SC_TRACE: ::c_int = 97;
825pub const _SC_TRACE_EVENT_FILTER: ::c_int = 98;
826pub const _SC_TRACE_INHERIT: ::c_int = 99;
827pub const _SC_TRACE_LOG: ::c_int = 100;
828pub const _SC_TYPED_MEMORY_OBJECTS: ::c_int = 102;
829pub const _SC_V6_ILP32_OFF32: ::c_int = 103;
830pub const _SC_V6_ILP32_OFFBIG: ::c_int = 104;
831pub const _SC_V6_LP64_OFF64: ::c_int = 105;
832pub const _SC_V6_LPBIG_OFFBIG: ::c_int = 106;
833pub const _SC_IPV6: ::c_int = 118;
834pub const _SC_RAW_SOCKETS: ::c_int = 119;
835pub const _SC_SYMLOOP_MAX: ::c_int = 120;
836pub const _SC_PAGE_SIZE: ::c_int = _SC_PAGESIZE;
837pub const _SC_XOPEN_STREAMS: ::c_int = 114;
838pub const _SC_XBS5_ILP32_OFF32: ::c_int = 122;
839pub const _SC_XBS5_ILP32_OFFBIG: ::c_int = 123;
840pub const _SC_XBS5_LP64_OFF64: ::c_int = 124;
841pub const _SC_XBS5_LPBIG_OFFBIG: ::c_int = 125;
842pub const _SC_SS_REPL_MAX: ::c_int = 126;
843pub const _SC_TRACE_EVENT_NAME_MAX: ::c_int = 127;
844pub const _SC_TRACE_NAME_MAX: ::c_int = 128;
845pub const _SC_TRACE_SYS_MAX: ::c_int = 129;
846pub const _SC_TRACE_USER_EVENT_MAX: ::c_int = 130;
847pub const _SC_PASS_MAX: ::c_int = 131;
848
849pub const PTHREAD_MUTEX_RECURSIVE: ::c_int = 2;
850pub const _PTHREAD_MUTEX_SIG_init: ::c_long = 0x32AAABA7;
851pub const _PTHREAD_COND_SIG_init: ::c_long = 0x3CB0B1BB;
852pub const _PTHREAD_RWLOCK_SIG_init: ::c_long = 0x2DA8B3B4;
853pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = pthread_mutex_t {
854 __sig: _PTHREAD_MUTEX_SIG_init,
855 __opaque: [0; __PTHREAD_MUTEX_SIZE__],
856};
857pub const PTHREAD_COND_INITIALIZER: pthread_cond_t = pthread_cond_t {
858 __sig: _PTHREAD_COND_SIG_init,
859 __opaque: [0; __PTHREAD_COND_SIZE__],
860};
861pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = pthread_rwlock_t {
862 __sig: _PTHREAD_RWLOCK_SIG_init,
863 __opaque: [0; __PTHREAD_RWLOCK_SIZE__],
864};
865
866pub const SIGSTKSZ: ::size_t = 131072;
867
9cc50fc6
SL
868pub const FD_SETSIZE: usize = 1024;
869
870pub const ST_NOSUID: ::c_ulong = 2;
871
872pub const HW_AVAILCPU: ::c_int = 25;
873
874pub const EVFILT_AIO: ::int16_t = 0xfffd;
875pub const EVFILT_PROC: ::int16_t = 0xfffb;
876pub const EVFILT_READ: ::int16_t = 0xffff;
877pub const EVFILT_SIGNAL: ::int16_t = 0xfffa;
878pub const EVFILT_SYSCOUNT: ::int16_t = 0xe;
879pub const EVFILT_TIMER: ::int16_t = 0xfff9;
880pub const EVFILT_VNODE: ::int16_t = 0xfffc;
881pub const EVFILT_WRITE: ::int16_t = 0xfffe;
882pub const EVFILT_FS: ::int16_t = 0xfff7;
883pub const EVFILT_MACHPORT: ::int16_t = 0xfff8;
884pub const EVFILT_USER: ::int16_t = 0xfff6;
885pub const EVFILT_VM: ::int16_t = 0xfff4;
886
887pub const EV_DISPATCH: ::uint16_t = 0x80;
888pub const EV_FLAG0: ::uint16_t = 0x1000;
889pub const EV_OOBAND: ::uint16_t = 0x2000;
890pub const EV_POLL: ::uint16_t = 0x1000;
891pub const EV_RECEIPT: ::uint16_t = 0x40;
892
893pub const NOTE_ABSOLUTE: ::uint32_t = 0x8;
894pub const NOTE_EXITSTATUS: ::uint32_t = 0x04000000;
895pub const NOTE_EXIT_REPARENTED: ::uint32_t = 0x00080000;
896pub const NOTE_FFAND: ::uint32_t = 0x40000000;
897pub const NOTE_FFCOPY: ::uint32_t = 0xc0000000;
898pub const NOTE_FFCTRLMASK: ::uint32_t = 0xc0000000;
899pub const NOTE_FFLAGSMASK: ::uint32_t = 0x00ffffff;
900pub const NOTE_FFNOP: ::uint32_t = 0x0;
901pub const NOTE_FFOR: ::uint32_t = 0x80000000;
902pub const NOTE_NONE: ::uint32_t = 0x80;
903pub const NOTE_NSECONDS: ::uint32_t = 0x4;
904pub const NOTE_REAP: ::uint32_t = 0x10000000;
905pub const NOTE_SECONDS: ::uint32_t = 0x1;
906pub const NOTE_SIGNAL: ::uint32_t = 0x8000000;
907pub const NOTE_TRIGGER: ::uint32_t = 0x01000000;
908pub const NOTE_USECONDS: ::uint32_t = 0x2;
909pub const NOTE_VM_ERROR: ::uint32_t = 0x10000000;
910pub const NOTE_VM_PRESSURE: ::uint32_t = 0x80000000;
911pub const NOTE_VM_PRESSURE_SUDDEN_TERMINATE: ::uint32_t = 0x20000000;
912pub const NOTE_VM_PRESSURE_TERMINATE: ::uint32_t = 0x40000000;
913pub const NOTE_PCTRLMASK: ::uint32_t = 0xfff00000;
914
7453a54e
SL
915pub const NL0: ::c_int = 0x00000000;
916pub const NL1: ::c_int = 0x00000100;
917pub const TAB0: ::c_int = 0x00000000;
918pub const TAB1: ::c_int = 0x00000400;
919pub const TAB2: ::c_int = 0x00000800;
920pub const CR0: ::c_int = 0x00000000;
921pub const CR1: ::c_int = 0x00001000;
922pub const CR2: ::c_int = 0x00002000;
923pub const CR3: ::c_int = 0x00003000;
924pub const FF0: ::c_int = 0x00000000;
925pub const FF1: ::c_int = 0x00004000;
926pub const BS0: ::c_int = 0x00000000;
927pub const BS1: ::c_int = 0x00008000;
9cc50fc6
SL
928pub const TAB3: ::c_int = 0x00000004;
929pub const VT0: ::c_int = 0x00000000;
930pub const VT1: ::c_int = 0x00010000;
931pub const IUTF8: ::tcflag_t = 0x00004000;
932pub const CRTSCTS: ::tcflag_t = 0x00030000;
933
934pub const NI_MAXHOST: ::socklen_t = 1025;
935
7453a54e
SL
936pub const Q_GETQUOTA: ::c_int = 0x300;
937pub const Q_SETQUOTA: ::c_int = 0x400;
938
939pub const RTLD_LOCAL: ::c_int = 0x4;
940pub const RTLD_FIRST: ::c_int = 0x100;
941pub const RTLD_NODELETE: ::c_int = 0x80;
942pub const RTLD_NOLOAD: ::c_int = 0x10;
943pub const RTLD_GLOBAL: ::c_int = 0x8;
944
92a42be0 945extern {
9cc50fc6
SL
946 pub fn getnameinfo(sa: *const ::sockaddr,
947 salen: ::socklen_t,
948 host: *mut ::c_char,
949 hostlen: ::socklen_t,
950 serv: *mut ::c_char,
951 sevlen: ::socklen_t,
952 flags: ::c_int) -> ::c_int;
953 pub fn mincore(addr: *const ::c_void, len: ::size_t,
954 vec: *mut ::c_char) -> ::c_int;
955 pub fn sysctlnametomib(name: *const ::c_char,
956 mibp: *mut ::c_int,
957 sizep: *mut ::size_t)
958 -> ::c_int;
92a42be0
SL
959 #[cfg_attr(all(target_os = "macos", target_arch = "x86"),
960 link_name = "mprotect$UNIX2003")]
961 pub fn mprotect(addr: *mut ::c_void, len: ::size_t, prot: ::c_int)
962 -> ::c_int;
963 pub fn shm_open(name: *const ::c_char, oflag: ::c_int, ...) -> ::c_int;
964 pub fn sysctl(name: *mut ::c_int,
965 namelen: ::c_uint,
966 oldp: *mut ::c_void,
967 oldlenp: *mut ::size_t,
968 newp: *mut ::c_void,
969 newlen: ::size_t)
970 -> ::c_int;
971 pub fn sysctlbyname(name: *const ::c_char,
972 oldp: *mut ::c_void,
973 oldlenp: *mut ::size_t,
974 newp: *mut ::c_void,
975 newlen: ::size_t)
976 -> ::c_int;
977 pub fn mach_absolute_time() -> u64;
978 pub fn mach_timebase_info(info: *mut ::mach_timebase_info) -> ::c_int;
979 pub fn pthread_setname_np(name: *const ::c_char) -> ::c_int;
980 pub fn pthread_get_stackaddr_np(thread: ::pthread_t) -> *mut ::c_void;
981 pub fn pthread_get_stacksize_np(thread: ::pthread_t) -> ::size_t;
982 pub fn __error() -> *mut ::c_int;
983 pub fn backtrace(buf: *mut *mut ::c_void,
984 sz: ::c_int) -> ::c_int;
9cc50fc6
SL
985 #[cfg_attr(target_os = "macos", link_name = "statfs$INODE64")]
986 pub fn statfs(path: *const ::c_char, buf: *mut statfs) -> ::c_int;
987 #[cfg_attr(target_os = "macos", link_name = "fstatfs$INODE64")]
988 pub fn fstatfs(fd: ::c_int, buf: *mut statfs) -> ::c_int;
989 pub fn kevent(kq: ::c_int,
990 changelist: *const ::kevent,
991 nchanges: ::c_int,
992 eventlist: *mut ::kevent,
993 nevents: ::c_int,
994 timeout: *const ::timespec) -> ::c_int;
995 pub fn kevent64(kq: ::c_int,
996 changelist: *const ::kevent64_s,
997 nchanges: ::c_int,
998 eventlist: *mut ::kevent64_s,
999 nevents: ::c_int,
1000 flags: ::c_uint,
1001 timeout: *const ::timespec) -> ::c_int;
1002 pub fn mount(src: *const ::c_char,
1003 target: *const ::c_char,
1004 flags: ::c_int,
1005 data: *mut ::c_void) -> ::c_int;
1006 pub fn ptrace(requeset: ::c_int,
1007 pid: ::pid_t,
1008 addr: *mut ::c_char,
1009 data: ::c_int) -> ::c_int;
1010 pub fn quotactl(special: *const ::c_char,
1011 cmd: ::c_int,
1012 id: ::c_int,
1013 data: *mut ::c_char) -> ::c_int;
1014 pub fn sethostname(name: *const ::c_char, len: ::c_int) -> ::c_int;
7453a54e
SL
1015 pub fn sendfile(fd: ::c_int,
1016 s: ::c_int,
1017 offset: ::off_t,
1018 len: *mut ::off_t,
1019 hdtr: *mut ::sf_hdtr,
1020 flags: ::c_int) -> ::c_int;
54a0048b
SL
1021 pub fn openpty(amaster: *mut ::c_int,
1022 aslave: *mut ::c_int,
1023 name: *mut ::c_char,
1024 termp: *mut termios,
1025 winp: *mut ::winsize) -> ::c_int;
1026 pub fn forkpty(amaster: *mut ::c_int,
1027 name: *mut ::c_char,
1028 termp: *mut termios,
1029 winp: *mut ::winsize) -> ::pid_t;
92a42be0
SL
1030}
1031
1032cfg_if! {
1033 if #[cfg(any(target_arch = "arm", target_arch = "x86"))] {
1034 mod b32;
1035 pub use self::b32::*;
1036 } else if #[cfg(any(target_arch = "x86_64", target_arch = "aarch64"))] {
1037 mod b64;
1038 pub use self::b64::*;
1039 } else {
54a0048b 1040 // Unknown target_arch
92a42be0
SL
1041 }
1042}