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