Expand description
Raw FFI bindings to platform system libraries.
§Usage Guidelines
libc exposes non-Rust interfaces in Rust, which makes for some caveats to its use that are
not present in most Rust libraries. Observing the following guidelines are recommended to help
avoid soundness and stability pitfalls.
-
Never construct a
libcstruct withMaybeUninit::uninit(), initialize it, then callassume_init. Many structures have padding fields or may gain fields in the future, and it is far too easy to end up callingassume_initon partially initialized data.Instead, use
MaybeUninit::zeroed()or theDefaultimplementations that are slowly being added. Alternatively, access fields only via raw pointer without ever usingassume_init. -
Avoid relying on the exact value of constants, the exact length of arrays, or the exact types of type aliases, as they may change across
libcversions. That is, iflibccontains code like:ⓘconst IFNAMSIZ: usize = 16; pub struct ifreq { pub ifr_name: [c_char; IFNAMSIZ], // ... } extern "C" { pub fn time(time: *mut time_t) -> time_t; }Then avoid writing code like:
ⓘ// Bad assumption that the length will always be 16. fn takes_ifr_name(ifr_name: [c_char; 16]) { /* ... */ } fn process_ifr(ifr: ifreq) { takes_ifr_name(ifr.ifr_name); } // Bad assumption that `time_t` will always be an `i64`. Use `-> time_t` instead, or // explicitly cast to an `i64`.` fn get_time() -> i64 { unsafe { time(ptr::null_mut()) } }For
takes_ifr_name, use[c_char; IFNAMSIZ]or just&[c_char]instead. Forget_time, return atime_tor explicitly cast to ani64.Along the same lines, if you write code along the lines of
assert_eq!(libc::ELAST, 97), expect that there may be a release where this starts to fail. -
Do not name
__c_anonymous_*types anywhere, which exist to represent anonymous fields in C. For example, FreeBSD defines:struct filestat { int fs_type; // ... struct { struct filestat stqe_next; } next; };Which is represented in
libcas:ⓘstruct filestat { fs_type: c_int, // ... next: __c_anonymous_filestat, } struct __c_anonymous_filestat { stqe_next: *mut filestat }Accessing
some_filestat.next.stqe_nextis completely fine, but__c_anonymous_filestatshould not be used anywhere (e.g. in a function signature). This is done to permitlibcto switch to anonymous fields if the feature is ever added to Rust. -
Avoid accessing fields with names such as
__reserved,_pad, or_spare. Usually the platform libraries use these to allow adding new fields without changing the size of a struct, but this means their types change frequently. -
Be aware of deprecation warnings. These are used as a way to migrate necessary API changes.
§Cargo Features
-
std: by defaultlibcassumes that the standard library contains link directives necessary to use the APIs in this crate. Ifstdis disabled,libcwill emit the directives instead.This feature is slated for removal in
libc1.0. The intention is that no-std users oflibcshould use their own#[link]attributes,rustc-link-libbuild script directives, or-larguments for only the system libraries they need to link, rather thanlibcpossibly linking more than is needed or available. If you are usinglibcwithout thestdfeature, consider starting to add link directives now for a smoother 1.0 transition. -
extra_traits: all types inlibcimplementClone,Copy, andDebug. Theextra_traitsfeature addsEq,Hash, andPartialEq.This feature is expected to be removed in libc 1.0. Libraries should instead hash or check equality of only needed fields.
-
The features
const-extern-fn,align, anduse_stdare all deprecated and do nothing.
§Stability Expectations
Due to libc’s position in the ecosystem, it can effectively never publish semver-breaking
releases. However, the API that libc binds changes all the time; sometimes in ways that
are harmless, sometimes in ways that are technically API-breaking for all users but unlikely
to be noticed (e.g. removing deprecated API), and sometimes in ways that are nonbreaking in
C but translate to breaking changes in Rust (e.g. changing the type of an integer). libc
tries to strike a balance but all of this means that unfortunately, libc must occasionally
ship changes within a semver-compatible release that are technically semver-breaking.
The following are examples of changes that fall into this category:
- Fields are added to a struct that is otherwise exhaustive.
- Fields with names such as
paddingorreservedchange type or are removed. - The length of an array type changes.
- A struct field (with available padding) is changed from
inttolong.
In general, libc aims to follow platform API changes, even when this means changes that are
user-visible in Rust. There are a few guidelines used here:
- Adding struct fields is not considered breaking, nor is changing fields named
reserved,padding, or similar. This is because users are expected to use field-by-field initialization. - Changing type aliases, values of constants, or array lengths is not considered breaking.
- If the platform libc has accepted breakage on the C side (typically in the form of removing
old API), the
libccrate will follow suit. - Where possible,
#[deprecated(...)]will be used to warn about changes before applying them. Alternative mitigations may be considered. - Potentially breaking changes will be well-identified in release notes.
- Beyond this, public API is not expected to change on Tier 1 targets. Tier 2 targets have relaxed API stability requirements, and API stability is not enforced on tier 3 targets.
While this section seems scary, keep in mind that it is meant to cover worst-case scenarios. In
practice, breakage is rare and following the above-discussed Usage Guidelines
means that most libc users will never encounter a problem.
Structs§
- DIR
- This is an extern type (“opaque” or “incomplete” type in C).
- Dl_info
- Elf32_
Phdr - Elf64_
Phdr - FILE
- This is an extern type (“opaque” or “incomplete” type in C).
- addrinfo
- aiocb
- cmsghdr
- cpu_
set_ t - dirent
- dirent64
- dl_
phdr_ info - dqblk
- epoll_
event - fd_set
- ff_
condition_ effect - ff_
constant_ effect - ff_
effect - ff_
envelope - ff_
periodic_ effect - ff_
ramp_ effect - ff_
replay - ff_
rumble_ effect - ff_
trigger - flock
- fpos64_
t - This is an extern type (“opaque” or “incomplete” type in C).
- fpos_t
- This is an extern type (“opaque” or “incomplete” type in C).
- fsid_t
- glob_t
- group
- hostent
- if_
nameindex - ifaddrs
- in6_
addr - in6_
pktinfo - in_addr
- input_
absinfo - input_
event - input_
id - input_
keymap_ entry - input_
mask - iovec
- ip_mreq
- ip_
mreqn - ipc_
perm - ipv6_
mreq - itimerspec
- itimerval
- lconv
- linger
- mcontext_
t - mmsghdr
- mq_attr
- msghdr
- msginfo
- msqid_
ds - passwd
- pollfd
- protoent
- pthread_
attr_ t - pthread_
cond_ t - pthread_
condattr_ t - pthread_
mutex_ t - pthread_
mutexattr_ t - pthread_
rwlock_ t - pthread_
rwlockattr_ t - rlimit
- rlimit64
- rusage
- sched_
param - sem_t
- sembuf
- servent
- shmid_
ds - sigaction
- sigevent
- siginfo_
t - signalfd_
siginfo - sigset_
t - sigval
- sockaddr
- sockaddr_
in - sockaddr_
in6 - sockaddr_
ll - sockaddr_
nl - sockaddr_
storage - sockaddr_
un - sockaddr_
vm - spwd
- stack_t
- stat
- stat64
- statfs
- statfs64
- statvfs
- statvfs64
- sysinfo
- termios
- termios2
- timespec
- timeval
- timezone
- This is an extern type (“opaque” or “incomplete” type in C).
- tm
- tms
- ucontext_
t - ucred
- utimbuf
- utsname
- winsize
Enums§
Constants§
- ABDAY_1
- ABDAY_2
- ABDAY_3
- ABDAY_4
- ABDAY_5
- ABDAY_6
- ABDAY_7
- ABMON_1
- ABMON_2
- ABMON_3
- ABMON_4
- ABMON_5
- ABMON_6
- ABMON_7
- ABMON_8
- ABMON_9
- ABMON_
10 - ABMON_
11 - ABMON_
12 - AF_ALG
- AF_
APPLETALK - AF_ASH
- AF_
ATMPVC - AF_
ATMSVC - AF_AX25
- AF_
BLUETOOTH - AF_
BRIDGE - AF_CAIF
- AF_CAN
- AF_
DECnet - AF_
ECONET - AF_IB
- AF_
IEEE802154 - AF_INET
- AF_
INET6 - AF_IPX
- AF_IRDA
- AF_ISDN
- AF_IUCV
- AF_KEY
- AF_LLC
- AF_
LOCAL - AF_MPLS
- AF_
NETBEUI - AF_
NETLINK - AF_
NETROM - AF_NFC
- AF_
PACKET - AF_
PHONET - AF_
PPPOX - AF_RDS
- AF_ROSE
- AF_
ROUTE - AF_
RXRPC - AF_
SECURITY - AF_SNA
- AF_TIPC
- AF_UNIX
- AF_
UNSPEC - AF_
VSOCK - AF_
WANPIPE - AF_X25
- AIO_
ALLDONE - AIO_
CANCELED - AIO_
NOTCANCELED - AI_
ADDRCONFIG - AI_ALL
- AI_
CANONNAME - AI_
NUMERICHOST - AI_
NUMERICSERV - AI_
PASSIVE - AI_
V4MAPPED - ALT_
DIGITS - AM_STR
- AT_
EACCESS - AT_
EMPTY_ PATH - AT_
FDCWD - AT_
NO_ AUTOMOUNT - AT_
REMOVEDIR - AT_
SYMLINK_ FOLLOW - AT_
SYMLINK_ NOFOLLOW - B0
- B50
- B75
- B110
- B134
- B150
- B200
- B300
- B600
- B1200
- B1800
- B2400
- B4800
- B9600
- B19200
- B38400
- B57600
- B115200
- B230400
- B460800
- B500000
- B576000
- B921600
- B1000000
- B1152000
- B1500000
- B2000000
- B2500000
- B3000000
- B3500000
- B4000000
- BRKINT
- BS0
- BS1
- BSDLY
- BUFSIZ
- CBAUD
- CBAUDEX
- CIBAUD
- CLD_
CONTINUED - CLD_
DUMPED - CLD_
EXITED - CLD_
KILLED - CLD_
STOPPED - CLD_
TRAPPED - CLOCAL
- CLOCK_
BOOTTIME - CLOCK_
BOOTTIME_ ALARM - CLOCK_
MONOTONIC - CLOCK_
MONOTONIC_ COARSE - CLOCK_
MONOTONIC_ RAW - CLOCK_
PROCESS_ CPUTIME_ ID - CLOCK_
REALTIME - CLOCK_
REALTIME_ ALARM - CLOCK_
REALTIME_ COARSE - CLOCK_
SGI_ CYCLE - CLOCK_
TAI - CLOCK_
THREAD_ CPUTIME_ ID - CLONE_
CHILD_ CLEARTID - CLONE_
CHILD_ SETTID - CLONE_
DETACHED - CLONE_
FILES - CLONE_
FS - CLONE_
IO - CLONE_
NEWCGROUP - CLONE_
NEWIPC - CLONE_
NEWNET - CLONE_
NEWNS - CLONE_
NEWPID - CLONE_
NEWUSER - CLONE_
NEWUTS - CLONE_
PARENT - CLONE_
PARENT_ SETTID - CLONE_
PTRACE - CLONE_
SETTLS - CLONE_
SIGHAND - CLONE_
SYSVSEM - CLONE_
THREAD - CLONE_
UNTRACED - CLONE_
VFORK - CLONE_
VM - CMSPAR
- CODESET
- CPU_
SETSIZE - CR0
- CR1
- CR2
- CR3
- CRDLY
- CREAD
- CRNCYSTR
- CRTSCTS
- CS
- CS5
- CS6
- CS7
- CS8
- CSIZE
- CSTOPB
- DAY_1
- DAY_2
- DAY_3
- DAY_4
- DAY_5
- DAY_6
- DAY_7
- DS
- DT_BLK
- DT_CHR
- DT_DIR
- DT_FIFO
- DT_LNK
- DT_REG
- DT_SOCK
- DT_
UNKNOWN - D_FMT
- D_T_FMT
- E2BIG
- EACCES
- EADDRINUSE
- EADDRNOTAVAIL
- EADV
- EAFNOSUPPORT
- EAGAIN
- EAI_
AGAIN - EAI_
BADFLAGS - EAI_
FAIL - EAI_
FAMILY - EAI_
MEMORY - EAI_
NONAME - EAI_
OVERFLOW - EAI_
SERVICE - EAI_
SOCKTYPE - EAI_
SYSTEM - EALREADY
- EBADE
- EBADF
- EBADFD
- EBADMSG
- EBADR
- EBADRQC
- EBADSLT
- EBFONT
- EBUSY
- ECANCELED
- ECHILD
- ECHO
- ECHOCTL
- ECHOE
- ECHOK
- ECHOKE
- ECHONL
- ECHOPRT
- ECHRNG
- ECOMM
- ECONNABORTED
- ECONNREFUSED
- ECONNRESET
- EDEADLK
- EDEADLOCK
- EDESTADDRREQ
- EDOM
- EDOTDOT
- EDQUOT
- EEXIST
- EFAULT
- EFBIG
- EFD_
CLOEXEC - EFD_
NONBLOCK - EFD_
SEMAPHORE - EFLAGS
- EHOSTDOWN
- EHOSTUNREACH
- EHWPOISON
- EIDRM
- EILSEQ
- EINPROGRESS
- EINTR
- EINVAL
- EIO
- EISCONN
- EISDIR
- EISNAM
- EKEYEXPIRED
- EKEYREJECTED
- EKEYREVOKED
- EL2HLT
- EL2NSYNC
- EL3HLT
- EL3RST
- ELIBACC
- ELIBBAD
- ELIBEXEC
- ELIBMAX
- ELIBSCN
- ELNRNG
- ELOOP
- EMEDIUMTYPE
- EMFILE
- EMLINK
- EMSGSIZE
- EMULTIHOP
- ENAMETOOLONG
- ENAVAIL
- ENETDOWN
- ENETRESET
- ENETUNREACH
- ENFILE
- ENOANO
- ENOATTR
- ENOBUFS
- ENOCSI
- ENODATA
- ENODEV
- ENOENT
- ENOEXEC
- ENOKEY
- ENOLCK
- ENOLINK
- ENOMEDIUM
- ENOMEM
- ENOMSG
- ENONET
- ENOPKG
- ENOPROTOOPT
- ENOSPC
- ENOSR
- ENOSTR
- ENOSYS
- ENOTBLK
- ENOTCONN
- ENOTDIR
- ENOTEMPTY
- ENOTNAM
- ENOTRECOVERABLE
- ENOTSOCK
- ENOTSUP
- ENOTTY
- ENOTUNIQ
- ENXIO
- EOF
- EOPNOTSUPP
- EOVERFLOW
- EOWNERDEAD
- EPERM
- EPFNOSUPPORT
- EPIPE
- EPOLLERR
- EPOLLET
- EPOLLEXCLUSIVE
- EPOLLHUP
- EPOLLIN
- EPOLLMSG
- EPOLLONESHOT
- EPOLLOUT
- EPOLLPRI
- EPOLLRDBAND
- EPOLLRDHUP
- EPOLLRDNORM
- EPOLLWAKEUP
- EPOLLWRBAND
- EPOLLWRNORM
- EPOLL_
CLOEXEC - EPOLL_
CTL_ ADD - EPOLL_
CTL_ DEL - EPOLL_
CTL_ MOD - EPROTO
- EPROTONOSUPPORT
- EPROTOTYPE
- ERA
- ERANGE
- ERA_
D_ FMT - ERA_
D_ T_ FMT - ERA_
T_ FMT - EREMCHG
- EREMOTE
- EREMOTEIO
- ERESTART
- ERFKILL
- EROFS
- ES
- ESHUTDOWN
- ESOCKTNOSUPPORT
- ESPIPE
- ESRCH
- ESRMNT
- ESTALE
- ESTRPIPE
- ETH_
P_ 802_ 2 - ETH_
P_ 802_ 3 - ETH_
P_ 802_ 3_ MIN - ETH_
P_ 802_ EX1 - ETH_
P_ 1588 - ETH_
P_ 8021AD - ETH_
P_ 8021AH - ETH_
P_ 8021Q - ETH_
P_ 80221 - ETH_
P_ AARP - ETH_
P_ AF_ IUCV - ETH_
P_ ALL - ETH_
P_ AOE - ETH_
P_ ARCNET - ETH_
P_ ARP - ETH_
P_ ATALK - ETH_
P_ ATMFATE - ETH_
P_ ATMMPOA - ETH_
P_ AX25 - ETH_
P_ BATMAN - ETH_
P_ BPQ - ETH_
P_ CAIF - ETH_
P_ CAN - ETH_
P_ CANFD - ETH_
P_ CONTROL - ETH_
P_ CUST - ETH_
P_ DDCMP - ETH_
P_ DEC - ETH_
P_ DIAG - ETH_
P_ DNA_ DL - ETH_
P_ DNA_ RC - ETH_
P_ DNA_ RT - ETH_
P_ DSA - ETH_
P_ ECONET - ETH_
P_ EDSA - ETH_
P_ FCOE - ETH_
P_ FIP - ETH_
P_ HDLC - ETH_
P_ IEEE802154 - ETH_
P_ IEEEPUP - ETH_
P_ IEEEPUPAT - ETH_
P_ IP - ETH_
P_ IPV6 - ETH_
P_ IPX - ETH_
P_ IRDA - ETH_
P_ LAT - ETH_
P_ LINK_ CTL - ETH_
P_ LOCALTALK - ETH_
P_ LOOP - ETH_
P_ LOOPBACK - ETH_
P_ MOBITEX - ETH_
P_ MPLS_ MC - ETH_
P_ MPLS_ UC - ETH_
P_ MVRP - ETH_
P_ PAE - ETH_
P_ PAUSE - ETH_
P_ PHONET - ETH_
P_ PPPTALK - ETH_
P_ PPP_ DISC - ETH_
P_ PPP_ MP - ETH_
P_ PPP_ SES - ETH_
P_ PRP - ETH_
P_ PUP - ETH_
P_ PUPAT - ETH_
P_ QINQ1 - ETH_
P_ QINQ2 - ETH_
P_ QINQ3 - ETH_
P_ RARP - ETH_
P_ SCA - ETH_
P_ SLOW - ETH_
P_ SNAP - ETH_
P_ TDLS - ETH_
P_ TEB - ETH_
P_ TIPC - ETH_
P_ TRAILER - ETH_
P_ TR_ 802_ 2 - ETH_
P_ WAN_ PPP - ETH_
P_ WCCP - ETH_
P_ X25 - ETIME
- ETIMEDOUT
- ETOOMANYREFS
- ETXTBSY
- EUCLEAN
- EUNATCH
- EUSERS
- EWOULDBLOCK
- EXDEV
- EXFULL
- EXIT_
FAILURE - EXIT_
SUCCESS - EXTA
- EXTB
- EXTPROC
- FALLOC_
FL_ COLLAPSE_ RANGE - FALLOC_
FL_ INSERT_ RANGE - FALLOC_
FL_ KEEP_ SIZE - FALLOC_
FL_ PUNCH_ HOLE - FALLOC_
FL_ UNSHARE_ RANGE - FALLOC_
FL_ ZERO_ RANGE - FD_
CLOEXEC - FD_
SETSIZE - FF0
- FF1
- FFDLY
- FILENAME_
MAX - FIOCLEX
- FIONBIO
- FIONREAD
- FLUSHO
- FOPEN_
MAX - FS
- FS_BASE
- F_
ADD_ SEALS - F_
CANCELLK - F_DUPFD
- F_
DUPFD_ CLOEXEC - F_GETFD
- F_GETFL
- F_
GETLEASE - F_GETLK
- F_
GETOWN - F_
GETPIPE_ SZ - F_
GET_ SEALS - F_LOCK
- F_
NOTIFY - F_OK
- F_
SEAL_ GROW - F_
SEAL_ SEAL - F_
SEAL_ SHRINK - F_
SEAL_ WRITE - F_SETFD
- F_SETFL
- F_
SETLEASE - F_SETLK
- F_
SETLKW - F_
SETOWN - F_
SETPIPE_ SZ - F_TEST
- F_TLOCK
- F_ULOCK
- GLOB_
ABORTED - GLOB_
APPEND - GLOB_
DOOFFS - GLOB_
ERR - GLOB_
MARK - GLOB_
NOCHECK - GLOB_
NOESCAPE - GLOB_
NOMATCH - GLOB_
NOSORT - GLOB_
NOSPACE - GRPQUOTA
- GS
- GS_BASE
- HUGETLB_
FLAG_ ENCODE_ SHIFT - HUPCL
- ICANON
- ICRNL
- IEXTEN
- IFF_
ALLMULTI - IFF_
AUTOMEDIA - IFF_
BROADCAST - IFF_
DEBUG - IFF_
DORMANT - IFF_
DYNAMIC - IFF_
ECHO - IFF_
LOOPBACK - IFF_
LOWER_ UP - IFF_
MASTER - IFF_
MULTICAST - IFF_
NOARP - IFF_
NOTRAILERS - IFF_
NO_ PI - IFF_
POINTOPOINT - IFF_
PORTSEL - IFF_
PROMISC - IFF_
RUNNING - IFF_
SLAVE - IFF_TAP
- IFF_TUN
- IFF_UP
- IFNAMSIZ
- IF_
NAMESIZE - IGNBRK
- IGNCR
- IGNPAR
- IMAXBEL
- INADDR_
ANY - INADDR_
BROADCAST - INADDR_
LOOPBACK - INADDR_
NONE - INLCR
- INPCK
- INT_MAX
- INT_MIN
- IPC_
CREAT - IPC_
EXCL - IPC_
INFO - IPC_
NOWAIT - IPC_
PRIVATE - IPC_
RMID - IPC_SET
- IPC_
STAT - IPPROTO_
AH - IP6 Auth Header
- IPPROTO_
BEETPH - IPPROTO_
COMP - IP Payload Comp. Protocol
- IPPROTO_
DCCP - DCCP
- IPPROTO_
DSTOPTS - IP6 destination option
- IPPROTO_
EGP - exterior gateway protocol
- IPPROTO_
ENCAP - encapsulation header
- IPPROTO_
ESP - IP6 Encap Sec. Payload
- IPPROTO_
FRAGMENT - IP6 fragmentation header
- IPPROTO_
GRE - General Routing Encap.
- IPPROTO_
HOPOPTS - Hop-by-hop option header
- IPPROTO_
ICMP - IPPROTO_
ICMP V6 - IPPROTO_
IDP - xns idp
- IPPROTO_
IGMP - group mgmt protocol
- IPPROTO_
IP - IPPROTO_
IPIP - for compatibility
- IPPROTO_
IPV6 - IPPROTO_
MAX - IPPROTO_
MH - IPPROTO_
MPLS - IPPROTO_
MTP - IPPROTO_
NONE - IP6 no next header
- IPPROTO_
PIM - Protocol indep. multicast
- IPPROTO_
PUP - pup
- IPPROTO_
RAW - raw IP packet
- IPPROTO_
ROUTING - IP6 routing header
- IPPROTO_
RSVP - resource reservation
- IPPROTO_
SCTP - SCTP
- IPPROTO_
TCP - IPPROTO_
TP - tp-4 w/ class negotiation
- IPPROTO_
UDP - IPPROTO_
UDPLITE - IPV6_
ADD_ MEMBERSHIP - IPV6_
DROP_ MEMBERSHIP - IPV6_
MULTICAST_ HOPS - IPV6_
MULTICAST_ IF - IPV6_
MULTICAST_ LOOP - IPV6_
RECVPKTINFO - IPV6_
RECVTCLASS - IPV6_
TCLASS - IPV6_
UNICAST_ HOPS - IPV6_
V6ONLY - IP_
ADD_ MEMBERSHIP - IP_
DROP_ MEMBERSHIP - IP_
FREEBIND - IP_
HDRINCL - IP_
MULTICAST_ IF - IP_
MULTICAST_ LOOP - IP_
MULTICAST_ TTL - IP_
RECVTOS - IP_TOS
- IP_
TRANSPARENT - IP_TTL
- ISIG
- ISTRIP
- ITIMER_
PROF - ITIMER_
REAL - ITIMER_
VIRTUAL - IUTF8
- IXANY
- IXOFF
- IXON
- LC_ALL
- LC_
COLLATE - LC_
COLLATE_ MASK - LC_
CTYPE - LC_
CTYPE_ MASK - LC_
MESSAGES - LC_
MESSAGES_ MASK - LC_
MONETARY - LC_
MONETARY_ MASK - LC_
NUMERIC - LC_
NUMERIC_ MASK - LC_TIME
- LC_
TIME_ MASK - LIO_NOP
- LIO_
NOWAIT - LIO_
READ - LIO_
WAIT - LIO_
WRITE - LOCK_EX
- LOCK_NB
- LOCK_SH
- LOCK_UN
- LOG_
ALERT - LOG_
AUTH - LOG_
AUTHPRIV - LOG_
CONS - LOG_
CRIT - LOG_
CRON - LOG_
DAEMON - LOG_
DEBUG - LOG_
EMERG - LOG_ERR
- LOG_
FACMASK - LOG_FTP
- LOG_
INFO - LOG_
KERN - LOG_
LOCA L0 - LOG_
LOCA L1 - LOG_
LOCA L2 - LOG_
LOCA L3 - LOG_
LOCA L4 - LOG_
LOCA L5 - LOG_
LOCA L6 - LOG_
LOCA L7 - LOG_LPR
- LOG_
MAIL - LOG_
NDELAY - LOG_
NEWS - LOG_
NFACILITIES - LOG_
NOTICE - LOG_
NOWAIT - LOG_
ODELAY - LOG_
PERROR - LOG_PID
- LOG_
PRIMASK - LOG_
SYSLOG - LOG_
USER - LOG_
UUCP - LOG_
WARNING - L_
tmpnam - MADV_
DODUMP - MADV_
DOFORK - MADV_
DONTDUMP - MADV_
DONTFORK - MADV_
DONTNEED - MADV_
FREE - MADV_
HUGEPAGE - MADV_
HWPOISON - MADV_
MERGEABLE - MADV_
NOHUGEPAGE - MADV_
NORMAL - MADV_
RANDOM - MADV_
REMOVE - MADV_
SEQUENTIAL - MADV_
SOFT_ OFFLINE - MADV_
UNMERGEABLE - MADV_
WILLNEED - MAP_
32BIT - MAP_
ANON - MAP_
ANONYMOUS - MAP_
DENYWRITE - MAP_
EXECUTABLE - MAP_
FAILED - MAP_
FILE - MAP_
FIXED - MAP_
GROWSDOWN - MAP_
HUGETLB - MAP_
HUGE_ SHIFT - MAP_
LOCKED - MAP_
NONBLOCK - MAP_
NORESERVE - MAP_
POPULATE - MAP_
PRIVATE - MAP_
SHARED - MAP_
STACK - MAP_
TYPE - MCL_
CURRENT - MCL_
FUTURE - MFD_
ALLOW_ SEALING - MFD_
CLOEXEC - MINSIGSTKSZ
- MNT_
DETACH - MNT_
EXPIRE - MNT_
FORCE - MON_1
- MON_2
- MON_3
- MON_4
- MON_5
- MON_6
- MON_7
- MON_8
- MON_9
- MON_10
- MON_11
- MON_12
- MREMAP_
FIXED - MREMAP_
MAYMOVE - MSG_
CMSG_ CLOEXEC - MSG_
CONFIRM - MSG_
COPY - MSG_
CTRUNC - MSG_
DONTROUTE - MSG_
DONTWAIT - MSG_EOR
- MSG_
ERRQUEUE - MSG_
EXCEPT - MSG_
FASTOPEN - MSG_FIN
- MSG_
INFO - MSG_
MORE - MSG_
NOERROR - MSG_
NOSIGNAL - MSG_OOB
- MSG_
PEEK - MSG_RST
- MSG_
STAT - MSG_SYN
- MSG_
TRUNC - MSG_
WAITALL - MSG_
WAITFORONE - MS_
ACTIVE - MS_
ASYNC - MS_BIND
- MS_
DIRSYNC - MS_
INVALIDATE - MS_
I_ VERSION - MS_
KERNMOUNT - MS_
MANDLOCK - MS_
MGC_ MSK - MS_
MGC_ VAL - MS_MOVE
- MS_
NOATIME - MS_
NODEV - MS_
NODIRATIME - MS_
NOEXEC - MS_
NOSUID - MS_
NOUSER - MS_
POSIXACL - MS_
PRIVATE - MS_
RDONLY - MS_REC
- MS_
RELATIME - MS_
REMOUNT - MS_
RMT_ MASK - MS_
SHARED - MS_
SILENT - MS_
SLAVE - MS_
STRICTATIME - MS_SYNC
- MS_
SYNCHRONOUS - MS_
UNBINDABLE - NCCS
- NI_
DGRAM - NI_
MAXHOST - NI_
NAMEREQD - NI_
NOFQDN - NI_
NUMERICHOST - NI_
NUMERICSERV - NL0
- NL1
- NLDLY
- NOEXPR
- NOFLSH
- NOSTR
- OCRNL
- OFDEL
- OFILL
- OLCUC
- ONLCR
- ONLRET
- ONOCR
- OPOST
- ORIG_
RAX - O_
ACCMODE - O_
APPEND - O_ASYNC
- O_
CLOEXEC - O_CREAT
- O_
DIRECT - O_
DIRECTORY - O_DSYNC
- O_EXCL
- O_EXEC
- O_
LARGEFILE - O_
NDELAY - O_
NOATIME - O_
NOCTTY - O_
NOFOLLOW - O_
NONBLOCK - O_PATH
- O_
RDONLY - O_RDWR
- O_RSYNC
- O_
SEARCH - O_SYNC
- O_
TMPFILE - O_TRUNC
- O_
WRONLY - PARENB
- PARMRK
- PARODD
- PATH_
MAX - Constants may change across releases. See the usage guidelines for details.
- PENDIN
- PF_ALG
- PF_
APPLETALK - PF_ASH
- PF_
ATMPVC - PF_
ATMSVC - PF_AX25
- PF_
BLUETOOTH - PF_
BRIDGE - PF_CAIF
- PF_CAN
- PF_
DECnet - PF_
ECONET - PF_IB
- PF_
IEEE802154 - PF_INET
- PF_
INET6 - PF_IPX
- PF_IRDA
- PF_ISDN
- PF_IUCV
- PF_KEY
- PF_LLC
- PF_
LOCAL - PF_MPLS
- PF_
NETBEUI - PF_
NETLINK - PF_
NETROM - PF_NFC
- PF_
PACKET - PF_
PHONET - PF_
PPPOX - PF_RDS
- PF_ROSE
- PF_
ROUTE - PF_
RXRPC - PF_
SECURITY - PF_SNA
- PF_TIPC
- PF_UNIX
- PF_
UNSPEC - PF_
VSOCK - PF_
WANPIPE - PF_X25
- PIPE_
BUF - PM_STR
- POLLERR
- POLLHUP
- POLLIN
- POLLNVAL
- POLLOUT
- POLLPRI
- POLLRDBAND
- POLLRDNORM
- POLLWRBAND
- POLLWRNORM
- POSIX_
FADV_ DONTNEED - POSIX_
FADV_ NOREUSE - POSIX_
FADV_ NORMAL - POSIX_
FADV_ RANDOM - POSIX_
FADV_ SEQUENTIAL - POSIX_
FADV_ WILLNEED - POSIX_
MADV_ DONTNEED - POSIX_
MADV_ NORMAL - POSIX_
MADV_ RANDOM - POSIX_
MADV_ SEQUENTIAL - POSIX_
MADV_ WILLNEED - PRIO_
MAX - PRIO_
MIN - PRIO_
PGRP - PRIO_
PROCESS - PRIO_
USER - PROT_
EXEC - PROT_
GROWSDOWN - PROT_
GROWSUP - PROT_
NONE - PROT_
READ - PROT_
WRITE - PR_
CAPBSET_ DROP - PR_
CAPBSET_ READ - PR_
CAP_ AMBIENT - PR_
CAP_ AMBIENT_ CLEAR_ ALL - PR_
CAP_ AMBIENT_ IS_ SET - PR_
CAP_ AMBIENT_ LOWER - PR_
CAP_ AMBIENT_ RAISE - PR_
ENDIAN_ BIG - PR_
ENDIAN_ LITTLE - PR_
ENDIAN_ PPC_ LITTLE - PR_
FPEMU_ NOPRINT - PR_
FPEMU_ SIGFPE - PR_
FP_ EXC_ ASYNC - PR_
FP_ EXC_ DISABLED - PR_
FP_ EXC_ DIV - PR_
FP_ EXC_ INV - PR_
FP_ EXC_ NONRECOV - PR_
FP_ EXC_ OVF - PR_
FP_ EXC_ PRECISE - PR_
FP_ EXC_ RES - PR_
FP_ EXC_ SW_ ENABLE - PR_
FP_ EXC_ UND - PR_
FP_ MODE_ FR - PR_
FP_ MODE_ FRE - PR_
GET_ CHILD_ SUBREAPER - PR_
GET_ DUMPABLE - PR_
GET_ ENDIAN - PR_
GET_ FPEMU - PR_
GET_ FPEXC - PR_
GET_ FP_ MODE - PR_
GET_ KEEPCAPS - PR_
GET_ NAME - PR_
GET_ NO_ NEW_ PRIVS - PR_
GET_ PDEATHSIG - PR_
GET_ SECCOMP - PR_
GET_ SECUREBITS - PR_
GET_ THP_ DISABLE - PR_
GET_ TID_ ADDRESS - PR_
GET_ TIMERSLACK - PR_
GET_ TIMING - PR_
GET_ TSC - PR_
GET_ UNALIGN - PR_
MCE_ KILL - PR_
MCE_ KILL_ CLEAR - PR_
MCE_ KILL_ DEFAULT - PR_
MCE_ KILL_ EARLY - PR_
MCE_ KILL_ GET - PR_
MCE_ KILL_ LATE - PR_
MCE_ KILL_ SET - PR_
MPX_ DISABLE_ MANAGEMENT - PR_
MPX_ ENABLE_ MANAGEMENT - PR_
SET_ CHILD_ SUBREAPER - PR_
SET_ DUMPABLE - PR_
SET_ ENDIAN - PR_
SET_ FPEMU - PR_
SET_ FPEXC - PR_
SET_ FP_ MODE - PR_
SET_ KEEPCAPS - PR_
SET_ MM - PR_
SET_ MM_ ARG_ END - PR_
SET_ MM_ ARG_ START - PR_
SET_ MM_ AUXV - PR_
SET_ MM_ BRK - PR_
SET_ MM_ END_ CODE - PR_
SET_ MM_ END_ DATA - PR_
SET_ MM_ ENV_ END - PR_
SET_ MM_ ENV_ START - PR_
SET_ MM_ EXE_ FILE - PR_
SET_ MM_ MAP - PR_
SET_ MM_ MAP_ SIZE - PR_
SET_ MM_ START_ BRK - PR_
SET_ MM_ START_ CODE - PR_
SET_ MM_ START_ DATA - PR_
SET_ MM_ START_ STACK - PR_
SET_ NAME - PR_
SET_ NO_ NEW_ PRIVS - PR_
SET_ PDEATHSIG - PR_
SET_ PTRACER - PR_
SET_ PTRACER_ ANY - PR_
SET_ SECCOMP - PR_
SET_ SECUREBITS - PR_
SET_ THP_ DISABLE - PR_
SET_ TIMERSLACK - PR_
SET_ TIMING - PR_
SET_ TSC - PR_
SET_ UNALIGN - PR_
TASK_ PERF_ EVENTS_ DISABLE - PR_
TASK_ PERF_ EVENTS_ ENABLE - PR_
TIMING_ STATISTICAL - PR_
TIMING_ TIMESTAMP - PR_
TSC_ ENABLE - PR_
TSC_ SIGSEGV - PR_
UNALIGN_ NOPRINT - PR_
UNALIGN_ SIGBUS - PTHREAD_
COND_ INITIALIZER - PTHREAD_
CREATE_ DETACHED - PTHREAD_
CREATE_ JOINABLE - PTHREAD_
MUTEX_ DEFAULT - PTHREAD_
MUTEX_ ERRORCHECK - PTHREAD_
MUTEX_ INITIALIZER - PTHREAD_
MUTEX_ NORMAL - PTHREAD_
MUTEX_ RECURSIVE - PTHREAD_
PROCESS_ PRIVATE - PTHREAD_
PROCESS_ SHARED - PTHREAD_
RWLOCK_ INITIALIZER - PTHREAD_
STACK_ MIN - PTRACE_
ATTACH - PTRACE_
CONT - PTRACE_
DETACH - PTRACE_
EVENT_ CLONE - PTRACE_
EVENT_ EXEC - PTRACE_
EVENT_ EXIT - PTRACE_
EVENT_ FORK - PTRACE_
EVENT_ SECCOMP - PTRACE_
EVENT_ VFORK - PTRACE_
EVENT_ VFORK_ DONE - PTRACE_
GETEVENTMSG - PTRACE_
GETFPREGS - PTRACE_
GETFPXREGS - PTRACE_
GETREGS - PTRACE_
GETREGSET - PTRACE_
GETSIGINFO - PTRACE_
INTERRUPT - PTRACE_
KILL - PTRACE_
LISTEN - PTRACE_
O_ EXITKILL - PTRACE_
O_ MASK - PTRACE_
O_ SUSPEND_ SECCOMP - PTRACE_
O_ TRACECLONE - PTRACE_
O_ TRACEEXEC - PTRACE_
O_ TRACEEXIT - PTRACE_
O_ TRACEFORK - PTRACE_
O_ TRACESECCOMP - PTRACE_
O_ TRACESYSGOOD - PTRACE_
O_ TRACEVFORK - PTRACE_
O_ TRACEVFORKDONE - PTRACE_
PEEKDATA - PTRACE_
PEEKSIGINFO - PTRACE_
PEEKTEXT - PTRACE_
PEEKUSER - PTRACE_
POKEDATA - PTRACE_
POKETEXT - PTRACE_
POKEUSER - PTRACE_
SEIZE - PTRACE_
SETFPREGS - PTRACE_
SETFPXREGS - PTRACE_
SETOPTIONS - PTRACE_
SETREGS - PTRACE_
SETREGSET - PTRACE_
SETSIGINFO - PTRACE_
SINGLESTEP - PTRACE_
SYSCALL - PTRACE_
TRACEME - PT_
DYNAMIC - PT_
GNU_ EH_ FRAME - PT_
GNU_ RELRO - PT_
GNU_ STACK - PT_
INTERP - PT_LOAD
- PT_LOOS
- PT_NOTE
- PT_NULL
- PT_NUM
- PT_PHDR
- PT_
SHLIB - PT_TLS
- P_ALL
- P_PGID
- P_PID
- QFMT_
VFS_ OLD - QFMT_
VFS_ V0 - QFMT_
VFS_ V1 - QIF_ALL
- QIF_
BLIMITS - QIF_
BTIME - QIF_
ILIMITS - QIF_
INODES - QIF_
ITIME - QIF_
LIMITS - QIF_
SPACE - QIF_
TIMES - QIF_
USAGE - Q_
GETFMT - Q_
GETINFO - Q_
GETQUOTA - Q_
QUOTAOFF - Q_
QUOTAON - Q_
SETINFO - Q_
SETQUOTA - Q_SYNC
- R8
- R9
- R10
- R11
- R12
- R13
- R14
- R15
- RADIXCHAR
- RAND_
MAX - RAX
- RBP
- RBX
- RB_
AUTOBOOT - RB_
DISABLE_ CAD - RB_
ENABLE_ CAD - RB_
HALT_ SYSTEM - RB_
KEXEC - RB_
POWER_ OFF - RB_
SW_ SUSPEND - RCX
- RDI
- RDX
- RENAME_
EXCHANGE - RENAME_
NOREPLACE - RENAME_
WHITEOUT - RIP
- RLIMIT_
AS - RLIMIT_
CORE - RLIMIT_
CPU - RLIMIT_
DATA - RLIMIT_
FSIZE - RLIMIT_
LOCKS - RLIMIT_
MEMLOCK - RLIMIT_
MSGQUEUE - RLIMIT_
NICE - RLIMIT_
NLIMITS Deprecated - RLIMIT_
NOFILE - RLIMIT_
NPROC - RLIMIT_
RSS - RLIMIT_
RTPRIO - RLIMIT_
RTTIME - RLIMIT_
SIGPENDING - RLIMIT_
STACK - RLIM_
INFINITY - RLIM_
NLIMITS Deprecated - RLIM_
SAVED_ CUR - RLIM_
SAVED_ MAX - RSI
- RSP
- RTLD_
DEFAULT - RTLD_
GLOBAL - RTLD_
LAZY - RTLD_
LOCAL - RTLD_
NEXT - RTLD_
NODELETE - RTLD_
NOLOAD - RTLD_
NOW - RUSAGE_
CHILDREN - RUSAGE_
SELF - RUSAGE_
THREAD - R_OK
- SA_
NOCLDSTOP - SA_
NOCLDWAIT - SA_
NODEFER - SA_
ONSTACK - SA_
RESETHAND - SA_
RESTART - SA_
SIGINFO - SCHED_
BATCH - SCHED_
FIFO - SCHED_
IDLE - SCHED_
OTHER - SCHED_
RR - SCM_
CREDENTIALS - SCM_
RIGHTS - SCM_
TIMESTAMP - SEEK_
CUR - SEEK_
END - SEEK_
SET - SEM_
FAILED - SFD_
CLOEXEC - SFD_
NONBLOCK - SHM_
EXEC - SHM_
HUGETLB - SHM_
LOCK - SHM_
NORESERVE - SHM_R
- SHM_
RDONLY - SHM_
REMAP - SHM_RND
- SHM_
UNLOCK - SHM_W
- SHUT_RD
- SHUT_
RDWR - SHUT_WR
- SIGABRT
- SIGALRM
- SIGBUS
- SIGCHLD
- SIGCONT
- SIGEV_
NONE - SIGEV_
SIGNAL - SIGEV_
THREAD - SIGFPE
- SIGHUP
- SIGILL
- SIGINT
- SIGIO
- SIGIOT
- SIGKILL
- SIGPIPE
- SIGPOLL
- SIGPROF
- SIGPWR
- SIGQUIT
- SIGSEGV
- SIGSTKFLT
- SIGSTKSZ
- SIGSTOP
- SIGSYS
- SIGTERM
- SIGTRAP
- SIGTSTP
- SIGTTIN
- SIGTTOU
- SIGUNUSED
- SIGURG
- SIGUSR1
- SIGUSR2
- SIGVTALRM
- SIGWINCH
- SIGXCPU
- SIGXFSZ
- SIG_
BLOCK - SIG_DFL
- SIG_ERR
- SIG_IGN
- SIG_
SETMASK - SIG_
UNBLOCK - SI_
LOAD_ SHIFT - SOCK_
CLOEXEC - SOCK_
DCCP - SOCK_
DGRAM - SOCK_
NONBLOCK - SOCK_
PACKET - SOCK_
RAW - SOCK_
RDM - SOCK_
SEQPACKET - SOCK_
STREAM - SOL_AAL
- SOL_ATM
- SOL_
DCCP - SOL_
DECNET - SOL_
ICMP V6 - SOL_IP
- SOL_
IPV6 - SOL_
IRDA - SOL_LLC
- SOL_
NETBEUI - SOL_
NETLINK - SOL_
PACKET - SOL_RAW
- SOL_
SOCKET - SOL_TCP
- SOL_
TIPC - SOL_UDP
- SOL_X25
- SOMAXCONN
- SO_
ACCEPTCONN - SO_
BINDTODEVICE - SO_
BINDTOIFINDEX - SO_
BROADCAST - SO_
BSDCOMPAT - SO_
BUSY_ POLL - SO_
COOKIE - SO_
DEBUG - SO_
DOMAIN - SO_
DONTROUTE - SO_
ERROR - SO_
FUCHSIA_ MARK - SO_
KEEPALIVE - SO_
LINGER - SO_MARK
- SO_
NO_ CHECK - SO_
OOBINLINE - SO_
ORIGINAL_ DST - SO_
PASSCRED - SO_
PEEK_ OFF - SO_
PEERCRED - SO_
PRIORITY - SO_
PROTOCOL - SO_
RCVBUF - SO_
RCVBUFFORCE - SO_
RCVLOWAT - SO_
RCVTIMEO - SO_
REUSEADDR - SO_
REUSEPORT - SO_
RXQ_ OVFL - SO_
SNDBUF - SO_
SNDBUFFORCE - SO_
SNDLOWAT - SO_
SNDTIMEO - SO_
TIMESTAMP - SO_
TIMESTAMPNS - SO_TYPE
- SPLICE_
F_ GIFT - SPLICE_
F_ MORE - SPLICE_
F_ MOVE - SPLICE_
F_ NONBLOCK - SS
- SS_
DISABLE - SS_
ONSTACK - STDERR_
FILENO - STDIN_
FILENO - STDOUT_
FILENO - ST_
APPEND - ST_
IMMUTABLE - ST_
MANDLOCK - ST_
NOATIME - ST_
NODEV - ST_
NODIRATIME - ST_
NOEXEC - ST_
NOSUID - ST_
RDONLY - ST_
SYNCHRONOUS - ST_
WRITE - SYNC_
FILE_ RANGE_ WAIT_ AFTER - SYNC_
FILE_ RANGE_ WAIT_ BEFORE - SYNC_
FILE_ RANGE_ WRITE - S_IEXEC
- S_IFBLK
- S_IFCHR
- S_IFDIR
- S_IFIFO
- S_IFLNK
- S_IFMT
- S_IFREG
- S_
IFSOCK - S_IREAD
- S_IRGRP
- S_IROTH
- S_IRUSR
- S_IRWXG
- S_IRWXO
- S_IRWXU
- S_ISGID
- S_ISUID
- S_ISVTX
- S_IWGRP
- S_IWOTH
- S_
IWRITE - S_IWUSR
- S_IXGRP
- S_IXOTH
- S_IXUSR
- TAB0
- TAB1
- TAB2
- TAB3
- TABDLY
- TCFLSH
- TCGETA
- TCGETS
- TCIFLUSH
- TCIOFF
- TCIOFLUSH
- TCION
- TCOFLUSH
- TCOOFF
- TCOON
- TCP_
CONGESTION - TCP_
COOKIE_ TRANSACTIONS - TCP_
CORK - TCP_
DEFER_ ACCEPT - TCP_
FASTOPEN - TCP_
INFO - TCP_
KEEPCNT - TCP_
KEEPIDLE - TCP_
KEEPINTVL - TCP_
LINGE R2 - TCP_
MAXSEG - TCP_
MD5SIG - TCP_
NODELAY - TCP_
QUEUE_ SEQ - TCP_
QUICKACK - TCP_
REPAIR - TCP_
REPAIR_ OPTIONS - TCP_
REPAIR_ QUEUE - TCP_
SYNCNT - TCP_
THIN_ DUPACK - TCP_
THIN_ LINEAR_ TIMEOUTS - TCP_
TIMESTAMP - TCP_
USER_ TIMEOUT - TCP_
WINDOW_ CLAMP - TCSADRAIN
- TCSAFLUSH
- TCSANOW
- TCSBRK
- TCSETA
- TCSETAF
- TCSETAW
- TCSETS
- TCSETSF
- TCSETSW
- TCXONC
- TFD_
CLOEXEC - TFD_
NONBLOCK - TFD_
TIMER_ ABSTIME - THOUSEP
- TIMER_
ABSTIME - TIOCCONS
- TIOCEXCL
- TIOCGPGRP
- TIOCGSERIAL
- TIOCGSOFTCAR
- TIOCGWINSZ
- TIOCINQ
- TIOCLINUX
- TIOCMBIC
- TIOCMBIS
- TIOCMGET
- TIOCMSET
- TIOCM_
CAR - TIOCM_
CD - TIOCM_
CTS - TIOCM_
DSR - TIOCM_
DTR - TIOCM_
LE - TIOCM_
RI - TIOCM_
RNG - TIOCM_
RTS - TIOCM_
SR - TIOCM_
ST - TIOCNXCL
- TIOCOUTQ
- TIOCSCTTY
- TIOCSPGRP
- TIOCSSOFTCAR
- TIOCSTI
- TIOCSWINSZ
- TMP_MAX
- TOSTOP
- T_FMT
- T_
FMT_ AMPM - USRQUOTA
- UTIME_
NOW - UTIME_
OMIT - VDISCARD
- VEOF
- VEOL
- VEOL2
- VERASE
- VINTR
- VKILL
- VLNEXT
- VMIN
- VQUIT
- VREPRINT
- VSTART
- VSTOP
- VSUSP
- VSWTC
- VT0
- VT1
- VTDLY
- VTIME
- VWERASE
- WCONTINUED
- WEXITED
- WNOHANG
- WNOWAIT
- WSTOPPED
- WUNTRACED
- W_OK
- XATTR_
CREATE - XATTR_
REPLACE - XTABS
- X_OK
- YESEXPR
- YESSTR
- _IOFBF
- _IOLBF
- _IONBF
- _PC_
2_ SYMLINKS - _PC_
ALLOC_ SIZE_ MIN - _PC_
ASYNC_ IO - _PC_
CHOWN_ RESTRICTED - _PC_
FILESIZEBITS - _PC_
LINK_ MAX - _PC_
MAX_ CANON - _PC_
MAX_ INPUT - _PC_
NAME_ MAX - _PC_
NO_ TRUNC - _PC_
PATH_ MAX - _PC_
PIPE_ BUF - _PC_
PRIO_ IO - _PC_
REC_ INCR_ XFER_ SIZE - _PC_
REC_ MAX_ XFER_ SIZE - _PC_
REC_ MIN_ XFER_ SIZE - _PC_
REC_ XFER_ ALIGN - _PC_
SOCK_ MAXBUF - _PC_
SYMLINK_ MAX - _PC_
SYNC_ IO - _PC_
VDISABLE - _POSIX_
VDISABLE - _SC_
2_ CHAR_ TERM - _SC_
2_ C_ BIND - _SC_
2_ C_ DEV - _SC_
2_ FORT_ DEV - _SC_
2_ FORT_ RUN - _SC_
2_ LOCALEDEF - _SC_
2_ PBS - _SC_
2_ PBS_ ACCOUNTING - _SC_
2_ PBS_ CHECKPOINT - _SC_
2_ PBS_ LOCATE - _SC_
2_ PBS_ MESSAGE - _SC_
2_ PBS_ TRACK - _SC_
2_ SW_ DEV - _SC_
2_ UPE - _SC_
2_ VERSION - _SC_
ADVISORY_ INFO - _SC_
AIO_ LISTIO_ MAX - _SC_
AIO_ MAX - _SC_
AIO_ PRIO_ DELTA_ MAX - _SC_
ARG_ MAX - _SC_
ASYNCHRONOUS_ IO - _SC_
ATEXIT_ MAX - _SC_
AVPHYS_ PAGES - _SC_
BARRIERS - _SC_
BC_ BASE_ MAX - _SC_
BC_ DIM_ MAX - _SC_
BC_ SCALE_ MAX - _SC_
BC_ STRING_ MAX - _SC_
CHILD_ MAX - _SC_
CLK_ TCK - _SC_
CLOCK_ SELECTION - _SC_
COLL_ WEIGHTS_ MAX - _SC_
CPUTIME - _SC_
DELAYTIMER_ MAX - _SC_
EXPR_ NEST_ MAX - _SC_
FSYNC - _SC_
GETGR_ R_ SIZE_ MAX - _SC_
GETPW_ R_ SIZE_ MAX - _SC_
HOST_ NAME_ MAX - _SC_
IOV_ MAX - _SC_
IPV6 - _SC_
JOB_ CONTROL - _SC_
LINE_ MAX - _SC_
LOGIN_ NAME_ MAX - _SC_
MAPPED_ FILES - _SC_
MEMLOCK - _SC_
MEMLOCK_ RANGE - _SC_
MEMORY_ PROTECTION - _SC_
MESSAGE_ PASSING - _SC_
MONOTONIC_ CLOCK - _SC_
MQ_ OPEN_ MAX - _SC_
MQ_ PRIO_ MAX - _SC_
NGROUPS_ MAX - _SC_
NPROCESSORS_ CONF - _SC_
NPROCESSORS_ ONLN - _SC_
NZERO - _SC_
OPEN_ MAX - _SC_
PAGESIZE - _SC_
PAGE_ SIZE - _SC_
PASS_ MAX - _SC_
PHYS_ PAGES - _SC_
PRIORITIZED_ IO - _SC_
PRIORITY_ SCHEDULING - _SC_
RAW_ SOCKETS - _SC_
READER_ WRITER_ LOCKS - _SC_
REALTIME_ SIGNALS - _SC_
REGEXP - _SC_
RE_ DUP_ MAX - _SC_
RTSIG_ MAX - _SC_
SAVED_ IDS - _SC_
SEMAPHORES - _SC_
SEM_ NSEMS_ MAX - _SC_
SEM_ VALUE_ MAX - _SC_
SHARED_ MEMORY_ OBJECTS - _SC_
SHELL - _SC_
SIGQUEUE_ MAX - _SC_
SPAWN - _SC_
SPIN_ LOCKS - _SC_
SPORADIC_ SERVER - _SC_
SS_ REPL_ MAX - _SC_
STREAMS - _SC_
STREAM_ MAX - _SC_
SYMLOOP_ MAX - _SC_
SYNCHRONIZED_ IO - _SC_
THREADS - _SC_
THREAD_ ATTR_ STACKADDR - _SC_
THREAD_ ATTR_ STACKSIZE - _SC_
THREAD_ CPUTIME - _SC_
THREAD_ DESTRUCTOR_ ITERATIONS - _SC_
THREAD_ KEYS_ MAX - _SC_
THREAD_ PRIORITY_ SCHEDULING - _SC_
THREAD_ PRIO_ INHERIT - _SC_
THREAD_ PRIO_ PROTECT - _SC_
THREAD_ PROCESS_ SHARED - _SC_
THREAD_ ROBUST_ PRIO_ INHERIT - _SC_
THREAD_ ROBUST_ PRIO_ PROTECT - _SC_
THREAD_ SAFE_ FUNCTIONS - _SC_
THREAD_ SPORADIC_ SERVER - _SC_
THREAD_ STACK_ MIN - _SC_
THREAD_ THREADS_ MAX - _SC_
TIMEOUTS - _SC_
TIMERS - _SC_
TIMER_ MAX - _SC_
TRACE - _SC_
TRACE_ EVENT_ FILTER - _SC_
TRACE_ EVENT_ NAME_ MAX - _SC_
TRACE_ INHERIT - _SC_
TRACE_ LOG - _SC_
TRACE_ NAME_ MAX - _SC_
TRACE_ SYS_ MAX - _SC_
TRACE_ USER_ EVENT_ MAX - _SC_
TTY_ NAME_ MAX - _SC_
TYPED_ MEMORY_ OBJECTS - _SC_
TZNAME_ MAX - _SC_
UIO_ MAXIOV - _SC_
V6_ ILP32_ OFF32 - _SC_
V6_ ILP32_ OFFBIG - _SC_
V6_ LP64_ OFF64 - _SC_
V6_ LPBIG_ OFFBIG - _SC_
V7_ ILP32_ OFF32 - _SC_
V7_ ILP32_ OFFBIG - _SC_
V7_ LP64_ OFF64 - _SC_
V7_ LPBIG_ OFFBIG - _SC_
VERSION - _SC_
XBS5_ ILP32_ OFF32 - _SC_
XBS5_ ILP32_ OFFBIG - _SC_
XBS5_ LP64_ OFF64 - _SC_
XBS5_ LPBIG_ OFFBIG - _SC_
XOPEN_ CRYPT - _SC_
XOPEN_ ENH_ I18N - _SC_
XOPEN_ LEGACY - _SC_
XOPEN_ REALTIME - _SC_
XOPEN_ REALTIME_ THREADS - _SC_
XOPEN_ SHM - _SC_
XOPEN_ STREAMS - _SC_
XOPEN_ UNIX - _SC_
XOPEN_ VERSION - _SC_
XOPEN_ XCU_ VERSION - _SC_
XOPEN_ XPG2 - _SC_
XOPEN_ XPG3 - _SC_
XOPEN_ XPG4 - __
SIZEOF_ PTHREAD_ CONDATTR_ T - __
SIZEOF_ PTHREAD_ COND_ T - __
SIZEOF_ PTHREAD_ MUTEXATTR_ T - __
SIZEOF_ PTHREAD_ MUTEX_ T - __
SIZEOF_ PTHREAD_ RWLOCKATTR_ T - __
SIZEOF_ PTHREAD_ RWLOCK_ T - __WALL
- __
WCLONE - __
WNOTHREAD
Functions§
- CMSG_
ALIGN ⚠ - CMSG_
DATA ⚠ - CMSG_
FIRSTHDR ⚠ - CMSG_
LEN ⚠ - CMSG_
NXTHDR ⚠ - CMSG_
SPACE ⚠ - CPU_CLR⚠
- CPU_
EQUAL ⚠ - CPU_
ISSET ⚠ - CPU_SET⚠
- CPU_
ZERO ⚠ - FD_CLR⚠
- FD_
ISSET ⚠ - FD_SET⚠
- FD_ZERO⚠
- QCMD
- WCOREDUMP
- WEXITSTATUS
- WIFCONTINUED
- WIFEXITED
- WIFSIGNALED
- WIFSTOPPED
- WSTOPSIG
- WTERMSIG
- __
errno_ ⚠location - _exit⚠
- abort⚠
- abs⚠
- accept⚠
- accept4⚠
- access⚠
- acct⚠
- alarm⚠
- atexit⚠
- atof⚠
- atoi⚠
- atol⚠
- atoll⚠
- bind⚠
- brk⚠
- calloc⚠
- cfgetispeed⚠
- cfgetospeed⚠
- cfmakeraw⚠
- cfsetispeed⚠
- cfsetospeed⚠
- cfsetspeed⚠
- chdir⚠
- chmod⚠
- chown⚠
- clearenv⚠
- clock_
getres ⚠ - clock_
gettime ⚠ - clock_
nanosleep ⚠ - clock_
settime ⚠ - clone⚠
- close⚠
- closedir⚠
- closelog⚠
- connect⚠
- creat⚠
- daemon⚠
- dirfd⚠
- dl_
iterate_ ⚠phdr - dladdr⚠
- dlclose⚠
- dlerror⚠
- dlopen⚠
- dlsym⚠
- dup⚠
- dup2⚠
- dup3⚠
- duplocale⚠
- endgrent⚠
- endpwent⚠
- eventfd⚠
- execl⚠
- execle⚠
- execlp⚠
- execv⚠
- execve⚠
- execvp⚠
- execvpe⚠
- exit⚠
- faccessat⚠
- fallocate⚠
- fchmod⚠
- fchmodat⚠
- fchown⚠
- fchownat⚠
- fclose⚠
- fcntl⚠
- fdatasync⚠
- fdopen⚠
- fdopendir⚠
- feof⚠
- ferror⚠
- fexecve⚠
- fflush⚠
- fgetc⚠
- fgetpos⚠
- fgets⚠
- fileno⚠
- flock⚠
- fopen⚠
- fork⚠
- fpathconf⚠
- fprintf⚠
- fputc⚠
- fputs⚠
- fread⚠
- free⚠
- freeaddrinfo⚠
- freeifaddrs⚠
- freelocale⚠
- freopen⚠
- fscanf⚠
- fseek⚠
- fseeko⚠
- fsetpos⚠
- fstat⚠
- fstatat⚠
- fstatfs⚠
- fstatvfs⚠
- fsync⚠
- ftell⚠
- ftello⚠
- ftok⚠
- ftruncate⚠
- futimens⚠
- futimes⚠
- fwrite⚠
- gai_
strerror ⚠ - getaddrinfo⚠
- getchar⚠
- getchar_
unlocked ⚠ - getcwd⚠
- getdomainname⚠
- getdtablesize⚠
- getegid⚠
- getenv⚠
- geteuid⚠
- getgid⚠
- getgrent⚠
- getgrgid⚠
- getgrgid_
r ⚠ - getgrnam⚠
- getgrnam_
r ⚠ - getgrouplist⚠
- getgroups⚠
- gethostname⚠
- getifaddrs⚠
- getlogin⚠
- getnameinfo⚠
- getopt⚠
- getpeername⚠
- getpgid⚠
- getpgrp⚠
- getpid⚠
- getppid⚠
- getprotobyname⚠
- getprotobynumber⚠
- getpwent⚠
- getpwnam⚠
- getpwnam_
r ⚠ - getpwuid⚠
- getpwuid_
r ⚠ - getresgid⚠
- getresuid⚠
- getservbyname⚠
- getsid⚠
- getsockname⚠
- getsockopt⚠
- gettimeofday⚠
- getuid⚠
- glob⚠
- globfree⚠
- gmtime⚠
- gmtime_
r ⚠ - grantpt⚠
- if_
freenameindex ⚠ - if_
indextoname ⚠ - if_
nameindex ⚠ - if_
nametoindex ⚠ - initgroups⚠
- ioctl⚠
- isalnum⚠
- isalpha⚠
- isatty⚠
- isblank⚠
- iscntrl⚠
- isdigit⚠
- isgraph⚠
- islower⚠
- isprint⚠
- ispunct⚠
- isspace⚠
- isupper⚠
- isxdigit⚠
- kill⚠
- labs⚠
- lchown⚠
- link⚠
- linkat⚠
- listen⚠
- localeconv⚠
- localtime⚠
- localtime_
r ⚠ - lseek⚠
- lstat⚠
- lutimes⚠
- madvise⚠
- major
- makedev
- malloc⚠
- memalign⚠
- memchr⚠
- memcmp⚠
- memcpy⚠
- memmove⚠
- memrchr⚠
- memset⚠
- minor
- mkdir⚠
- mkdirat⚠
- mkdtemp⚠
- mkfifo⚠
- mkfifoat⚠
- mknod⚠
- mknodat⚠
- mkostemp⚠
- mkostemps⚠
- mkstemp⚠
- mkstemps⚠
- mktime⚠
- mlock⚠
- mlockall⚠
- mmap⚠
- mount⚠
- mprotect⚠
- msgctl⚠
- msgget⚠
- msgrcv⚠
- msgsnd⚠
- msync⚠
- munlock⚠
- munlockall⚠
- munmap⚠
- nanosleep⚠
- newlocale⚠
- nl_
langinfo ⚠ - nl_
langinfo_ ⚠l - open⚠
- openat⚠
- opendir⚠
- openlog⚠
- openpty⚠
- pathconf⚠
- pause⚠
- pclose⚠
- perror⚠
- personality⚠
- pipe⚠
- pipe2⚠
- poll⚠
- popen⚠
- posix_
fadvise ⚠ - posix_
fallocate ⚠ - posix_
madvise ⚠ - posix_
memalign ⚠ - posix_
openpt ⚠ - ppoll⚠
- pread⚠
- preadv⚠
- printf⚠
- pselect⚠
- pthread_
atfork ⚠ - pthread_
attr_ ⚠destroy - pthread_
attr_ ⚠getguardsize - pthread_
attr_ ⚠getstack - pthread_
attr_ ⚠getstacksize - pthread_
attr_ ⚠init - pthread_
attr_ ⚠setdetachstate - pthread_
attr_ ⚠setguardsize - pthread_
attr_ ⚠setstacksize - pthread_
cancel ⚠ - pthread_
cond_ ⚠broadcast - pthread_
cond_ ⚠destroy - pthread_
cond_ ⚠init - pthread_
cond_ ⚠signal - pthread_
cond_ ⚠timedwait - pthread_
cond_ ⚠wait - pthread_
condattr_ ⚠destroy - pthread_
condattr_ ⚠getclock - pthread_
condattr_ ⚠init - pthread_
condattr_ ⚠setclock - pthread_
create ⚠ - pthread_
detach ⚠ - pthread_
exit ⚠ - pthread_
getattr_ ⚠np - pthread_
getname_ ⚠np - pthread_
getspecific ⚠ - pthread_
join ⚠ - pthread_
key_ ⚠create - pthread_
key_ ⚠delete - pthread_
kill ⚠ - pthread_
mutex_ ⚠destroy - pthread_
mutex_ ⚠init - pthread_
mutex_ ⚠lock - pthread_
mutex_ ⚠timedlock - pthread_
mutex_ ⚠trylock - pthread_
mutex_ ⚠unlock - pthread_
mutexattr_ ⚠destroy - pthread_
mutexattr_ ⚠init - pthread_
mutexattr_ ⚠settype - pthread_
rwlock_ ⚠destroy - pthread_
rwlock_ ⚠init - pthread_
rwlock_ ⚠rdlock - pthread_
rwlock_ ⚠tryrdlock - pthread_
rwlock_ ⚠trywrlock - pthread_
rwlock_ ⚠unlock - pthread_
rwlock_ ⚠wrlock - pthread_
rwlockattr_ ⚠destroy - pthread_
rwlockattr_ ⚠init - pthread_
self ⚠ - pthread_
setname_ ⚠np - pthread_
setspecific ⚠ - pthread_
sigmask ⚠ - ptsname⚠
- ptsname_
r ⚠ - putchar⚠
- putchar_
unlocked ⚠ - putenv⚠
- puts⚠
- pwrite⚠
- pwritev⚠
- quotactl⚠
- raise⚠
- rand⚠
- read⚠
- readahead⚠
- readdir⚠
- readdir_
r ⚠ - readlink⚠
- readlinkat⚠
- readv⚠
- realloc⚠
- realpath⚠
- reboot⚠
- recv⚠
- recvfrom⚠
- recvmmsg⚠
- recvmsg⚠
- remove⚠
- rename⚠
- renameat⚠
- res_
init ⚠ - rewind⚠
- rewinddir⚠
- rmdir⚠
- scanf⚠
- sched_
get_ ⚠priority_ max - sched_
get_ ⚠priority_ min - sched_
getaffinity ⚠ - sched_
getparam ⚠ - sched_
getscheduler ⚠ - sched_
rr_ ⚠get_ interval - sched_
setaffinity ⚠ - sched_
setparam ⚠ - sched_
setscheduler ⚠ - sched_
yield ⚠ - seekdir⚠
- select⚠
- sem_
close ⚠ - sem_
destroy ⚠ - sem_
getvalue ⚠ - sem_
init ⚠ - sem_
open ⚠ - sem_
post ⚠ - sem_
timedwait ⚠ - sem_
trywait ⚠ - sem_
unlink ⚠ - sem_
wait ⚠ - semctl⚠
- semget⚠
- semop⚠
- send⚠
- sendmmsg⚠
- sendmsg⚠
- sendto⚠
- setbuf⚠
- setdomainname⚠
- setegid⚠
- setenv⚠
- seteuid⚠
- setfsgid⚠
- setfsuid⚠
- setgid⚠
- setgrent⚠
- setgroups⚠
- sethostname⚠
- setlocale⚠
- setlogmask⚠
- setpgid⚠
- setpwent⚠
- setregid⚠
- setresgid⚠
- setresuid⚠
- setreuid⚠
- setsid⚠
- setsockopt⚠
- settimeofday⚠
- setuid⚠
- setvbuf⚠
- shm_
open ⚠ - shm_
unlink ⚠ - shmat⚠
- shmctl⚠
- shmdt⚠
- shmget⚠
- shutdown⚠
- sigaction⚠
- sigaddset⚠
- sigaltstack⚠
- sigdelset⚠
- sigemptyset⚠
- sigfillset⚠
- sigismember⚠
- signal⚠
- signalfd⚠
- sigpending⚠
- sigprocmask⚠
- sigsuspend⚠
- sigtimedwait⚠
- sigwait⚠
- sigwaitinfo⚠
- sleep⚠
- snprintf⚠
- socket⚠
- socketpair⚠
- splice⚠
- sprintf⚠
- srand⚠
- sscanf⚠
- stat⚠
- statfs⚠
- statvfs⚠
- strcat⚠
- strchr⚠
- strcmp⚠
- strcoll⚠
- strcpy⚠
- strcspn⚠
- strdup⚠
- strerror⚠
- strerror_
r ⚠ - strlen⚠
- strncat⚠
- strncmp⚠
- strncpy⚠
- strnlen⚠
- strpbrk⚠
- strrchr⚠
- strspn⚠
- strstr⚠
- strtod⚠
- strtof⚠
- strtok⚠
- strtol⚠
- strtoll⚠
- strtoul⚠
- strtoull⚠
- strxfrm⚠
- swapoff⚠
- swapon⚠
- symlink⚠
- symlinkat⚠
- sync⚠
- sync_
file_ ⚠range - syscall⚠
- sysconf⚠
- syslog⚠
- system⚠
- tcdrain⚠
- tcflow⚠
- tcflush⚠
- tcgetattr⚠
- tcgetpgrp⚠
- tcgetsid⚠
- tcsendbreak⚠
- tcsetattr⚠
- tcsetpgrp⚠
- tee⚠
- telldir⚠
- time⚠
- timegm⚠
- timerfd_
create ⚠ - timerfd_
gettime ⚠ - timerfd_
settime ⚠ - times⚠
- tmpfile⚠
- tmpnam⚠
- tolower⚠
- toupper⚠
- ttyname⚠
- umask⚠
- umount⚠
- umount2⚠
- uname⚠
- ungetc⚠
- unlink⚠
- unlinkat⚠
- unlockpt⚠
- unsetenv⚠
- uselocale⚠
- usleep⚠
- utime⚠
- utimensat⚠
- utimes⚠
- vhangup⚠
- vmsplice⚠
- wait⚠
- waitid⚠
- waitpid⚠
- wcslen⚠
- wcstombs⚠
- wmemchr⚠
- write⚠
- writev⚠
Type Aliases§
- Elf32_
Addr - Elf32_
Half - Elf32_
Off - Elf32_
Word - Elf64_
Addr - Elf64_
Half - Elf64_
Off - Elf64_
Word - Elf64_
Xword - __s16
- __s32
- __u8
- __u16
- __u32
- __u64
- blkcnt64_
t - blkcnt_
t - blksize_
t - c_char
- Equivalent to C’s
chartype. - c_
double - Equivalent to C’s
doubletype. - c_float
- Equivalent to C’s
floattype. - c_int
- Equivalent to C’s
signed int(int) type. - c_long
- Equivalent to C’s
signed long(long) type. - c_
longlong - Equivalent to C’s
signed long long(long long) type. - c_schar
- Equivalent to C’s
signed chartype. - c_short
- Equivalent to C’s
signed short(short) type. - c_uchar
- Equivalent to C’s
unsigned chartype. - c_uint
- Equivalent to C’s
unsigned inttype. - c_ulong
- Equivalent to C’s
unsigned longtype. - c_
ulonglong - Equivalent to C’s
unsigned long longtype. - c_
ushort - Equivalent to C’s
unsigned shorttype. - cc_t
- clock_t
- clockid_
t - dev_t
- fsblkcnt_
t - fsfilcnt_
t - gid_t
- id_t
- idtype_
t - in_
addr_ t - in_
port_ t - ino64_t
- ino_t
- int8_t
Deprecated - int16_t
Deprecated - int32_t
Deprecated - int64_t
Deprecated - intmax_
t - intptr_
t - key_t
- locale_
t - loff_t
- mode_t
- mqd_t
- msglen_
t - msgqnum_
t - nfds_t
- nl_item
- nlink_t
- off64_t
- off_t
- pid_t
- pthread_
key_ t - pthread_
t - ptrdiff_
t - rlim64_
t - rlim_t
- sa_
family_ t - shmatt_
t - sighandler_
t - size_t
- socklen_
t - speed_t
- ssize_t
- suseconds_
t - tcflag_
t - time_t
- uid_t
- uint8_t
Deprecated - uint16_
t Deprecated - uint32_
t Deprecated - uint64_
t Deprecated - uintmax_
t - uintptr_
t - useconds_
t - wchar_t