1 use crate::prelude::*;
2 
3 pub type pthread_t = c_ulong;
4 
5 pub const SFD_CLOEXEC: c_int = 0x080000;
6 
7 pub const NCCS: usize = 32;
8 
9 pub const O_TRUNC: c_int = 512;
10 
11 pub const O_CLOEXEC: c_int = 0x80000;
12 
13 pub const EBFONT: c_int = 59;
14 pub const ENOSTR: c_int = 60;
15 pub const ENODATA: c_int = 61;
16 pub const ETIME: c_int = 62;
17 pub const ENOSR: c_int = 63;
18 pub const ENONET: c_int = 64;
19 pub const ENOPKG: c_int = 65;
20 pub const EREMOTE: c_int = 66;
21 pub const ENOLINK: c_int = 67;
22 pub const EADV: c_int = 68;
23 pub const ESRMNT: c_int = 69;
24 pub const ECOMM: c_int = 70;
25 pub const EPROTO: c_int = 71;
26 pub const EDOTDOT: c_int = 73;
27 
28 pub const SA_NODEFER: c_uint = 0x40000000;
29 pub const SA_RESETHAND: c_uint = 0x80000000;
30 pub const SA_RESTART: c_uint = 0x10000000;
31 pub const SA_NOCLDSTOP: c_uint = 0x00000001;
32 
33 pub const EPOLL_CLOEXEC: c_int = 0x80000;
34 
35 pub const EFD_CLOEXEC: c_int = 0x80000;
36 
37 pub const TMP_MAX: c_uint = 238328;
38 pub const _SC_2_C_VERSION: c_int = 96;
39 pub const O_ACCMODE: c_int = 3;
40 pub const O_DIRECT: c_int = 0x8000;
41 pub const O_DIRECTORY: c_int = 0x10000;
42 pub const O_NOFOLLOW: c_int = 0x20000;
43 pub const O_NOATIME: c_int = 0x40000;
44 pub const O_PATH: c_int = 0o010000000;
45 
46 pub const O_APPEND: c_int = 8;
47 pub const O_CREAT: c_int = 256;
48 pub const O_EXCL: c_int = 1024;
49 pub const O_NOCTTY: c_int = 2048;
50 pub const O_NONBLOCK: c_int = 128;
51 pub const O_SYNC: c_int = 0x10;
52 pub const O_RSYNC: c_int = 0x10;
53 pub const O_DSYNC: c_int = 0x10;
54 pub const O_FSYNC: c_int = 0x10;
55 pub const O_ASYNC: c_int = 0x1000;
56 pub const O_LARGEFILE: c_int = 0x2000;
57 pub const O_NDELAY: c_int = 0x80;
58 
59 pub const SOCK_NONBLOCK: c_int = 128;
60 
61 pub const EDEADLK: c_int = 45;
62 pub const ENAMETOOLONG: c_int = 78;
63 pub const ENOLCK: c_int = 46;
64 pub const ENOSYS: c_int = 89;
65 pub const ENOTEMPTY: c_int = 93;
66 pub const ELOOP: c_int = 90;
67 pub const ENOMSG: c_int = 35;
68 pub const EIDRM: c_int = 36;
69 pub const ECHRNG: c_int = 37;
70 pub const EL2NSYNC: c_int = 38;
71 pub const EL3HLT: c_int = 39;
72 pub const EL3RST: c_int = 40;
73 pub const ELNRNG: c_int = 41;
74 pub const EUNATCH: c_int = 42;
75 pub const ENOCSI: c_int = 43;
76 pub const EL2HLT: c_int = 44;
77 pub const EBADE: c_int = 50;
78 pub const EBADR: c_int = 51;
79 pub const EXFULL: c_int = 52;
80 pub const FFDLY: c_int = 0o0100000;
81 pub const ENOANO: c_int = 53;
82 pub const EBADRQC: c_int = 54;
83 pub const EBADSLT: c_int = 55;
84 pub const EMULTIHOP: c_int = 74;
85 pub const EOVERFLOW: c_int = 79;
86 pub const ENOTUNIQ: c_int = 80;
87 pub const EBADFD: c_int = 81;
88 pub const EBADMSG: c_int = 77;
89 pub const EREMCHG: c_int = 82;
90 pub const ELIBACC: c_int = 83;
91 pub const ELIBBAD: c_int = 84;
92 pub const ELIBSCN: c_int = 85;
93 pub const ELIBMAX: c_int = 86;
94 pub const ELIBEXEC: c_int = 87;
95 pub const EILSEQ: c_int = 88;
96 pub const ERESTART: c_int = 91;
97 pub const ESTRPIPE: c_int = 92;
98 pub const EUSERS: c_int = 94;
99 pub const ENOTSOCK: c_int = 95;
100 pub const EDESTADDRREQ: c_int = 96;
101 pub const EMSGSIZE: c_int = 97;
102 pub const EPROTOTYPE: c_int = 98;
103 pub const ENOPROTOOPT: c_int = 99;
104 pub const EPROTONOSUPPORT: c_int = 120;
105 pub const ESOCKTNOSUPPORT: c_int = 121;
106 pub const EOPNOTSUPP: c_int = 122;
107 pub const EPFNOSUPPORT: c_int = 123;
108 pub const EAFNOSUPPORT: c_int = 124;
109 pub const EADDRINUSE: c_int = 125;
110 pub const EADDRNOTAVAIL: c_int = 126;
111 pub const ENETDOWN: c_int = 127;
112 pub const ENETUNREACH: c_int = 128;
113 pub const ENETRESET: c_int = 129;
114 pub const ECONNABORTED: c_int = 130;
115 pub const ECONNRESET: c_int = 131;
116 pub const ENOBUFS: c_int = 132;
117 pub const EISCONN: c_int = 133;
118 pub const ENOTCONN: c_int = 134;
119 pub const ESHUTDOWN: c_int = 143;
120 pub const ETOOMANYREFS: c_int = 144;
121 pub const ETIMEDOUT: c_int = 145;
122 pub const ECONNREFUSED: c_int = 146;
123 pub const EHOSTDOWN: c_int = 147;
124 pub const EHOSTUNREACH: c_int = 148;
125 pub const EALREADY: c_int = 149;
126 pub const EINPROGRESS: c_int = 150;
127 pub const ESTALE: c_int = 151;
128 pub const EUCLEAN: c_int = 135;
129 pub const ENOTNAM: c_int = 137;
130 pub const ENAVAIL: c_int = 138;
131 pub const EISNAM: c_int = 139;
132 pub const EREMOTEIO: c_int = 140;
133 pub const EDQUOT: c_int = 1133;
134 pub const ENOMEDIUM: c_int = 159;
135 pub const EMEDIUMTYPE: c_int = 160;
136 pub const ECANCELED: c_int = 158;
137 pub const ENOKEY: c_int = 161;
138 pub const EKEYEXPIRED: c_int = 162;
139 pub const EKEYREVOKED: c_int = 163;
140 pub const EKEYREJECTED: c_int = 164;
141 pub const EOWNERDEAD: c_int = 165;
142 pub const ENOTRECOVERABLE: c_int = 166;
143 pub const ERFKILL: c_int = 167;
144 
145 pub const MAP_NORESERVE: c_int = 0x400;
146 pub const MAP_ANON: c_int = 0x800;
147 pub const MAP_ANONYMOUS: c_int = 0x800;
148 pub const MAP_GROWSDOWN: c_int = 0x1000;
149 pub const MAP_DENYWRITE: c_int = 0x2000;
150 pub const MAP_EXECUTABLE: c_int = 0x4000;
151 pub const MAP_LOCKED: c_int = 0x8000;
152 pub const MAP_POPULATE: c_int = 0x10000;
153 pub const MAP_NONBLOCK: c_int = 0x20000;
154 pub const MAP_STACK: c_int = 0x40000;
155 
156 pub const NLDLY: crate::tcflag_t = 0o0000400;
157 
158 pub const SOCK_STREAM: c_int = 2;
159 pub const SOCK_DGRAM: c_int = 1;
160 pub const SOCK_SEQPACKET: c_int = 5;
161 
162 pub const SA_ONSTACK: c_uint = 0x08000000;
163 pub const SA_SIGINFO: c_uint = 0x00000008;
164 pub const SA_NOCLDWAIT: c_int = 0x00010000;
165 
166 pub const SIGCHLD: c_int = 18;
167 pub const SIGBUS: c_int = 10;
168 pub const SIGTTIN: c_int = 26;
169 pub const SIGTTOU: c_int = 27;
170 pub const SIGXCPU: c_int = 30;
171 pub const SIGXFSZ: c_int = 31;
172 pub const SIGVTALRM: c_int = 28;
173 pub const SIGPROF: c_int = 29;
174 pub const SIGWINCH: c_int = 20;
175 pub const SIGUSR1: c_int = 16;
176 pub const SIGUSR2: c_int = 17;
177 pub const SIGCONT: c_int = 25;
178 pub const SIGSTOP: c_int = 23;
179 pub const SIGTSTP: c_int = 24;
180 pub const SIGURG: c_int = 21;
181 pub const SIGIO: c_int = 22;
182 pub const SIGSYS: c_int = 12;
183 pub const SIGPWR: c_int = 19;
184 pub const SIG_SETMASK: c_int = 3;
185 pub const SIG_BLOCK: c_int = 0x1;
186 pub const SIG_UNBLOCK: c_int = 0x2;
187 
188 pub const POLLWRNORM: c_short = 0x004;
189 pub const POLLWRBAND: c_short = 0x100;
190 
191 pub const PTHREAD_STACK_MIN: size_t = 16384;
192 
193 pub const VEOF: usize = 16;
194 pub const VEOL: usize = 17;
195 pub const VEOL2: usize = 6;
196 pub const VMIN: usize = 4;
197 pub const IEXTEN: crate::tcflag_t = 0x00000100;
198 pub const TOSTOP: crate::tcflag_t = 0x00008000;
199 pub const FLUSHO: crate::tcflag_t = 0x00002000;
200 pub const TCSANOW: c_int = 0x540e;
201 pub const TCSADRAIN: c_int = 0x540f;
202 pub const TCSAFLUSH: c_int = 0x5410;
203 
204 pub const CPU_SETSIZE: c_int = 0x400;
205 
206 pub const EFD_NONBLOCK: c_int = 0x80;
207 
208 pub const F_GETLK: c_int = 14;
209 pub const F_SETLK: c_int = 6;
210 pub const F_SETLKW: c_int = 7;
211 
212 pub const SFD_NONBLOCK: c_int = 0x80;
213 
214 pub const RTLD_GLOBAL: c_int = 0x4;
215 
216 pub const SIGSTKSZ: size_t = 8192;
217 pub const CBAUD: crate::tcflag_t = 0o0010017;
218 pub const CBAUDEX: crate::tcflag_t = 0o0010000;
219 pub const CIBAUD: crate::tcflag_t = 0o002003600000;
220 pub const TAB1: crate::tcflag_t = 0x00000800;
221 pub const TAB2: crate::tcflag_t = 0x00001000;
222 pub const TAB3: crate::tcflag_t = 0x00001800;
223 pub const TABDLY: crate::tcflag_t = 0o0014000;
224 pub const CR1: crate::tcflag_t = 0x00000200;
225 pub const CR2: crate::tcflag_t = 0x00000400;
226 pub const CR3: crate::tcflag_t = 0x00000600;
227 pub const FF1: crate::tcflag_t = 0x00008000;
228 pub const BS1: crate::tcflag_t = 0x00002000;
229 pub const BSDLY: crate::tcflag_t = 0o0020000;
230 pub const VT1: crate::tcflag_t = 0x00004000;
231 pub const VWERASE: usize = 14;
232 pub const XTABS: crate::tcflag_t = 0o0014000;
233 pub const VREPRINT: usize = 12;
234 pub const VSUSP: usize = 10;
235 pub const VSWTC: usize = 7;
236 pub const VTDLY: c_int = 0o0040000;
237 pub const VSTART: usize = 8;
238 pub const VSTOP: usize = 9;
239 pub const VDISCARD: usize = 13;
240 pub const VTIME: usize = 5;
241 pub const IXON: crate::tcflag_t = 0x00000400;
242 pub const IXOFF: crate::tcflag_t = 0x00001000;
243 pub const OLCUC: crate::tcflag_t = 0o0000002;
244 pub const ONLCR: crate::tcflag_t = 0x4;
245 pub const CSIZE: crate::tcflag_t = 0x00000030;
246 pub const CS6: crate::tcflag_t = 0x00000010;
247 pub const CS7: crate::tcflag_t = 0x00000020;
248 pub const CS8: crate::tcflag_t = 0x00000030;
249 pub const CSTOPB: crate::tcflag_t = 0x00000040;
250 pub const CRDLY: c_int = 0o0003000;
251 pub const CREAD: crate::tcflag_t = 0x00000080;
252 pub const PARENB: crate::tcflag_t = 0x00000100;
253 pub const PARODD: crate::tcflag_t = 0x00000200;
254 pub const HUPCL: crate::tcflag_t = 0x00000400;
255 pub const CLOCAL: crate::tcflag_t = 0x00000800;
256 pub const ECHOKE: crate::tcflag_t = 0x00000800;
257 pub const ECHOE: crate::tcflag_t = 0x00000010;
258 pub const ECHOK: crate::tcflag_t = 0x00000020;
259 pub const ECHONL: crate::tcflag_t = 0x00000040;
260 pub const ECHOPRT: crate::tcflag_t = 0x00000400;
261 pub const ECHOCTL: crate::tcflag_t = 0x00000200;
262 pub const ISIG: crate::tcflag_t = 0x00000001;
263 pub const ICANON: crate::tcflag_t = 0x00000002;
264 pub const PENDIN: crate::tcflag_t = 0x00004000;
265 pub const NOFLSH: crate::tcflag_t = 0x00000080;
266 
267 pub const MAP_HUGETLB: c_int = 0x80000;
268 
269 pub const B0: crate::speed_t = 0o000000;
270 pub const B50: crate::speed_t = 0o000001;
271 pub const B75: crate::speed_t = 0o000002;
272 pub const B110: crate::speed_t = 0o000003;
273 pub const B134: crate::speed_t = 0o000004;
274 pub const B150: crate::speed_t = 0o000005;
275 pub const B200: crate::speed_t = 0o000006;
276 pub const B300: crate::speed_t = 0o000007;
277 pub const B600: crate::speed_t = 0o000010;
278 pub const B1200: crate::speed_t = 0o000011;
279 pub const B1800: crate::speed_t = 0o000012;
280 pub const B2400: crate::speed_t = 0o000013;
281 pub const B4800: crate::speed_t = 0o000014;
282 pub const B9600: crate::speed_t = 0o000015;
283 pub const B19200: crate::speed_t = 0o000016;
284 pub const B38400: crate::speed_t = 0o000017;
285 pub const B57600: crate::speed_t = 0o010001;
286 pub const B115200: crate::speed_t = 0o010002;
287 pub const B230400: crate::speed_t = 0o010003;
288 pub const B460800: crate::speed_t = 0o010004;
289 pub const B500000: crate::speed_t = 0o010005;
290 pub const B576000: crate::speed_t = 0o010006;
291 pub const B921600: crate::speed_t = 0o010007;
292 pub const B1000000: crate::speed_t = 0o010010;
293 pub const B1152000: crate::speed_t = 0o010011;
294 pub const B1500000: crate::speed_t = 0o010012;
295 pub const B2000000: crate::speed_t = 0o010013;
296 pub const B2500000: crate::speed_t = 0o010014;
297 pub const B3000000: crate::speed_t = 0o010015;
298 pub const B3500000: crate::speed_t = 0o010016;
299 pub const B4000000: crate::speed_t = 0o010017;
300 
301 cfg_if! {
302     if #[cfg(target_arch = "mips")] {
303         mod mips32;
304         pub use self::mips32::*;
305     } else if #[cfg(target_arch = "mips64")] {
306         mod mips64;
307         pub use self::mips64::*;
308     } else {
309         // Unknown target_arch
310     }
311 }
312