]>
git.proxmox.com Git - rustc.git/blob - vendor/libc/src/unix/bsd/netbsdlike/mod.rs
3 pub type nlink_t
= u32;
5 pub type pthread_key_t
= ::c_int
;
7 pub type speed_t
= ::c_uint
;
8 pub type tcflag_t
= ::c_uint
;
9 pub type nl_item
= c_long
;
10 pub type clockid_t
= ::c_int
;
12 pub type sem_t
= *mut sem
;
13 pub type key_t
= c_long
;
15 #[cfg_attr(feature = "extra_traits", derive(Debug))]
17 impl ::Copy
for timezone {}
18 impl ::Clone
for timezone
{
19 fn clone(&self) -> timezone
{
23 #[cfg_attr(feature = "extra_traits", derive(Debug))]
25 impl ::Copy
for sem {}
26 impl ::Clone
for sem
{
27 fn clone(&self) -> sem
{
33 pub struct sigaction
{
34 pub sa_sigaction
: ::sighandler_t
,
35 pub sa_mask
: ::sigset_t
,
36 pub sa_flags
: ::c_int
,
40 pub ss_sp
: *mut ::c_void
,
41 pub ss_size
: ::size_t
,
42 pub ss_flags
: ::c_int
,
45 pub struct in6_pktinfo
{
46 pub ipi6_addr
: ::in6_addr
,
47 pub ipi6_ifindex
: ::c_uint
,
51 pub c_iflag
: ::tcflag_t
,
52 pub c_oflag
: ::tcflag_t
,
53 pub c_cflag
: ::tcflag_t
,
54 pub c_lflag
: ::tcflag_t
,
55 pub c_cc
: [::cc_t
; ::NCCS
],
56 pub c_ispeed
: ::c_int
,
57 pub c_ospeed
: ::c_int
,
64 pub l_type
: ::c_short
,
65 pub l_whence
: ::c_short
,
79 pub const D_T_FMT
: ::nl_item
= 0;
80 pub const D_FMT
: ::nl_item
= 1;
81 pub const T_FMT
: ::nl_item
= 2;
82 pub const T_FMT_AMPM
: ::nl_item
= 3;
83 pub const AM_STR
: ::nl_item
= 4;
84 pub const PM_STR
: ::nl_item
= 5;
86 pub const DAY_1
: ::nl_item
= 6;
87 pub const DAY_2
: ::nl_item
= 7;
88 pub const DAY_3
: ::nl_item
= 8;
89 pub const DAY_4
: ::nl_item
= 9;
90 pub const DAY_5
: ::nl_item
= 10;
91 pub const DAY_6
: ::nl_item
= 11;
92 pub const DAY_7
: ::nl_item
= 12;
94 pub const ABDAY_1
: ::nl_item
= 13;
95 pub const ABDAY_2
: ::nl_item
= 14;
96 pub const ABDAY_3
: ::nl_item
= 15;
97 pub const ABDAY_4
: ::nl_item
= 16;
98 pub const ABDAY_5
: ::nl_item
= 17;
99 pub const ABDAY_6
: ::nl_item
= 18;
100 pub const ABDAY_7
: ::nl_item
= 19;
102 pub const MON_1
: ::nl_item
= 20;
103 pub const MON_2
: ::nl_item
= 21;
104 pub const MON_3
: ::nl_item
= 22;
105 pub const MON_4
: ::nl_item
= 23;
106 pub const MON_5
: ::nl_item
= 24;
107 pub const MON_6
: ::nl_item
= 25;
108 pub const MON_7
: ::nl_item
= 26;
109 pub const MON_8
: ::nl_item
= 27;
110 pub const MON_9
: ::nl_item
= 28;
111 pub const MON_10
: ::nl_item
= 29;
112 pub const MON_11
: ::nl_item
= 30;
113 pub const MON_12
: ::nl_item
= 31;
115 pub const ABMON_1
: ::nl_item
= 32;
116 pub const ABMON_2
: ::nl_item
= 33;
117 pub const ABMON_3
: ::nl_item
= 34;
118 pub const ABMON_4
: ::nl_item
= 35;
119 pub const ABMON_5
: ::nl_item
= 36;
120 pub const ABMON_6
: ::nl_item
= 37;
121 pub const ABMON_7
: ::nl_item
= 38;
122 pub const ABMON_8
: ::nl_item
= 39;
123 pub const ABMON_9
: ::nl_item
= 40;
124 pub const ABMON_10
: ::nl_item
= 41;
125 pub const ABMON_11
: ::nl_item
= 42;
126 pub const ABMON_12
: ::nl_item
= 43;
128 pub const RADIXCHAR
: ::nl_item
= 44;
129 pub const THOUSEP
: ::nl_item
= 45;
130 pub const YESSTR
: ::nl_item
= 46;
131 pub const YESEXPR
: ::nl_item
= 47;
132 pub const NOSTR
: ::nl_item
= 48;
133 pub const NOEXPR
: ::nl_item
= 49;
134 pub const CRNCYSTR
: ::nl_item
= 50;
136 pub const CODESET
: ::nl_item
= 51;
138 pub const EXIT_FAILURE
: ::c_int
= 1;
139 pub const EXIT_SUCCESS
: ::c_int
= 0;
140 pub const RAND_MAX
: ::c_int
= 2147483647;
141 pub const EOF
: ::c_int
= -1;
142 pub const SEEK_SET
: ::c_int
= 0;
143 pub const SEEK_CUR
: ::c_int
= 1;
144 pub const SEEK_END
: ::c_int
= 2;
145 pub const _IOFBF
: ::c_int
= 0;
146 pub const _IONBF
: ::c_int
= 2;
147 pub const _IOLBF
: ::c_int
= 1;
148 pub const BUFSIZ
: ::c_uint
= 1024;
149 pub const FOPEN_MAX
: ::c_uint
= 20;
150 pub const FILENAME_MAX
: ::c_uint
= 1024;
151 pub const L_tmpnam
: ::c_uint
= 1024;
152 pub const O_NOCTTY
: ::c_int
= 32768;
153 pub const S_IFIFO
: mode_t
= 4096;
154 pub const S_IFCHR
: mode_t
= 8192;
155 pub const S_IFBLK
: mode_t
= 24576;
156 pub const S_IFDIR
: mode_t
= 16384;
157 pub const S_IFREG
: mode_t
= 32768;
158 pub const S_IFLNK
: mode_t
= 40960;
159 pub const S_IFSOCK
: mode_t
= 49152;
160 pub const S_IFMT
: mode_t
= 61440;
161 pub const S_IEXEC
: mode_t
= 64;
162 pub const S_IWRITE
: mode_t
= 128;
163 pub const S_IREAD
: mode_t
= 256;
164 pub const S_IRWXU
: mode_t
= 448;
165 pub const S_IXUSR
: mode_t
= 64;
166 pub const S_IWUSR
: mode_t
= 128;
167 pub const S_IRUSR
: mode_t
= 256;
168 pub const S_IRWXG
: mode_t
= 56;
169 pub const S_IXGRP
: mode_t
= 8;
170 pub const S_IWGRP
: mode_t
= 16;
171 pub const S_IRGRP
: mode_t
= 32;
172 pub const S_IRWXO
: mode_t
= 7;
173 pub const S_IXOTH
: mode_t
= 1;
174 pub const S_IWOTH
: mode_t
= 2;
175 pub const S_IROTH
: mode_t
= 4;
176 pub const F_OK
: ::c_int
= 0;
177 pub const R_OK
: ::c_int
= 4;
178 pub const W_OK
: ::c_int
= 2;
179 pub const X_OK
: ::c_int
= 1;
180 pub const STDIN_FILENO
: ::c_int
= 0;
181 pub const STDOUT_FILENO
: ::c_int
= 1;
182 pub const STDERR_FILENO
: ::c_int
= 2;
183 pub const F_LOCK
: ::c_int
= 1;
184 pub const F_TEST
: ::c_int
= 3;
185 pub const F_TLOCK
: ::c_int
= 2;
186 pub const F_ULOCK
: ::c_int
= 0;
187 pub const F_GETLK
: ::c_int
= 7;
188 pub const F_SETLK
: ::c_int
= 8;
189 pub const F_SETLKW
: ::c_int
= 9;
190 pub const SIGHUP
: ::c_int
= 1;
191 pub const SIGINT
: ::c_int
= 2;
192 pub const SIGQUIT
: ::c_int
= 3;
193 pub const SIGILL
: ::c_int
= 4;
194 pub const SIGABRT
: ::c_int
= 6;
195 pub const SIGEMT
: ::c_int
= 7;
196 pub const SIGFPE
: ::c_int
= 8;
197 pub const SIGKILL
: ::c_int
= 9;
198 pub const SIGSEGV
: ::c_int
= 11;
199 pub const SIGPIPE
: ::c_int
= 13;
200 pub const SIGALRM
: ::c_int
= 14;
201 pub const SIGTERM
: ::c_int
= 15;
203 pub const PROT_NONE
: ::c_int
= 0;
204 pub const PROT_READ
: ::c_int
= 1;
205 pub const PROT_WRITE
: ::c_int
= 2;
206 pub const PROT_EXEC
: ::c_int
= 4;
208 pub const MAP_FILE
: ::c_int
= 0x0000;
209 pub const MAP_SHARED
: ::c_int
= 0x0001;
210 pub const MAP_PRIVATE
: ::c_int
= 0x0002;
211 pub const MAP_FIXED
: ::c_int
= 0x0010;
212 pub const MAP_ANON
: ::c_int
= 0x1000;
213 pub const MAP_ANONYMOUS
: ::c_int
= MAP_ANON
;
215 pub const MAP_FAILED
: *mut ::c_void
= !0 as *mut ::c_void
;
217 pub const IPC_CREAT
: ::c_int
= 0o001000;
218 pub const IPC_EXCL
: ::c_int
= 0o002000;
219 pub const IPC_NOWAIT
: ::c_int
= 0o004000;
221 pub const IPC_PRIVATE
: ::key_t
= 0;
223 pub const IPC_RMID
: ::c_int
= 0;
224 pub const IPC_SET
: ::c_int
= 1;
225 pub const IPC_STAT
: ::c_int
= 2;
227 pub const MCL_CURRENT
: ::c_int
= 0x0001;
228 pub const MCL_FUTURE
: ::c_int
= 0x0002;
230 pub const MS_ASYNC
: ::c_int
= 0x0001;
232 pub const EPERM
: ::c_int
= 1;
233 pub const ENOENT
: ::c_int
= 2;
234 pub const ESRCH
: ::c_int
= 3;
235 pub const EINTR
: ::c_int
= 4;
236 pub const EIO
: ::c_int
= 5;
237 pub const ENXIO
: ::c_int
= 6;
238 pub const E2BIG
: ::c_int
= 7;
239 pub const ENOEXEC
: ::c_int
= 8;
240 pub const EBADF
: ::c_int
= 9;
241 pub const ECHILD
: ::c_int
= 10;
242 pub const EDEADLK
: ::c_int
= 11;
243 pub const ENOMEM
: ::c_int
= 12;
244 pub const EACCES
: ::c_int
= 13;
245 pub const EFAULT
: ::c_int
= 14;
246 pub const ENOTBLK
: ::c_int
= 15;
247 pub const EBUSY
: ::c_int
= 16;
248 pub const EEXIST
: ::c_int
= 17;
249 pub const EXDEV
: ::c_int
= 18;
250 pub const ENODEV
: ::c_int
= 19;
251 pub const ENOTDIR
: ::c_int
= 20;
252 pub const EISDIR
: ::c_int
= 21;
253 pub const EINVAL
: ::c_int
= 22;
254 pub const ENFILE
: ::c_int
= 23;
255 pub const EMFILE
: ::c_int
= 24;
256 pub const ENOTTY
: ::c_int
= 25;
257 pub const ETXTBSY
: ::c_int
= 26;
258 pub const EFBIG
: ::c_int
= 27;
259 pub const ENOSPC
: ::c_int
= 28;
260 pub const ESPIPE
: ::c_int
= 29;
261 pub const EROFS
: ::c_int
= 30;
262 pub const EMLINK
: ::c_int
= 31;
263 pub const EPIPE
: ::c_int
= 32;
264 pub const EDOM
: ::c_int
= 33;
265 pub const ERANGE
: ::c_int
= 34;
266 pub const EAGAIN
: ::c_int
= 35;
267 pub const EWOULDBLOCK
: ::c_int
= 35;
268 pub const EINPROGRESS
: ::c_int
= 36;
269 pub const EALREADY
: ::c_int
= 37;
270 pub const ENOTSOCK
: ::c_int
= 38;
271 pub const EDESTADDRREQ
: ::c_int
= 39;
272 pub const EMSGSIZE
: ::c_int
= 40;
273 pub const EPROTOTYPE
: ::c_int
= 41;
274 pub const ENOPROTOOPT
: ::c_int
= 42;
275 pub const EPROTONOSUPPORT
: ::c_int
= 43;
276 pub const ESOCKTNOSUPPORT
: ::c_int
= 44;
277 pub const EOPNOTSUPP
: ::c_int
= 45;
278 pub const EPFNOSUPPORT
: ::c_int
= 46;
279 pub const EAFNOSUPPORT
: ::c_int
= 47;
280 pub const EADDRINUSE
: ::c_int
= 48;
281 pub const EADDRNOTAVAIL
: ::c_int
= 49;
282 pub const ENETDOWN
: ::c_int
= 50;
283 pub const ENETUNREACH
: ::c_int
= 51;
284 pub const ENETRESET
: ::c_int
= 52;
285 pub const ECONNABORTED
: ::c_int
= 53;
286 pub const ECONNRESET
: ::c_int
= 54;
287 pub const ENOBUFS
: ::c_int
= 55;
288 pub const EISCONN
: ::c_int
= 56;
289 pub const ENOTCONN
: ::c_int
= 57;
290 pub const ESHUTDOWN
: ::c_int
= 58;
291 pub const ETOOMANYREFS
: ::c_int
= 59;
292 pub const ETIMEDOUT
: ::c_int
= 60;
293 pub const ECONNREFUSED
: ::c_int
= 61;
294 pub const ELOOP
: ::c_int
= 62;
295 pub const ENAMETOOLONG
: ::c_int
= 63;
296 pub const EHOSTDOWN
: ::c_int
= 64;
297 pub const EHOSTUNREACH
: ::c_int
= 65;
298 pub const ENOTEMPTY
: ::c_int
= 66;
299 pub const EPROCLIM
: ::c_int
= 67;
300 pub const EUSERS
: ::c_int
= 68;
301 pub const EDQUOT
: ::c_int
= 69;
302 pub const ESTALE
: ::c_int
= 70;
303 pub const EREMOTE
: ::c_int
= 71;
304 pub const EBADRPC
: ::c_int
= 72;
305 pub const ERPCMISMATCH
: ::c_int
= 73;
306 pub const EPROGUNAVAIL
: ::c_int
= 74;
307 pub const EPROGMISMATCH
: ::c_int
= 75;
308 pub const EPROCUNAVAIL
: ::c_int
= 76;
309 pub const ENOLCK
: ::c_int
= 77;
310 pub const ENOSYS
: ::c_int
= 78;
311 pub const EFTYPE
: ::c_int
= 79;
312 pub const EAUTH
: ::c_int
= 80;
313 pub const ENEEDAUTH
: ::c_int
= 81;
315 pub const F_DUPFD
: ::c_int
= 0;
316 pub const F_GETFD
: ::c_int
= 1;
317 pub const F_SETFD
: ::c_int
= 2;
318 pub const F_GETFL
: ::c_int
= 3;
319 pub const F_SETFL
: ::c_int
= 4;
321 pub const SIGTRAP
: ::c_int
= 5;
323 pub const GLOB_APPEND
: ::c_int
= 0x0001;
324 pub const GLOB_DOOFFS
: ::c_int
= 0x0002;
325 pub const GLOB_ERR
: ::c_int
= 0x0004;
326 pub const GLOB_MARK
: ::c_int
= 0x0008;
327 pub const GLOB_NOCHECK
: ::c_int
= 0x0010;
328 pub const GLOB_NOSORT
: ::c_int
= 0x0020;
329 pub const GLOB_NOESCAPE
: ::c_int
= 0x1000;
331 pub const GLOB_NOSPACE
: ::c_int
= -1;
332 pub const GLOB_ABORTED
: ::c_int
= -2;
333 pub const GLOB_NOMATCH
: ::c_int
= -3;
334 pub const GLOB_NOSYS
: ::c_int
= -4;
336 pub const POSIX_MADV_NORMAL
: ::c_int
= 0;
337 pub const POSIX_MADV_RANDOM
: ::c_int
= 1;
338 pub const POSIX_MADV_SEQUENTIAL
: ::c_int
= 2;
339 pub const POSIX_MADV_WILLNEED
: ::c_int
= 3;
340 pub const POSIX_MADV_DONTNEED
: ::c_int
= 4;
342 pub const PTHREAD_CREATE_JOINABLE
: ::c_int
= 0;
343 pub const PTHREAD_CREATE_DETACHED
: ::c_int
= 1;
345 pub const PT_TRACE_ME
: ::c_int
= 0;
346 pub const PT_READ_I
: ::c_int
= 1;
347 pub const PT_READ_D
: ::c_int
= 2;
348 pub const PT_WRITE_I
: ::c_int
= 4;
349 pub const PT_WRITE_D
: ::c_int
= 5;
350 pub const PT_CONTINUE
: ::c_int
= 7;
351 pub const PT_KILL
: ::c_int
= 8;
352 pub const PT_ATTACH
: ::c_int
= 9;
353 pub const PT_DETACH
: ::c_int
= 10;
354 pub const PT_IO
: ::c_int
= 11;
356 // http://man.openbsd.org/OpenBSD-current/man2/clock_getres.2
357 // The man page says clock_gettime(3) can accept various values as clockid_t but
358 // http://fxr.watson.org/fxr/source/kern/kern_time.c?v=OPENBSD;im=excerpts#L161
359 // the implementation rejects anything other than the below two
361 // http://netbsd.gw.com/cgi-bin/man-cgi?clock_gettime
362 // https://github.com/jsonn/src/blob/HEAD/sys/kern/subr_time.c#L222
363 // Basically the same goes for NetBSD
364 pub const CLOCK_REALTIME
: ::clockid_t
= 0;
365 pub const CLOCK_MONOTONIC
: ::clockid_t
= 3;
367 pub const RLIMIT_CPU
: ::c_int
= 0;
368 pub const RLIMIT_FSIZE
: ::c_int
= 1;
369 pub const RLIMIT_DATA
: ::c_int
= 2;
370 pub const RLIMIT_STACK
: ::c_int
= 3;
371 pub const RLIMIT_CORE
: ::c_int
= 4;
372 pub const RLIMIT_RSS
: ::c_int
= 5;
373 pub const RLIMIT_MEMLOCK
: ::c_int
= 6;
374 pub const RLIMIT_NPROC
: ::c_int
= 7;
375 pub const RLIMIT_NOFILE
: ::c_int
= 8;
377 pub const RLIM_INFINITY
: rlim_t
= 0x7fff_ffff_ffff_ffff;
378 pub const RLIM_SAVED_MAX
: rlim_t
= RLIM_INFINITY
;
379 pub const RLIM_SAVED_CUR
: rlim_t
= RLIM_INFINITY
;
381 pub const RUSAGE_SELF
: ::c_int
= 0;
382 pub const RUSAGE_CHILDREN
: ::c_int
= -1;
384 pub const MADV_NORMAL
: ::c_int
= 0;
385 pub const MADV_RANDOM
: ::c_int
= 1;
386 pub const MADV_SEQUENTIAL
: ::c_int
= 2;
387 pub const MADV_WILLNEED
: ::c_int
= 3;
388 pub const MADV_DONTNEED
: ::c_int
= 4;
389 pub const MADV_FREE
: ::c_int
= 6;
391 pub const AF_UNSPEC
: ::c_int
= 0;
392 pub const AF_LOCAL
: ::c_int
= 1;
393 pub const AF_UNIX
: ::c_int
= AF_LOCAL
;
394 pub const AF_INET
: ::c_int
= 2;
395 pub const AF_IMPLINK
: ::c_int
= 3;
396 pub const AF_PUP
: ::c_int
= 4;
397 pub const AF_CHAOS
: ::c_int
= 5;
398 pub const AF_NS
: ::c_int
= 6;
399 pub const AF_ISO
: ::c_int
= 7;
400 pub const AF_OSI
: ::c_int
= AF_ISO
;
401 pub const AF_DATAKIT
: ::c_int
= 9;
402 pub const AF_CCITT
: ::c_int
= 10;
403 pub const AF_SNA
: ::c_int
= 11;
404 pub const AF_DECnet
: ::c_int
= 12;
405 pub const AF_DLI
: ::c_int
= 13;
406 pub const AF_LAT
: ::c_int
= 14;
407 pub const AF_HYLINK
: ::c_int
= 15;
408 pub const AF_APPLETALK
: ::c_int
= 16;
409 pub const AF_LINK
: ::c_int
= 18;
410 pub const pseudo_AF_XTP
: ::c_int
= 19;
411 pub const AF_COIP
: ::c_int
= 20;
412 pub const AF_CNT
: ::c_int
= 21;
413 pub const pseudo_AF_RTIP
: ::c_int
= 22;
414 pub const AF_IPX
: ::c_int
= 23;
415 pub const AF_INET6
: ::c_int
= 24;
416 pub const pseudo_AF_PIP
: ::c_int
= 25;
417 pub const AF_ISDN
: ::c_int
= 26;
418 pub const AF_E164
: ::c_int
= AF_ISDN
;
419 pub const AF_NATM
: ::c_int
= 27;
421 pub const PF_UNSPEC
: ::c_int
= AF_UNSPEC
;
422 pub const PF_LOCAL
: ::c_int
= AF_LOCAL
;
423 pub const PF_UNIX
: ::c_int
= PF_LOCAL
;
424 pub const PF_INET
: ::c_int
= AF_INET
;
425 pub const PF_IMPLINK
: ::c_int
= AF_IMPLINK
;
426 pub const PF_PUP
: ::c_int
= AF_PUP
;
427 pub const PF_CHAOS
: ::c_int
= AF_CHAOS
;
428 pub const PF_NS
: ::c_int
= AF_NS
;
429 pub const PF_ISO
: ::c_int
= AF_ISO
;
430 pub const PF_OSI
: ::c_int
= AF_ISO
;
431 pub const PF_DATAKIT
: ::c_int
= AF_DATAKIT
;
432 pub const PF_CCITT
: ::c_int
= AF_CCITT
;
433 pub const PF_SNA
: ::c_int
= AF_SNA
;
434 pub const PF_DECnet
: ::c_int
= AF_DECnet
;
435 pub const PF_DLI
: ::c_int
= AF_DLI
;
436 pub const PF_LAT
: ::c_int
= AF_LAT
;
437 pub const PF_HYLINK
: ::c_int
= AF_HYLINK
;
438 pub const PF_APPLETALK
: ::c_int
= AF_APPLETALK
;
439 pub const PF_LINK
: ::c_int
= AF_LINK
;
440 pub const PF_XTP
: ::c_int
= pseudo_AF_XTP
;
441 pub const PF_COIP
: ::c_int
= AF_COIP
;
442 pub const PF_CNT
: ::c_int
= AF_CNT
;
443 pub const PF_IPX
: ::c_int
= AF_IPX
;
444 pub const PF_INET6
: ::c_int
= AF_INET6
;
445 pub const PF_RTIP
: ::c_int
= pseudo_AF_RTIP
;
446 pub const PF_PIP
: ::c_int
= pseudo_AF_PIP
;
447 pub const PF_ISDN
: ::c_int
= AF_ISDN
;
448 pub const PF_NATM
: ::c_int
= AF_NATM
;
450 pub const SOCK_STREAM
: ::c_int
= 1;
451 pub const SOCK_DGRAM
: ::c_int
= 2;
452 pub const SOCK_RAW
: ::c_int
= 3;
453 pub const SOCK_RDM
: ::c_int
= 4;
454 pub const SOCK_SEQPACKET
: ::c_int
= 5;
455 pub const IP_TTL
: ::c_int
= 4;
456 pub const IP_HDRINCL
: ::c_int
= 2;
457 pub const IP_ADD_MEMBERSHIP
: ::c_int
= 12;
458 pub const IP_DROP_MEMBERSHIP
: ::c_int
= 13;
459 pub const IPV6_RECVPKTINFO
: ::c_int
= 36;
460 pub const IPV6_PKTINFO
: ::c_int
= 46;
461 pub const IPV6_RECVTCLASS
: ::c_int
= 57;
462 pub const IPV6_TCLASS
: ::c_int
= 61;
464 pub const SOL_SOCKET
: ::c_int
= 0xffff;
465 pub const SO_DEBUG
: ::c_int
= 0x01;
466 pub const SO_ACCEPTCONN
: ::c_int
= 0x0002;
467 pub const SO_REUSEADDR
: ::c_int
= 0x0004;
468 pub const SO_KEEPALIVE
: ::c_int
= 0x0008;
469 pub const SO_DONTROUTE
: ::c_int
= 0x0010;
470 pub const SO_BROADCAST
: ::c_int
= 0x0020;
471 pub const SO_USELOOPBACK
: ::c_int
= 0x0040;
472 pub const SO_LINGER
: ::c_int
= 0x0080;
473 pub const SO_OOBINLINE
: ::c_int
= 0x0100;
474 pub const SO_REUSEPORT
: ::c_int
= 0x0200;
475 pub const SO_SNDBUF
: ::c_int
= 0x1001;
476 pub const SO_RCVBUF
: ::c_int
= 0x1002;
477 pub const SO_SNDLOWAT
: ::c_int
= 0x1003;
478 pub const SO_RCVLOWAT
: ::c_int
= 0x1004;
479 pub const SO_ERROR
: ::c_int
= 0x1007;
480 pub const SO_TYPE
: ::c_int
= 0x1008;
482 pub const SOMAXCONN
: ::c_int
= 128;
484 pub const MSG_OOB
: ::c_int
= 0x1;
485 pub const MSG_PEEK
: ::c_int
= 0x2;
486 pub const MSG_DONTROUTE
: ::c_int
= 0x4;
487 pub const MSG_EOR
: ::c_int
= 0x8;
488 pub const MSG_TRUNC
: ::c_int
= 0x10;
489 pub const MSG_CTRUNC
: ::c_int
= 0x20;
490 pub const MSG_WAITALL
: ::c_int
= 0x40;
491 pub const MSG_DONTWAIT
: ::c_int
= 0x80;
492 pub const MSG_BCAST
: ::c_int
= 0x100;
493 pub const MSG_MCAST
: ::c_int
= 0x200;
494 pub const MSG_NOSIGNAL
: ::c_int
= 0x400;
495 pub const MSG_CMSG_CLOEXEC
: ::c_int
= 0x800;
497 pub const SHUT_RD
: ::c_int
= 0;
498 pub const SHUT_WR
: ::c_int
= 1;
499 pub const SHUT_RDWR
: ::c_int
= 2;
501 pub const LOCK_SH
: ::c_int
= 1;
502 pub const LOCK_EX
: ::c_int
= 2;
503 pub const LOCK_NB
: ::c_int
= 4;
504 pub const LOCK_UN
: ::c_int
= 8;
506 pub const IPPROTO_RAW
: ::c_int
= 255;
508 pub const _SC_ARG_MAX
: ::c_int
= 1;
509 pub const _SC_CHILD_MAX
: ::c_int
= 2;
510 pub const _SC_NGROUPS_MAX
: ::c_int
= 4;
511 pub const _SC_OPEN_MAX
: ::c_int
= 5;
512 pub const _SC_JOB_CONTROL
: ::c_int
= 6;
513 pub const _SC_SAVED_IDS
: ::c_int
= 7;
514 pub const _SC_VERSION
: ::c_int
= 8;
515 pub const _SC_BC_BASE_MAX
: ::c_int
= 9;
516 pub const _SC_BC_DIM_MAX
: ::c_int
= 10;
517 pub const _SC_BC_SCALE_MAX
: ::c_int
= 11;
518 pub const _SC_BC_STRING_MAX
: ::c_int
= 12;
519 pub const _SC_COLL_WEIGHTS_MAX
: ::c_int
= 13;
520 pub const _SC_EXPR_NEST_MAX
: ::c_int
= 14;
521 pub const _SC_LINE_MAX
: ::c_int
= 15;
522 pub const _SC_RE_DUP_MAX
: ::c_int
= 16;
523 pub const _SC_2_VERSION
: ::c_int
= 17;
524 pub const _SC_2_C_BIND
: ::c_int
= 18;
525 pub const _SC_2_C_DEV
: ::c_int
= 19;
526 pub const _SC_2_CHAR_TERM
: ::c_int
= 20;
527 pub const _SC_2_FORT_DEV
: ::c_int
= 21;
528 pub const _SC_2_FORT_RUN
: ::c_int
= 22;
529 pub const _SC_2_LOCALEDEF
: ::c_int
= 23;
530 pub const _SC_2_SW_DEV
: ::c_int
= 24;
531 pub const _SC_2_UPE
: ::c_int
= 25;
532 pub const _SC_STREAM_MAX
: ::c_int
= 26;
533 pub const _SC_TZNAME_MAX
: ::c_int
= 27;
534 pub const _SC_PAGESIZE
: ::c_int
= 28;
535 pub const _SC_PAGE_SIZE
: ::c_int
= _SC_PAGESIZE
;
536 pub const _SC_FSYNC
: ::c_int
= 29;
537 pub const _SC_XOPEN_SHM
: ::c_int
= 30;
539 pub const Q_GETQUOTA
: ::c_int
= 0x300;
540 pub const Q_SETQUOTA
: ::c_int
= 0x400;
542 pub const RTLD_GLOBAL
: ::c_int
= 0x100;
544 pub const LOG_NFACILITIES
: ::c_int
= 24;
546 pub const HW_NCPU
: ::c_int
= 3;
548 pub const B0
: speed_t
= 0;
549 pub const B50
: speed_t
= 50;
550 pub const B75
: speed_t
= 75;
551 pub const B110
: speed_t
= 110;
552 pub const B134
: speed_t
= 134;
553 pub const B150
: speed_t
= 150;
554 pub const B200
: speed_t
= 200;
555 pub const B300
: speed_t
= 300;
556 pub const B600
: speed_t
= 600;
557 pub const B1200
: speed_t
= 1200;
558 pub const B1800
: speed_t
= 1800;
559 pub const B2400
: speed_t
= 2400;
560 pub const B4800
: speed_t
= 4800;
561 pub const B9600
: speed_t
= 9600;
562 pub const B19200
: speed_t
= 19200;
563 pub const B38400
: speed_t
= 38400;
564 pub const B7200
: speed_t
= 7200;
565 pub const B14400
: speed_t
= 14400;
566 pub const B28800
: speed_t
= 28800;
567 pub const B57600
: speed_t
= 57600;
568 pub const B76800
: speed_t
= 76800;
569 pub const B115200
: speed_t
= 115200;
570 pub const B230400
: speed_t
= 230400;
571 pub const EXTA
: speed_t
= 19200;
572 pub const EXTB
: speed_t
= 38400;
574 pub const SEM_FAILED
: *mut sem_t
= 0 as *mut sem_t
;
576 pub const CRTSCTS
: ::tcflag_t
= 0x00010000;
577 pub const CRTS_IFLOW
: ::tcflag_t
= CRTSCTS
;
578 pub const CCTS_OFLOW
: ::tcflag_t
= CRTSCTS
;
579 pub const OCRNL
: ::tcflag_t
= 0x10;
581 pub const TIOCEXCL
: ::c_ulong
= 0x2000740d;
582 pub const TIOCNXCL
: ::c_ulong
= 0x2000740e;
583 pub const TIOCFLUSH
: ::c_ulong
= 0x80047410;
584 pub const TIOCGETA
: ::c_ulong
= 0x402c7413;
585 pub const TIOCSETA
: ::c_ulong
= 0x802c7414;
586 pub const TIOCSETAW
: ::c_ulong
= 0x802c7415;
587 pub const TIOCSETAF
: ::c_ulong
= 0x802c7416;
588 pub const TIOCGETD
: ::c_ulong
= 0x4004741a;
589 pub const TIOCSETD
: ::c_ulong
= 0x8004741b;
590 pub const TIOCMGET
: ::c_ulong
= 0x4004746a;
591 pub const TIOCMBIC
: ::c_ulong
= 0x8004746b;
592 pub const TIOCMBIS
: ::c_ulong
= 0x8004746c;
593 pub const TIOCMSET
: ::c_ulong
= 0x8004746d;
594 pub const TIOCSTART
: ::c_ulong
= 0x2000746e;
595 pub const TIOCSTOP
: ::c_ulong
= 0x2000746f;
596 pub const TIOCSCTTY
: ::c_ulong
= 0x20007461;
597 pub const TIOCGWINSZ
: ::c_ulong
= 0x40087468;
598 pub const TIOCSWINSZ
: ::c_ulong
= 0x80087467;
599 pub const TIOCM_LE
: ::c_int
= 0o0001;
600 pub const TIOCM_DTR
: ::c_int
= 0o0002;
601 pub const TIOCM_RTS
: ::c_int
= 0o0004;
602 pub const TIOCM_ST
: ::c_int
= 0o0010;
603 pub const TIOCM_SR
: ::c_int
= 0o0020;
604 pub const TIOCM_CTS
: ::c_int
= 0o0040;
605 pub const TIOCM_CAR
: ::c_int
= 0o0100;
606 pub const TIOCM_RNG
: ::c_int
= 0o0200;
607 pub const TIOCM_DSR
: ::c_int
= 0o0400;
608 pub const TIOCM_CD
: ::c_int
= TIOCM_CAR
;
609 pub const TIOCM_RI
: ::c_int
= TIOCM_RNG
;
611 // Flags for chflags(2)
612 pub const UF_SETTABLE
: ::c_ulong
= 0x0000ffff;
613 pub const UF_NODUMP
: ::c_ulong
= 0x00000001;
614 pub const UF_IMMUTABLE
: ::c_ulong
= 0x00000002;
615 pub const UF_APPEND
: ::c_ulong
= 0x00000004;
616 pub const UF_OPAQUE
: ::c_ulong
= 0x00000008;
617 pub const SF_SETTABLE
: ::c_ulong
= 0xffff0000;
618 pub const SF_ARCHIVED
: ::c_ulong
= 0x00010000;
619 pub const SF_IMMUTABLE
: ::c_ulong
= 0x00020000;
620 pub const SF_APPEND
: ::c_ulong
= 0x00040000;
622 pub const TIMER_ABSTIME
: ::c_int
= 1;
624 pub const REG_ENOSYS
: ::c_int
= 17;
626 #[link(name = "util")]
629 pub fn sem_destroy(sem
: *mut sem_t
) -> ::c_int
;
636 pub fn daemon(nochdir
: ::c_int
, noclose
: ::c_int
) -> ::c_int
;
639 addr
: *mut ::sockaddr
,
640 addrlen
: *mut ::socklen_t
,
648 #[cfg_attr(target_os = "netbsd", link_name = "__clock_getres50")]
649 pub fn clock_getres(clk_id
: ::clockid_t
, tp
: *mut ::timespec
) -> ::c_int
;
650 #[cfg_attr(target_os = "netbsd", link_name = "__clock_gettime50")]
651 pub fn clock_gettime(clk_id
: ::clockid_t
, tp
: *mut ::timespec
) -> ::c_int
;
652 #[cfg_attr(target_os = "netbsd", link_name = "__clock_settime50")]
653 pub fn clock_settime(
655 tp
: *const ::timespec
,
657 pub fn __errno() -> *mut ::c_int
;
659 name
: *const ::c_char
,
668 pub fn mkostemp(template
: *mut ::c_char
, flags
: ::c_int
) -> ::c_int
;
670 template
: *mut ::c_char
,
686 pub fn futimens(fd
: ::c_int
, times
: *const ::timespec
) -> ::c_int
;
689 path
: *const ::c_char
,
690 times
: *const ::timespec
,
693 pub fn fdatasync(fd
: ::c_int
) -> ::c_int
;
695 amaster
: *mut ::c_int
,
696 aslave
: *mut ::c_int
,
699 winp
: *mut ::winsize
,
702 amaster
: *mut ::c_int
,
705 winp
: *mut ::winsize
,
707 pub fn login_tty(fd
: ::c_int
) -> ::c_int
;
708 pub fn getpriority(which
: ::c_int
, who
: ::id_t
) -> ::c_int
;
709 pub fn setpriority(which
: ::c_int
, who
: ::id_t
, prio
: ::c_int
) -> ::c_int
;
713 pathname
: *const ::c_char
,
719 pathname
: *const ::c_char
,
722 pub fn sem_timedwait(
724 abstime
: *const ::timespec
,
726 pub fn sem_getvalue(sem
: *mut sem_t
, sval
: *mut ::c_int
) -> ::c_int
;
727 pub fn pthread_condattr_setclock(
728 attr
: *mut pthread_condattr_t
,
729 clock_id
: ::clockid_t
,
731 pub fn sethostname(name
: *const ::c_char
, len
: ::size_t
) -> ::c_int
;
732 pub fn pthread_mutex_timedlock(
733 lock
: *mut pthread_mutex_t
,
734 abstime
: *const ::timespec
,
736 pub fn pipe2(fds
: *mut ::c_int
, flags
: ::c_int
) -> ::c_int
;
739 name
: *const ::c_char
,
741 groups
: *mut ::gid_t
,
742 ngroups
: *mut ::c_int
,
744 pub fn initgroups(name
: *const ::c_char
, basegid
: ::gid_t
) -> ::c_int
;
745 pub fn getdomainname(name
: *mut ::c_char
, len
: ::size_t
) -> ::c_int
;
746 pub fn setdomainname(name
: *const ::c_char
, len
: ::size_t
) -> ::c_int
;
747 pub fn uname(buf
: *mut ::utsname
) -> ::c_int
;
749 pub fn shmget(key
: ::key_t
, size
: ::size_t
, shmflg
: ::c_int
) -> ::c_int
;
752 shmaddr
: *const ::c_void
,
755 pub fn shmdt(shmaddr
: *const ::c_void
) -> ::c_int
;
759 buf
: *mut ::shmid_ds
,
764 if #[cfg(target_os = "netbsd")] {
766 pub use self::netbsd
::*;
767 } else if #[cfg(target_os = "openbsd")] {
769 pub use self::openbsd
::*;