1 use crate::prelude::*;
2 use crate::{off64_t, off_t, pthread_mutex_t};
3 
4 pub type blksize_t = i64;
5 pub type nlink_t = u64;
6 pub type suseconds_t = i64;
7 pub type wchar_t = i32;
8 pub type __u64 = c_ulong;
9 pub type __s64 = c_long;
10 
11 s! {
12     pub struct stat {
13         pub st_dev: c_ulong,
14         st_pad1: [c_long; 2],
15         pub st_ino: crate::ino_t,
16         pub st_mode: crate::mode_t,
17         pub st_nlink: crate::nlink_t,
18         pub st_uid: crate::uid_t,
19         pub st_gid: crate::gid_t,
20         pub st_rdev: c_ulong,
21         st_pad2: [c_ulong; 1],
22         pub st_size: off_t,
23         st_pad3: c_long,
24         pub st_atime: crate::time_t,
25         pub st_atime_nsec: c_long,
26         pub st_mtime: crate::time_t,
27         pub st_mtime_nsec: c_long,
28         pub st_ctime: crate::time_t,
29         pub st_ctime_nsec: c_long,
30         pub st_blksize: crate::blksize_t,
31         st_pad4: c_long,
32         pub st_blocks: crate::blkcnt_t,
33         st_pad5: [c_long; 7],
34     }
35 
36     pub struct statfs {
37         pub f_type: c_long,
38         pub f_bsize: c_long,
39         pub f_frsize: c_long,
40         pub f_blocks: crate::fsblkcnt_t,
41         pub f_bfree: crate::fsblkcnt_t,
42         pub f_files: crate::fsblkcnt_t,
43         pub f_ffree: crate::fsblkcnt_t,
44         pub f_bavail: crate::fsblkcnt_t,
45         pub f_fsid: crate::fsid_t,
46 
47         pub f_namelen: c_long,
48         f_spare: [c_long; 6],
49     }
50 
51     pub struct flock {
52         pub l_type: c_short,
53         pub l_whence: c_short,
54         pub l_start: off_t,
55         pub l_len: off_t,
56         pub l_pid: crate::pid_t,
57     }
58 
59     pub struct flock64 {
60         pub l_type: c_short,
61         pub l_whence: c_short,
62         pub l_start: off64_t,
63         pub l_len: off64_t,
64         pub l_pid: crate::pid_t,
65     }
66 
67     pub struct stat64 {
68         pub st_dev: c_ulong,
69         st_pad1: [c_long; 2],
70         pub st_ino: crate::ino64_t,
71         pub st_mode: crate::mode_t,
72         pub st_nlink: crate::nlink_t,
73         pub st_uid: crate::uid_t,
74         pub st_gid: crate::gid_t,
75         pub st_rdev: c_ulong,
76         st_pad2: [c_long; 2],
77         pub st_size: off64_t,
78         pub st_atime: crate::time_t,
79         pub st_atime_nsec: c_long,
80         pub st_mtime: crate::time_t,
81         pub st_mtime_nsec: c_long,
82         pub st_ctime: crate::time_t,
83         pub st_ctime_nsec: c_long,
84         pub st_blksize: crate::blksize_t,
85         st_pad3: c_long,
86         pub st_blocks: crate::blkcnt64_t,
87         st_pad5: [c_long; 7],
88     }
89 
90     pub struct statfs64 {
91         pub f_type: c_long,
92         pub f_bsize: c_long,
93         pub f_frsize: c_long,
94         pub f_blocks: u64,
95         pub f_bfree: u64,
96         pub f_files: u64,
97         pub f_ffree: u64,
98         pub f_bavail: u64,
99         pub f_fsid: crate::fsid_t,
100         pub f_namelen: c_long,
101         pub f_flags: c_long,
102         pub f_spare: [c_long; 5],
103     }
104 
105     pub struct statvfs {
106         pub f_bsize: c_ulong,
107         pub f_frsize: c_ulong,
108         pub f_blocks: crate::fsblkcnt_t,
109         pub f_bfree: crate::fsblkcnt_t,
110         pub f_bavail: crate::fsblkcnt_t,
111         pub f_files: crate::fsfilcnt_t,
112         pub f_ffree: crate::fsfilcnt_t,
113         pub f_favail: crate::fsfilcnt_t,
114         pub f_fsid: c_ulong,
115         pub f_flag: c_ulong,
116         pub f_namemax: c_ulong,
117         __f_spare: [c_int; 6],
118     }
119 
120     pub struct statvfs64 {
121         pub f_bsize: c_ulong,
122         pub f_frsize: c_ulong,
123         pub f_blocks: u64,
124         pub f_bfree: u64,
125         pub f_bavail: u64,
126         pub f_files: u64,
127         pub f_ffree: u64,
128         pub f_favail: u64,
129         pub f_fsid: c_ulong,
130         pub f_flag: c_ulong,
131         pub f_namemax: c_ulong,
132         __f_spare: [c_int; 6],
133     }
134 
135     pub struct pthread_attr_t {
136         __size: [c_ulong; 7],
137     }
138 
139     // FIXME(1.0): This should not implement `PartialEq`
140     #[allow(unpredictable_function_pointer_comparisons)]
141     pub struct sigaction {
142         pub sa_flags: c_int,
143         pub sa_sigaction: crate::sighandler_t,
144         pub sa_mask: crate::sigset_t,
145         pub sa_restorer: Option<extern "C" fn()>,
146     }
147 
148     pub struct stack_t {
149         pub ss_sp: *mut c_void,
150         pub ss_size: size_t,
151         pub ss_flags: c_int,
152     }
153 
154     pub struct siginfo_t {
155         pub si_signo: c_int,
156         pub si_code: c_int,
157         pub si_errno: c_int,
158         _pad: c_int,
159         _pad2: [c_long; 14],
160     }
161 
162     pub struct ipc_perm {
163         pub __key: crate::key_t,
164         pub uid: crate::uid_t,
165         pub gid: crate::gid_t,
166         pub cuid: crate::uid_t,
167         pub cgid: crate::gid_t,
168         pub mode: c_uint,
169         pub __seq: c_ushort,
170         __pad1: c_ushort,
171         __unused1: c_ulong,
172         __unused2: c_ulong,
173     }
174 
175     pub struct shmid_ds {
176         pub shm_perm: crate::ipc_perm,
177         pub shm_segsz: size_t,
178         pub shm_atime: crate::time_t,
179         pub shm_dtime: crate::time_t,
180         pub shm_ctime: crate::time_t,
181         pub shm_cpid: crate::pid_t,
182         pub shm_lpid: crate::pid_t,
183         pub shm_nattch: crate::shmatt_t,
184         __unused4: c_ulong,
185         __unused5: c_ulong,
186     }
187 }
188 
189 s_no_extra_traits! {
190     #[allow(missing_debug_implementations)]
191     #[repr(align(16))]
192     pub struct max_align_t {
193         priv_: [f64; 4],
194     }
195 }
196 
197 pub const __SIZEOF_PTHREAD_CONDATTR_T: usize = 4;
198 pub const __SIZEOF_PTHREAD_MUTEXATTR_T: usize = 4;
199 pub const __SIZEOF_PTHREAD_BARRIERATTR_T: usize = 4;
200 pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40;
201 pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56;
202 pub const __SIZEOF_PTHREAD_BARRIER_T: usize = 32;
203 
204 #[cfg(target_endian = "little")]
205 pub const PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP: crate::pthread_mutex_t = pthread_mutex_t {
206     size: [
207         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
208         0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
209     ],
210 };
211 #[cfg(target_endian = "little")]
212 pub const PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP: crate::pthread_mutex_t = pthread_mutex_t {
213     size: [
214         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
215         0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
216     ],
217 };
218 #[cfg(target_endian = "little")]
219 pub const PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP: crate::pthread_mutex_t = pthread_mutex_t {
220     size: [
221         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
222         0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
223     ],
224 };
225 #[cfg(target_endian = "big")]
226 pub const PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP: crate::pthread_mutex_t = pthread_mutex_t {
227     size: [
228         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
229         0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
230     ],
231 };
232 #[cfg(target_endian = "big")]
233 pub const PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP: crate::pthread_mutex_t = pthread_mutex_t {
234     size: [
235         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
236         0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
237     ],
238 };
239 #[cfg(target_endian = "big")]
240 pub const PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP: crate::pthread_mutex_t = pthread_mutex_t {
241     size: [
242         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
243         0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
244     ],
245 };
246 
247 pub const SYS_read: c_long = 5000 + 0;
248 pub const SYS_write: c_long = 5000 + 1;
249 pub const SYS_open: c_long = 5000 + 2;
250 pub const SYS_close: c_long = 5000 + 3;
251 pub const SYS_stat: c_long = 5000 + 4;
252 pub const SYS_fstat: c_long = 5000 + 5;
253 pub const SYS_lstat: c_long = 5000 + 6;
254 pub const SYS_poll: c_long = 5000 + 7;
255 pub const SYS_lseek: c_long = 5000 + 8;
256 pub const SYS_mmap: c_long = 5000 + 9;
257 pub const SYS_mprotect: c_long = 5000 + 10;
258 pub const SYS_munmap: c_long = 5000 + 11;
259 pub const SYS_brk: c_long = 5000 + 12;
260 pub const SYS_rt_sigaction: c_long = 5000 + 13;
261 pub const SYS_rt_sigprocmask: c_long = 5000 + 14;
262 pub const SYS_ioctl: c_long = 5000 + 15;
263 pub const SYS_pread64: c_long = 5000 + 16;
264 pub const SYS_pwrite64: c_long = 5000 + 17;
265 pub const SYS_readv: c_long = 5000 + 18;
266 pub const SYS_writev: c_long = 5000 + 19;
267 pub const SYS_access: c_long = 5000 + 20;
268 pub const SYS_pipe: c_long = 5000 + 21;
269 pub const SYS__newselect: c_long = 5000 + 22;
270 pub const SYS_sched_yield: c_long = 5000 + 23;
271 pub const SYS_mremap: c_long = 5000 + 24;
272 pub const SYS_msync: c_long = 5000 + 25;
273 pub const SYS_mincore: c_long = 5000 + 26;
274 pub const SYS_madvise: c_long = 5000 + 27;
275 pub const SYS_shmget: c_long = 5000 + 28;
276 pub const SYS_shmat: c_long = 5000 + 29;
277 pub const SYS_shmctl: c_long = 5000 + 30;
278 pub const SYS_dup: c_long = 5000 + 31;
279 pub const SYS_dup2: c_long = 5000 + 32;
280 pub const SYS_pause: c_long = 5000 + 33;
281 pub const SYS_nanosleep: c_long = 5000 + 34;
282 pub const SYS_getitimer: c_long = 5000 + 35;
283 pub const SYS_setitimer: c_long = 5000 + 36;
284 pub const SYS_alarm: c_long = 5000 + 37;
285 pub const SYS_getpid: c_long = 5000 + 38;
286 pub const SYS_sendfile: c_long = 5000 + 39;
287 pub const SYS_socket: c_long = 5000 + 40;
288 pub const SYS_connect: c_long = 5000 + 41;
289 pub const SYS_accept: c_long = 5000 + 42;
290 pub const SYS_sendto: c_long = 5000 + 43;
291 pub const SYS_recvfrom: c_long = 5000 + 44;
292 pub const SYS_sendmsg: c_long = 5000 + 45;
293 pub const SYS_recvmsg: c_long = 5000 + 46;
294 pub const SYS_shutdown: c_long = 5000 + 47;
295 pub const SYS_bind: c_long = 5000 + 48;
296 pub const SYS_listen: c_long = 5000 + 49;
297 pub const SYS_getsockname: c_long = 5000 + 50;
298 pub const SYS_getpeername: c_long = 5000 + 51;
299 pub const SYS_socketpair: c_long = 5000 + 52;
300 pub const SYS_setsockopt: c_long = 5000 + 53;
301 pub const SYS_getsockopt: c_long = 5000 + 54;
302 pub const SYS_clone: c_long = 5000 + 55;
303 pub const SYS_fork: c_long = 5000 + 56;
304 pub const SYS_execve: c_long = 5000 + 57;
305 pub const SYS_exit: c_long = 5000 + 58;
306 pub const SYS_wait4: c_long = 5000 + 59;
307 pub const SYS_kill: c_long = 5000 + 60;
308 pub const SYS_uname: c_long = 5000 + 61;
309 pub const SYS_semget: c_long = 5000 + 62;
310 pub const SYS_semop: c_long = 5000 + 63;
311 pub const SYS_semctl: c_long = 5000 + 64;
312 pub const SYS_shmdt: c_long = 5000 + 65;
313 pub const SYS_msgget: c_long = 5000 + 66;
314 pub const SYS_msgsnd: c_long = 5000 + 67;
315 pub const SYS_msgrcv: c_long = 5000 + 68;
316 pub const SYS_msgctl: c_long = 5000 + 69;
317 pub const SYS_fcntl: c_long = 5000 + 70;
318 pub const SYS_flock: c_long = 5000 + 71;
319 pub const SYS_fsync: c_long = 5000 + 72;
320 pub const SYS_fdatasync: c_long = 5000 + 73;
321 pub const SYS_truncate: c_long = 5000 + 74;
322 pub const SYS_ftruncate: c_long = 5000 + 75;
323 pub const SYS_getdents: c_long = 5000 + 76;
324 pub const SYS_getcwd: c_long = 5000 + 77;
325 pub const SYS_chdir: c_long = 5000 + 78;
326 pub const SYS_fchdir: c_long = 5000 + 79;
327 pub const SYS_rename: c_long = 5000 + 80;
328 pub const SYS_mkdir: c_long = 5000 + 81;
329 pub const SYS_rmdir: c_long = 5000 + 82;
330 pub const SYS_creat: c_long = 5000 + 83;
331 pub const SYS_link: c_long = 5000 + 84;
332 pub const SYS_unlink: c_long = 5000 + 85;
333 pub const SYS_symlink: c_long = 5000 + 86;
334 pub const SYS_readlink: c_long = 5000 + 87;
335 pub const SYS_chmod: c_long = 5000 + 88;
336 pub const SYS_fchmod: c_long = 5000 + 89;
337 pub const SYS_chown: c_long = 5000 + 90;
338 pub const SYS_fchown: c_long = 5000 + 91;
339 pub const SYS_lchown: c_long = 5000 + 92;
340 pub const SYS_umask: c_long = 5000 + 93;
341 pub const SYS_gettimeofday: c_long = 5000 + 94;
342 pub const SYS_getrlimit: c_long = 5000 + 95;
343 pub const SYS_getrusage: c_long = 5000 + 96;
344 pub const SYS_sysinfo: c_long = 5000 + 97;
345 pub const SYS_times: c_long = 5000 + 98;
346 pub const SYS_ptrace: c_long = 5000 + 99;
347 pub const SYS_getuid: c_long = 5000 + 100;
348 pub const SYS_syslog: c_long = 5000 + 101;
349 pub const SYS_getgid: c_long = 5000 + 102;
350 pub const SYS_setuid: c_long = 5000 + 103;
351 pub const SYS_setgid: c_long = 5000 + 104;
352 pub const SYS_geteuid: c_long = 5000 + 105;
353 pub const SYS_getegid: c_long = 5000 + 106;
354 pub const SYS_setpgid: c_long = 5000 + 107;
355 pub const SYS_getppid: c_long = 5000 + 108;
356 pub const SYS_getpgrp: c_long = 5000 + 109;
357 pub const SYS_setsid: c_long = 5000 + 110;
358 pub const SYS_setreuid: c_long = 5000 + 111;
359 pub const SYS_setregid: c_long = 5000 + 112;
360 pub const SYS_getgroups: c_long = 5000 + 113;
361 pub const SYS_setgroups: c_long = 5000 + 114;
362 pub const SYS_setresuid: c_long = 5000 + 115;
363 pub const SYS_getresuid: c_long = 5000 + 116;
364 pub const SYS_setresgid: c_long = 5000 + 117;
365 pub const SYS_getresgid: c_long = 5000 + 118;
366 pub const SYS_getpgid: c_long = 5000 + 119;
367 pub const SYS_setfsuid: c_long = 5000 + 120;
368 pub const SYS_setfsgid: c_long = 5000 + 121;
369 pub const SYS_getsid: c_long = 5000 + 122;
370 pub const SYS_capget: c_long = 5000 + 123;
371 pub const SYS_capset: c_long = 5000 + 124;
372 pub const SYS_rt_sigpending: c_long = 5000 + 125;
373 pub const SYS_rt_sigtimedwait: c_long = 5000 + 126;
374 pub const SYS_rt_sigqueueinfo: c_long = 5000 + 127;
375 pub const SYS_rt_sigsuspend: c_long = 5000 + 128;
376 pub const SYS_sigaltstack: c_long = 5000 + 129;
377 pub const SYS_utime: c_long = 5000 + 130;
378 pub const SYS_mknod: c_long = 5000 + 131;
379 pub const SYS_personality: c_long = 5000 + 132;
380 pub const SYS_ustat: c_long = 5000 + 133;
381 pub const SYS_statfs: c_long = 5000 + 134;
382 pub const SYS_fstatfs: c_long = 5000 + 135;
383 pub const SYS_sysfs: c_long = 5000 + 136;
384 pub const SYS_getpriority: c_long = 5000 + 137;
385 pub const SYS_setpriority: c_long = 5000 + 138;
386 pub const SYS_sched_setparam: c_long = 5000 + 139;
387 pub const SYS_sched_getparam: c_long = 5000 + 140;
388 pub const SYS_sched_setscheduler: c_long = 5000 + 141;
389 pub const SYS_sched_getscheduler: c_long = 5000 + 142;
390 pub const SYS_sched_get_priority_max: c_long = 5000 + 143;
391 pub const SYS_sched_get_priority_min: c_long = 5000 + 144;
392 pub const SYS_sched_rr_get_interval: c_long = 5000 + 145;
393 pub const SYS_mlock: c_long = 5000 + 146;
394 pub const SYS_munlock: c_long = 5000 + 147;
395 pub const SYS_mlockall: c_long = 5000 + 148;
396 pub const SYS_munlockall: c_long = 5000 + 149;
397 pub const SYS_vhangup: c_long = 5000 + 150;
398 pub const SYS_pivot_root: c_long = 5000 + 151;
399 pub const SYS__sysctl: c_long = 5000 + 152;
400 pub const SYS_prctl: c_long = 5000 + 153;
401 pub const SYS_adjtimex: c_long = 5000 + 154;
402 pub const SYS_setrlimit: c_long = 5000 + 155;
403 pub const SYS_chroot: c_long = 5000 + 156;
404 pub const SYS_sync: c_long = 5000 + 157;
405 pub const SYS_acct: c_long = 5000 + 158;
406 pub const SYS_settimeofday: c_long = 5000 + 159;
407 pub const SYS_mount: c_long = 5000 + 160;
408 pub const SYS_umount2: c_long = 5000 + 161;
409 pub const SYS_swapon: c_long = 5000 + 162;
410 pub const SYS_swapoff: c_long = 5000 + 163;
411 pub const SYS_reboot: c_long = 5000 + 164;
412 pub const SYS_sethostname: c_long = 5000 + 165;
413 pub const SYS_setdomainname: c_long = 5000 + 166;
414 #[deprecated(since = "0.2.70", note = "Functional up to 2.6 kernel")]
415 pub const SYS_create_module: c_long = 5000 + 167;
416 pub const SYS_init_module: c_long = 5000 + 168;
417 pub const SYS_delete_module: c_long = 5000 + 169;
418 #[deprecated(since = "0.2.70", note = "Functional up to 2.6 kernel")]
419 pub const SYS_get_kernel_syms: c_long = 5000 + 170;
420 #[deprecated(since = "0.2.70", note = "Functional up to 2.6 kernel")]
421 pub const SYS_query_module: c_long = 5000 + 171;
422 pub const SYS_quotactl: c_long = 5000 + 172;
423 pub const SYS_nfsservctl: c_long = 5000 + 173;
424 pub const SYS_getpmsg: c_long = 5000 + 174;
425 pub const SYS_putpmsg: c_long = 5000 + 175;
426 pub const SYS_afs_syscall: c_long = 5000 + 176;
427 pub const SYS_gettid: c_long = 5000 + 178;
428 pub const SYS_readahead: c_long = 5000 + 179;
429 pub const SYS_setxattr: c_long = 5000 + 180;
430 pub const SYS_lsetxattr: c_long = 5000 + 181;
431 pub const SYS_fsetxattr: c_long = 5000 + 182;
432 pub const SYS_getxattr: c_long = 5000 + 183;
433 pub const SYS_lgetxattr: c_long = 5000 + 184;
434 pub const SYS_fgetxattr: c_long = 5000 + 185;
435 pub const SYS_listxattr: c_long = 5000 + 186;
436 pub const SYS_llistxattr: c_long = 5000 + 187;
437 pub const SYS_flistxattr: c_long = 5000 + 188;
438 pub const SYS_removexattr: c_long = 5000 + 189;
439 pub const SYS_lremovexattr: c_long = 5000 + 190;
440 pub const SYS_fremovexattr: c_long = 5000 + 191;
441 pub const SYS_tkill: c_long = 5000 + 192;
442 pub const SYS_futex: c_long = 5000 + 194;
443 pub const SYS_sched_setaffinity: c_long = 5000 + 195;
444 pub const SYS_sched_getaffinity: c_long = 5000 + 196;
445 pub const SYS_cacheflush: c_long = 5000 + 197;
446 pub const SYS_cachectl: c_long = 5000 + 198;
447 pub const SYS_sysmips: c_long = 5000 + 199;
448 pub const SYS_io_setup: c_long = 5000 + 200;
449 pub const SYS_io_destroy: c_long = 5000 + 201;
450 pub const SYS_io_getevents: c_long = 5000 + 202;
451 pub const SYS_io_submit: c_long = 5000 + 203;
452 pub const SYS_io_cancel: c_long = 5000 + 204;
453 pub const SYS_exit_group: c_long = 5000 + 205;
454 pub const SYS_lookup_dcookie: c_long = 5000 + 206;
455 pub const SYS_epoll_create: c_long = 5000 + 207;
456 pub const SYS_epoll_ctl: c_long = 5000 + 208;
457 pub const SYS_epoll_wait: c_long = 5000 + 209;
458 pub const SYS_remap_file_pages: c_long = 5000 + 210;
459 pub const SYS_rt_sigreturn: c_long = 5000 + 211;
460 pub const SYS_set_tid_address: c_long = 5000 + 212;
461 pub const SYS_restart_syscall: c_long = 5000 + 213;
462 pub const SYS_semtimedop: c_long = 5000 + 214;
463 pub const SYS_fadvise64: c_long = 5000 + 215;
464 pub const SYS_timer_create: c_long = 5000 + 216;
465 pub const SYS_timer_settime: c_long = 5000 + 217;
466 pub const SYS_timer_gettime: c_long = 5000 + 218;
467 pub const SYS_timer_getoverrun: c_long = 5000 + 219;
468 pub const SYS_timer_delete: c_long = 5000 + 220;
469 pub const SYS_clock_settime: c_long = 5000 + 221;
470 pub const SYS_clock_gettime: c_long = 5000 + 222;
471 pub const SYS_clock_getres: c_long = 5000 + 223;
472 pub const SYS_clock_nanosleep: c_long = 5000 + 224;
473 pub const SYS_tgkill: c_long = 5000 + 225;
474 pub const SYS_utimes: c_long = 5000 + 226;
475 pub const SYS_mbind: c_long = 5000 + 227;
476 pub const SYS_get_mempolicy: c_long = 5000 + 228;
477 pub const SYS_set_mempolicy: c_long = 5000 + 229;
478 pub const SYS_mq_open: c_long = 5000 + 230;
479 pub const SYS_mq_unlink: c_long = 5000 + 231;
480 pub const SYS_mq_timedsend: c_long = 5000 + 232;
481 pub const SYS_mq_timedreceive: c_long = 5000 + 233;
482 pub const SYS_mq_notify: c_long = 5000 + 234;
483 pub const SYS_mq_getsetattr: c_long = 5000 + 235;
484 pub const SYS_vserver: c_long = 5000 + 236;
485 pub const SYS_waitid: c_long = 5000 + 237;
486 /* pub const SYS_sys_setaltroot: c_long = 5000 + 238; */
487 pub const SYS_add_key: c_long = 5000 + 239;
488 pub const SYS_request_key: c_long = 5000 + 240;
489 pub const SYS_keyctl: c_long = 5000 + 241;
490 pub const SYS_set_thread_area: c_long = 5000 + 242;
491 pub const SYS_inotify_init: c_long = 5000 + 243;
492 pub const SYS_inotify_add_watch: c_long = 5000 + 244;
493 pub const SYS_inotify_rm_watch: c_long = 5000 + 245;
494 pub const SYS_migrate_pages: c_long = 5000 + 246;
495 pub const SYS_openat: c_long = 5000 + 247;
496 pub const SYS_mkdirat: c_long = 5000 + 248;
497 pub const SYS_mknodat: c_long = 5000 + 249;
498 pub const SYS_fchownat: c_long = 5000 + 250;
499 pub const SYS_futimesat: c_long = 5000 + 251;
500 pub const SYS_newfstatat: c_long = 5000 + 252;
501 pub const SYS_unlinkat: c_long = 5000 + 253;
502 pub const SYS_renameat: c_long = 5000 + 254;
503 pub const SYS_linkat: c_long = 5000 + 255;
504 pub const SYS_symlinkat: c_long = 5000 + 256;
505 pub const SYS_readlinkat: c_long = 5000 + 257;
506 pub const SYS_fchmodat: c_long = 5000 + 258;
507 pub const SYS_faccessat: c_long = 5000 + 259;
508 pub const SYS_pselect6: c_long = 5000 + 260;
509 pub const SYS_ppoll: c_long = 5000 + 261;
510 pub const SYS_unshare: c_long = 5000 + 262;
511 pub const SYS_splice: c_long = 5000 + 263;
512 pub const SYS_sync_file_range: c_long = 5000 + 264;
513 pub const SYS_tee: c_long = 5000 + 265;
514 pub const SYS_vmsplice: c_long = 5000 + 266;
515 pub const SYS_move_pages: c_long = 5000 + 267;
516 pub const SYS_set_robust_list: c_long = 5000 + 268;
517 pub const SYS_get_robust_list: c_long = 5000 + 269;
518 pub const SYS_kexec_load: c_long = 5000 + 270;
519 pub const SYS_getcpu: c_long = 5000 + 271;
520 pub const SYS_epoll_pwait: c_long = 5000 + 272;
521 pub const SYS_ioprio_set: c_long = 5000 + 273;
522 pub const SYS_ioprio_get: c_long = 5000 + 274;
523 pub const SYS_utimensat: c_long = 5000 + 275;
524 pub const SYS_signalfd: c_long = 5000 + 276;
525 pub const SYS_timerfd: c_long = 5000 + 277;
526 pub const SYS_eventfd: c_long = 5000 + 278;
527 pub const SYS_fallocate: c_long = 5000 + 279;
528 pub const SYS_timerfd_create: c_long = 5000 + 280;
529 pub const SYS_timerfd_gettime: c_long = 5000 + 281;
530 pub const SYS_timerfd_settime: c_long = 5000 + 282;
531 pub const SYS_signalfd4: c_long = 5000 + 283;
532 pub const SYS_eventfd2: c_long = 5000 + 284;
533 pub const SYS_epoll_create1: c_long = 5000 + 285;
534 pub const SYS_dup3: c_long = 5000 + 286;
535 pub const SYS_pipe2: c_long = 5000 + 287;
536 pub const SYS_inotify_init1: c_long = 5000 + 288;
537 pub const SYS_preadv: c_long = 5000 + 289;
538 pub const SYS_pwritev: c_long = 5000 + 290;
539 pub const SYS_rt_tgsigqueueinfo: c_long = 5000 + 291;
540 pub const SYS_perf_event_open: c_long = 5000 + 292;
541 pub const SYS_accept4: c_long = 5000 + 293;
542 pub const SYS_recvmmsg: c_long = 5000 + 294;
543 pub const SYS_fanotify_init: c_long = 5000 + 295;
544 pub const SYS_fanotify_mark: c_long = 5000 + 296;
545 pub const SYS_prlimit64: c_long = 5000 + 297;
546 pub const SYS_name_to_handle_at: c_long = 5000 + 298;
547 pub const SYS_open_by_handle_at: c_long = 5000 + 299;
548 pub const SYS_clock_adjtime: c_long = 5000 + 300;
549 pub const SYS_syncfs: c_long = 5000 + 301;
550 pub const SYS_sendmmsg: c_long = 5000 + 302;
551 pub const SYS_setns: c_long = 5000 + 303;
552 pub const SYS_process_vm_readv: c_long = 5000 + 304;
553 pub const SYS_process_vm_writev: c_long = 5000 + 305;
554 pub const SYS_kcmp: c_long = 5000 + 306;
555 pub const SYS_finit_module: c_long = 5000 + 307;
556 pub const SYS_getdents64: c_long = 5000 + 308;
557 pub const SYS_sched_setattr: c_long = 5000 + 309;
558 pub const SYS_sched_getattr: c_long = 5000 + 310;
559 pub const SYS_renameat2: c_long = 5000 + 311;
560 pub const SYS_seccomp: c_long = 5000 + 312;
561 pub const SYS_getrandom: c_long = 5000 + 313;
562 pub const SYS_memfd_create: c_long = 5000 + 314;
563 pub const SYS_bpf: c_long = 5000 + 315;
564 pub const SYS_execveat: c_long = 5000 + 316;
565 pub const SYS_userfaultfd: c_long = 5000 + 317;
566 pub const SYS_membarrier: c_long = 5000 + 318;
567 pub const SYS_mlock2: c_long = 5000 + 319;
568 pub const SYS_copy_file_range: c_long = 5000 + 320;
569 pub const SYS_preadv2: c_long = 5000 + 321;
570 pub const SYS_pwritev2: c_long = 5000 + 322;
571 pub const SYS_pkey_mprotect: c_long = 5000 + 323;
572 pub const SYS_pkey_alloc: c_long = 5000 + 324;
573 pub const SYS_pkey_free: c_long = 5000 + 325;
574 pub const SYS_statx: c_long = 5000 + 326;
575 pub const SYS_rseq: c_long = 5000 + 327;
576 pub const SYS_pidfd_send_signal: c_long = 5000 + 424;
577 pub const SYS_io_uring_setup: c_long = 5000 + 425;
578 pub const SYS_io_uring_enter: c_long = 5000 + 426;
579 pub const SYS_io_uring_register: c_long = 5000 + 427;
580 pub const SYS_open_tree: c_long = 5000 + 428;
581 pub const SYS_move_mount: c_long = 5000 + 429;
582 pub const SYS_fsopen: c_long = 5000 + 430;
583 pub const SYS_fsconfig: c_long = 5000 + 431;
584 pub const SYS_fsmount: c_long = 5000 + 432;
585 pub const SYS_fspick: c_long = 5000 + 433;
586 pub const SYS_pidfd_open: c_long = 5000 + 434;
587 pub const SYS_clone3: c_long = 5000 + 435;
588 pub const SYS_close_range: c_long = 5000 + 436;
589 pub const SYS_openat2: c_long = 5000 + 437;
590 pub const SYS_pidfd_getfd: c_long = 5000 + 438;
591 pub const SYS_faccessat2: c_long = 5000 + 439;
592 pub const SYS_process_madvise: c_long = 5000 + 440;
593 pub const SYS_epoll_pwait2: c_long = 5000 + 441;
594 pub const SYS_mount_setattr: c_long = 5000 + 442;
595 pub const SYS_quotactl_fd: c_long = 5000 + 443;
596 pub const SYS_landlock_create_ruleset: c_long = 5000 + 444;
597 pub const SYS_landlock_add_rule: c_long = 5000 + 445;
598 pub const SYS_landlock_restrict_self: c_long = 5000 + 446;
599 pub const SYS_memfd_secret: c_long = 5000 + 447;
600 pub const SYS_process_mrelease: c_long = 5000 + 448;
601 pub const SYS_futex_waitv: c_long = 5000 + 449;
602 pub const SYS_set_mempolicy_home_node: c_long = 5000 + 450;
603 
604 pub const SFD_CLOEXEC: c_int = 0x080000;
605 
606 pub const NCCS: usize = 32;
607 
608 pub const O_TRUNC: c_int = 512;
609 
610 pub const O_NOATIME: c_int = 0o1000000;
611 pub const O_CLOEXEC: c_int = 0x80000;
612 pub const O_PATH: c_int = 0o10000000;
613 pub const O_TMPFILE: c_int = 0o20000000 | O_DIRECTORY;
614 
615 pub const EBFONT: c_int = 59;
616 pub const ENOSTR: c_int = 60;
617 pub const ENODATA: c_int = 61;
618 pub const ETIME: c_int = 62;
619 pub const ENOSR: c_int = 63;
620 pub const ENONET: c_int = 64;
621 pub const ENOPKG: c_int = 65;
622 pub const EREMOTE: c_int = 66;
623 pub const ENOLINK: c_int = 67;
624 pub const EADV: c_int = 68;
625 pub const ESRMNT: c_int = 69;
626 pub const ECOMM: c_int = 70;
627 pub const EPROTO: c_int = 71;
628 pub const EDOTDOT: c_int = 73;
629 
630 pub const SA_NODEFER: c_int = 0x40000000;
631 pub const SA_RESETHAND: c_int = 0x80000000;
632 pub const SA_RESTART: c_int = 0x10000000;
633 pub const SA_NOCLDSTOP: c_int = 0x00000001;
634 
635 pub const POSIX_FADV_DONTNEED: c_int = 4;
636 pub const POSIX_FADV_NOREUSE: c_int = 5;
637 
638 pub const EPOLL_CLOEXEC: c_int = 0x80000;
639 
640 pub const EFD_CLOEXEC: c_int = 0x80000;
641 
642 pub const O_DIRECT: c_int = 0x8000;
643 pub const O_DIRECTORY: c_int = 0x10000;
644 pub const O_NOFOLLOW: c_int = 0x20000;
645 
646 pub const O_APPEND: c_int = 8;
647 pub const O_CREAT: c_int = 256;
648 pub const O_EXCL: c_int = 1024;
649 pub const O_NOCTTY: c_int = 2048;
650 pub const O_NONBLOCK: c_int = 128;
651 pub const O_SYNC: c_int = 0x4010;
652 pub const O_RSYNC: c_int = 0x4010;
653 pub const O_DSYNC: c_int = 0x10;
654 pub const O_FSYNC: c_int = 0x4010;
655 pub const O_ASYNC: c_int = 0x1000;
656 pub const O_NDELAY: c_int = 0x80;
657 
658 pub const EDEADLK: c_int = 45;
659 pub const ENAMETOOLONG: c_int = 78;
660 pub const ENOLCK: c_int = 46;
661 pub const ENOSYS: c_int = 89;
662 pub const ENOTEMPTY: c_int = 93;
663 pub const ELOOP: c_int = 90;
664 pub const ENOMSG: c_int = 35;
665 pub const EIDRM: c_int = 36;
666 pub const ECHRNG: c_int = 37;
667 pub const EL2NSYNC: c_int = 38;
668 pub const EL3HLT: c_int = 39;
669 pub const EL3RST: c_int = 40;
670 pub const ELNRNG: c_int = 41;
671 pub const EUNATCH: c_int = 42;
672 pub const ENOCSI: c_int = 43;
673 pub const EL2HLT: c_int = 44;
674 pub const EBADE: c_int = 50;
675 pub const EBADR: c_int = 51;
676 pub const EXFULL: c_int = 52;
677 pub const ENOANO: c_int = 53;
678 pub const EBADRQC: c_int = 54;
679 pub const EBADSLT: c_int = 55;
680 pub const EDEADLOCK: c_int = 56;
681 pub const EMULTIHOP: c_int = 74;
682 pub const EOVERFLOW: c_int = 79;
683 pub const ENOTUNIQ: c_int = 80;
684 pub const EBADFD: c_int = 81;
685 pub const EBADMSG: c_int = 77;
686 pub const EREMCHG: c_int = 82;
687 pub const ELIBACC: c_int = 83;
688 pub const ELIBBAD: c_int = 84;
689 pub const ELIBSCN: c_int = 85;
690 pub const ELIBMAX: c_int = 86;
691 pub const ELIBEXEC: c_int = 87;
692 pub const EILSEQ: c_int = 88;
693 pub const ERESTART: c_int = 91;
694 pub const ESTRPIPE: c_int = 92;
695 pub const EUSERS: c_int = 94;
696 pub const ENOTSOCK: c_int = 95;
697 pub const EDESTADDRREQ: c_int = 96;
698 pub const EMSGSIZE: c_int = 97;
699 pub const EPROTOTYPE: c_int = 98;
700 pub const ENOPROTOOPT: c_int = 99;
701 pub const EPROTONOSUPPORT: c_int = 120;
702 pub const ESOCKTNOSUPPORT: c_int = 121;
703 pub const EOPNOTSUPP: c_int = 122;
704 pub const EPFNOSUPPORT: c_int = 123;
705 pub const EAFNOSUPPORT: c_int = 124;
706 pub const EADDRINUSE: c_int = 125;
707 pub const EADDRNOTAVAIL: c_int = 126;
708 pub const ENETDOWN: c_int = 127;
709 pub const ENETUNREACH: c_int = 128;
710 pub const ENETRESET: c_int = 129;
711 pub const ECONNABORTED: c_int = 130;
712 pub const ECONNRESET: c_int = 131;
713 pub const ENOBUFS: c_int = 132;
714 pub const EISCONN: c_int = 133;
715 pub const ENOTCONN: c_int = 134;
716 pub const ESHUTDOWN: c_int = 143;
717 pub const ETOOMANYREFS: c_int = 144;
718 pub const ETIMEDOUT: c_int = 145;
719 pub const ECONNREFUSED: c_int = 146;
720 pub const EHOSTDOWN: c_int = 147;
721 pub const EHOSTUNREACH: c_int = 148;
722 pub const EALREADY: c_int = 149;
723 pub const EINPROGRESS: c_int = 150;
724 pub const ESTALE: c_int = 151;
725 pub const EUCLEAN: c_int = 135;
726 pub const ENOTNAM: c_int = 137;
727 pub const ENAVAIL: c_int = 138;
728 pub const EISNAM: c_int = 139;
729 pub const EREMOTEIO: c_int = 140;
730 pub const EDQUOT: c_int = 1133;
731 pub const ENOMEDIUM: c_int = 159;
732 pub const EMEDIUMTYPE: c_int = 160;
733 pub const ECANCELED: c_int = 158;
734 pub const ENOKEY: c_int = 161;
735 pub const EKEYEXPIRED: c_int = 162;
736 pub const EKEYREVOKED: c_int = 163;
737 pub const EKEYREJECTED: c_int = 164;
738 pub const EOWNERDEAD: c_int = 165;
739 pub const ENOTRECOVERABLE: c_int = 166;
740 pub const ERFKILL: c_int = 167;
741 
742 pub const MAP_NORESERVE: c_int = 0x400;
743 pub const MAP_ANON: c_int = 0x800;
744 pub const MAP_ANONYMOUS: c_int = 0x800;
745 pub const MAP_GROWSDOWN: c_int = 0x1000;
746 pub const MAP_DENYWRITE: c_int = 0x2000;
747 pub const MAP_EXECUTABLE: c_int = 0x4000;
748 pub const MAP_LOCKED: c_int = 0x8000;
749 pub const MAP_POPULATE: c_int = 0x10000;
750 pub const MAP_NONBLOCK: c_int = 0x20000;
751 pub const MAP_STACK: c_int = 0x40000;
752 pub const MAP_HUGETLB: c_int = 0x080000;
753 
754 pub const SOCK_STREAM: c_int = 2;
755 pub const SOCK_DGRAM: c_int = 1;
756 
757 pub const SA_ONSTACK: c_int = 0x08000000;
758 pub const SA_SIGINFO: c_int = 0x00000008;
759 pub const SA_NOCLDWAIT: c_int = 0x00010000;
760 
761 pub const SIGCHLD: c_int = 18;
762 pub const SIGBUS: c_int = 10;
763 pub const SIGTTIN: c_int = 26;
764 pub const SIGTTOU: c_int = 27;
765 pub const SIGXCPU: c_int = 30;
766 pub const SIGXFSZ: c_int = 31;
767 pub const SIGVTALRM: c_int = 28;
768 pub const SIGPROF: c_int = 29;
769 pub const SIGWINCH: c_int = 20;
770 pub const SIGUSR1: c_int = 16;
771 pub const SIGUSR2: c_int = 17;
772 pub const SIGCONT: c_int = 25;
773 pub const SIGSTOP: c_int = 23;
774 pub const SIGTSTP: c_int = 24;
775 pub const SIGURG: c_int = 21;
776 pub const SIGIO: c_int = 22;
777 pub const SIGSYS: c_int = 12;
778 pub const SIGPOLL: c_int = 22;
779 pub const SIGPWR: c_int = 19;
780 pub const SIG_SETMASK: c_int = 3;
781 pub const SIG_BLOCK: c_int = 0x1;
782 pub const SIG_UNBLOCK: c_int = 0x2;
783 
784 pub const POLLWRNORM: c_short = 0x004;
785 pub const POLLWRBAND: c_short = 0x100;
786 
787 pub const VEOF: usize = 16;
788 pub const VEOL: usize = 17;
789 pub const VEOL2: usize = 6;
790 pub const VMIN: usize = 4;
791 pub const IEXTEN: crate::tcflag_t = 0x00000100;
792 pub const TOSTOP: crate::tcflag_t = 0x00008000;
793 pub const FLUSHO: crate::tcflag_t = 0x00002000;
794 pub const EXTPROC: crate::tcflag_t = 0o200000;
795 pub const TCSANOW: c_int = 0x540e;
796 pub const TCSADRAIN: c_int = 0x540f;
797 pub const TCSAFLUSH: c_int = 0x5410;
798 
799 pub const PTRACE_GETFPREGS: c_uint = 14;
800 pub const PTRACE_SETFPREGS: c_uint = 15;
801 pub const PTRACE_DETACH: c_uint = 17;
802 pub const PTRACE_GETFPXREGS: c_uint = 18;
803 pub const PTRACE_SETFPXREGS: c_uint = 19;
804 pub const PTRACE_GETREGS: c_uint = 12;
805 pub const PTRACE_SETREGS: c_uint = 13;
806 
807 pub const EFD_NONBLOCK: c_int = 0x80;
808 
809 pub const F_RDLCK: c_int = 0;
810 pub const F_WRLCK: c_int = 1;
811 pub const F_UNLCK: c_int = 2;
812 pub const F_GETLK: c_int = 14;
813 pub const F_GETOWN: c_int = 23;
814 pub const F_SETOWN: c_int = 24;
815 pub const F_SETLK: c_int = 6;
816 pub const F_SETLKW: c_int = 7;
817 pub const F_OFD_GETLK: c_int = 36;
818 pub const F_OFD_SETLK: c_int = 37;
819 pub const F_OFD_SETLKW: c_int = 38;
820 
821 pub const SFD_NONBLOCK: c_int = 0x80;
822 
823 pub const RTLD_DEEPBIND: c_int = 0x10;
824 pub const RTLD_GLOBAL: c_int = 0x4;
825 pub const RTLD_NOLOAD: c_int = 0x8;
826 
827 pub const MCL_CURRENT: c_int = 0x0001;
828 pub const MCL_FUTURE: c_int = 0x0002;
829 pub const MCL_ONFAULT: c_int = 0x0004;
830 
831 pub const SIGSTKSZ: size_t = 8192;
832 pub const MINSIGSTKSZ: size_t = 2048;
833 pub const CBAUD: crate::tcflag_t = 0o0010017;
834 pub const TAB1: crate::tcflag_t = 0x00000800;
835 pub const TAB2: crate::tcflag_t = 0x00001000;
836 pub const TAB3: crate::tcflag_t = 0x00001800;
837 pub const CR1: crate::tcflag_t = 0x00000200;
838 pub const CR2: crate::tcflag_t = 0x00000400;
839 pub const CR3: crate::tcflag_t = 0x00000600;
840 pub const FF1: crate::tcflag_t = 0x00008000;
841 pub const BS1: crate::tcflag_t = 0x00002000;
842 pub const VT1: crate::tcflag_t = 0x00004000;
843 pub const VWERASE: usize = 14;
844 pub const VREPRINT: usize = 12;
845 pub const VSUSP: usize = 10;
846 pub const VSTART: usize = 8;
847 pub const VSTOP: usize = 9;
848 pub const VDISCARD: usize = 13;
849 pub const VTIME: usize = 5;
850 pub const IXON: crate::tcflag_t = 0x00000400;
851 pub const IXOFF: crate::tcflag_t = 0x00001000;
852 pub const ONLCR: crate::tcflag_t = 0x4;
853 pub const CSIZE: crate::tcflag_t = 0x00000030;
854 pub const CS6: crate::tcflag_t = 0x00000010;
855 pub const CS7: crate::tcflag_t = 0x00000020;
856 pub const CS8: crate::tcflag_t = 0x00000030;
857 pub const CSTOPB: crate::tcflag_t = 0x00000040;
858 pub const CREAD: crate::tcflag_t = 0x00000080;
859 pub const PARENB: crate::tcflag_t = 0x00000100;
860 pub const PARODD: crate::tcflag_t = 0x00000200;
861 pub const HUPCL: crate::tcflag_t = 0x00000400;
862 pub const CLOCAL: crate::tcflag_t = 0x00000800;
863 pub const ECHOKE: crate::tcflag_t = 0x00000800;
864 pub const ECHOE: crate::tcflag_t = 0x00000010;
865 pub const ECHOK: crate::tcflag_t = 0x00000020;
866 pub const ECHONL: crate::tcflag_t = 0x00000040;
867 pub const ECHOPRT: crate::tcflag_t = 0x00000400;
868 pub const ECHOCTL: crate::tcflag_t = 0x00000200;
869 pub const ISIG: crate::tcflag_t = 0x00000001;
870 pub const ICANON: crate::tcflag_t = 0x00000002;
871 pub const PENDIN: crate::tcflag_t = 0x00004000;
872 pub const NOFLSH: crate::tcflag_t = 0x00000080;
873 pub const CIBAUD: crate::tcflag_t = 0o02003600000;
874 pub const CBAUDEX: crate::tcflag_t = 0o010000;
875 pub const VSWTC: usize = 7;
876 pub const OLCUC: crate::tcflag_t = 0o000002;
877 pub const NLDLY: crate::tcflag_t = 0o000400;
878 pub const CRDLY: crate::tcflag_t = 0o003000;
879 pub const TABDLY: crate::tcflag_t = 0o014000;
880 pub const BSDLY: crate::tcflag_t = 0o020000;
881 pub const FFDLY: crate::tcflag_t = 0o100000;
882 pub const VTDLY: crate::tcflag_t = 0o040000;
883 pub const XTABS: crate::tcflag_t = 0o014000;
884 
885 pub const B0: crate::speed_t = 0o000000;
886 pub const B50: crate::speed_t = 0o000001;
887 pub const B75: crate::speed_t = 0o000002;
888 pub const B110: crate::speed_t = 0o000003;
889 pub const B134: crate::speed_t = 0o000004;
890 pub const B150: crate::speed_t = 0o000005;
891 pub const B200: crate::speed_t = 0o000006;
892 pub const B300: crate::speed_t = 0o000007;
893 pub const B600: crate::speed_t = 0o000010;
894 pub const B1200: crate::speed_t = 0o000011;
895 pub const B1800: crate::speed_t = 0o000012;
896 pub const B2400: crate::speed_t = 0o000013;
897 pub const B4800: crate::speed_t = 0o000014;
898 pub const B9600: crate::speed_t = 0o000015;
899 pub const B19200: crate::speed_t = 0o000016;
900 pub const B38400: crate::speed_t = 0o000017;
901 pub const EXTA: crate::speed_t = B19200;
902 pub const EXTB: crate::speed_t = B38400;
903 pub const B57600: crate::speed_t = 0o010001;
904 pub const B115200: crate::speed_t = 0o010002;
905 pub const B230400: crate::speed_t = 0o010003;
906 pub const B460800: crate::speed_t = 0o010004;
907 pub const B500000: crate::speed_t = 0o010005;
908 pub const B576000: crate::speed_t = 0o010006;
909 pub const B921600: crate::speed_t = 0o010007;
910 pub const B1000000: crate::speed_t = 0o010010;
911 pub const B1152000: crate::speed_t = 0o010011;
912 pub const B1500000: crate::speed_t = 0o010012;
913 pub const B2000000: crate::speed_t = 0o010013;
914 pub const B2500000: crate::speed_t = 0o010014;
915 pub const B3000000: crate::speed_t = 0o010015;
916 pub const B3500000: crate::speed_t = 0o010016;
917 pub const B4000000: crate::speed_t = 0o010017;
918 
919 pub const EHWPOISON: c_int = 168;
920 
921 extern "C" {
sysctl( name: *mut c_int, namelen: c_int, oldp: *mut c_void, oldlenp: *mut size_t, newp: *mut c_void, newlen: size_t, ) -> c_int922     pub fn sysctl(
923         name: *mut c_int,
924         namelen: c_int,
925         oldp: *mut c_void,
926         oldlenp: *mut size_t,
927         newp: *mut c_void,
928         newlen: size_t,
929     ) -> c_int;
930 }
931