Module posix

This is a raw POSIX interface module. It does not not provide any convenience: cstrings are used instead of proper Nim strings and return codes indicate errors. If you want exceptions and a proper Nim-like interface, use the OS module or write a wrapper.

Coding conventions: ALL types are named the same as in the POSIX standard except that they start with 'T' or 'P' (if they are pointers) and without the '_t' suffix to be consistent with Nim conventions. If an identifier is a Nim keyword the `identifier` notation is used.

This library relies on the header files of your C compiler. The resulting C code will just #include <XYZ.h> and not define the symbols declared here.

Types

TDIR = object 
  
A type representing a directory stream.   Source
SocketHandle = distinct cint
  Source
Tdirent = object 
  d_ino*: Tino                ## File serial number.
  when true or false: 
      d_reclen*: cshort       ## Length of this record. (not POSIX)
      d_type*: int8 ## Type of file; not supported by all filesystem types.
                    ## (not POSIX)
      when true or false: 
          d_off*: TOff        ## Not an offset. Value that ``telldir()`` would return.
        
    
  d_name*: array[0 .. 255, char] ## Name of entry.
  
dirent_t struct   Source
Tflock = object 
  l_type*: cshort             ## Type of lock; F_RDLCK, F_WRLCK, F_UNLCK.
  l_whence*: cshort           ## Flag for starting offset.
  l_start*: TOff              ## Relative offset in bytes.
  l_len*: TOff                ## Size; if 0 then until EOF.
  l_pid*: TPid                ## Process ID of the process holding the lock;
                              ## returned with F_GETLK.
  
flock type   Source
TFTW = object 
  base*: cint
  level*: cint
  Source
TGlob = object 
  gl_pathc*: int              ## Count of paths matched by pattern.
  gl_pathv*: cstringArray     ## Pointer to a list of matched pathnames.
  gl_offs*: int               ## Slots to reserve at the beginning of gl_pathv.
  
glob_t   Source
TGroup = object 
  gr_name*: cstring           ## The name of the group.
  gr_gid*: TGid               ## Numerical group ID.
  gr_mem*: cstringArray       ## Pointer to a null-terminated array of character
                              ## pointers to member names.
  
struct group   Source
Ticonv = object 
Identifies the conversion from one codeset to another.   Source
Tlconv = object 
  currency_symbol*: cstring
  decimal_point*: cstring
  frac_digits*: char
  grouping*: cstring
  int_curr_symbol*: cstring
  int_frac_digits*: char
  int_n_cs_precedes*: char
  int_n_sep_by_space*: char
  int_n_sign_posn*: char
  int_p_cs_precedes*: char
  int_p_sep_by_space*: char
  int_p_sign_posn*: char
  mon_decimal_point*: cstring
  mon_grouping*: cstring
  mon_thousands_sep*: cstring
  negative_sign*: cstring
  n_cs_precedes*: char
  n_sep_by_space*: char
  n_sign_posn*: char
  positive_sign*: cstring
  p_cs_precedes*: char
  p_sep_by_space*: char
  p_sign_posn*: char
  thousands_sep*: cstring
  Source
TMqd = object 
  Source
TMqAttr = object 
  mq_flags*: int              ## Message queue flags.
  mq_maxmsg*: int             ## Maximum number of messages.
  mq_msgsize*: int            ## Maximum message size.
  mq_curmsgs*: int            ## Number of messages currently queued.
  
message queue attribute   Source
TPasswd = object 
  pw_name*: cstring           ## User's login name.
  pw_uid*: Tuid               ## Numerical user ID.
  pw_gid*: TGid               ## Numerical group ID.
  pw_dir*: cstring            ## Initial working directory.
  pw_shell*: cstring          ## Program to use as shell.
  
struct passwd   Source
Tblkcnt = int
used for file block counts   Source
Tblksize = int
used for block sizes   Source
TClock = int
  Source
TClockId = int
  Source
TDev = int
  Source
Tfsblkcnt = int
  Source
Tfsfilcnt = int
  Source
TGid = int
  Source
Tid = int
  Source
Tino = int
  Source
TKey = int
  Source
TMode = cint
  Source
  Source
TOff = int64
  Source
TPid = int
  Source
Tpthread_attr = int
  Source
Tpthread_barrier = int
  Source
Tpthread_barrierattr = int
  Source
Tpthread_cond = int
  Source
Tpthread_condattr = int
  Source
Tpthread_key = int
  Source
Tpthread_mutex = int
  Source
Tpthread_mutexattr = int
  Source
Tpthread_once = int
  Source
Tpthread_rwlock = int
  Source
Tpthread_rwlockattr = int
  Source
Tpthread_spinlock = int
  Source
Tpthread = int
  Source
Tsuseconds = int
  Source
Ttimer = int
  Source
Ttrace_attr = int
  Source
Ttrace_event_id = int
  Source
Ttrace_event_set = int
  Source
Ttrace_id = int
  Source
Tuid = int
  Source
Tuseconds = int
  Source
Tutsname = object 
  sysname*,                   ## Name of the hardware type on which the
                              ## system is running.
  ## Name of this implementation of the operating system.
  nodename*,                  ## Name of this node within the communications
                              ## network to which this node is attached, if any.
  release*,                   ## Current release level of this implementation.
  version*,                   ## Current version level of this release.
  machine*: array[0 .. 255, char]
struct utsname   Source
TSem = object 
  Source
Tipc_perm = object 
  uid*: Tuid                  ## Owner's user ID.
  gid*: TGid                  ## Owner's group ID.
  cuid*: Tuid                 ## Creator's user ID.
  cgid*: TGid                 ## Creator's group ID.
  mode*: TMode                ## Read/write permission.
  
struct ipc_perm   Source
TStat = object 
  st_dev*: TDev               ## Device ID of device containing file.
  st_ino*: Tino               ## File serial number.
  st_mode*: TMode             ## Mode of file (see below).
  st_nlink*: TNlink           ## Number of hard links to the file.
  st_uid*: Tuid               ## User ID of file.
  st_gid*: TGid               ## Group ID of file.
  st_rdev*: TDev              ## Device ID (if file is character or block special).
  st_size*: TOff ## For regular files, the file size in bytes.
                 ## For symbolic links, the length in bytes of the
                 ## pathname contained in the symbolic link.
                 ## For a shared memory object, the length in bytes.
                 ## For a typed memory object, the length in bytes.
                 ## For other file types, the use of this field is
                 ## unspecified.
  st_atime*: Time             ## Time of last access.
  st_mtime*: Time             ## Time of last data modification.
  st_ctime*: Time             ## Time of last status change.
  st_blksize*: Tblksize ## A file system-specific preferred I/O block size
                        ## for this object. In some file system types, this
                        ## may vary from file to file.
  st_blocks*: Tblkcnt         ## Number of blocks allocated for this object.
  
struct stat   Source
TStatvfs = object 
  f_bsize*: int               ## File system block size.
  f_frsize*: int              ## Fundamental file system block size.
  f_blocks*: Tfsblkcnt        ## Total number of blocks on file system
                              ## in units of f_frsize.
  f_bfree*: Tfsblkcnt         ## Total number of free blocks.
  f_bavail*: Tfsblkcnt        ## Number of free blocks available to
                              ## non-privileged process.
  f_files*: Tfsfilcnt         ## Total number of file serial numbers.
  f_ffree*: Tfsfilcnt         ## Total number of free file serial numbers.
  f_favail*: Tfsfilcnt        ## Number of file serial numbers available to
                              ## non-privileged process.
  f_fsid*: int                ## File system ID.
  f_flag*: int                ## Bit mask of f_flag values.
  f_namemax*: int             ## Maximum filename length.
  
struct statvfs   Source
Tposix_typed_mem_info = object 
  posix_tmi_length*: int
  Source
Ttm = object 
  tm_sec*: cint               ## Seconds [0,60].
  tm_min*: cint               ## Minutes [0,59].
  tm_hour*: cint              ## Hour [0,23].
  tm_mday*: cint              ## Day of month [1,31].
  tm_mon*: cint               ## Month of year [0,11].
  tm_year*: cint              ## Years since 1900.
  tm_wday*: cint              ## Day of week [0,6] (Sunday =0).
  tm_yday*: cint              ## Day of year [0,365].
  tm_isdst*: cint             ## Daylight Savings flag.
  
struct tm   Source
Ttimespec = object 
  tv_sec*: Time               ## Seconds.
  tv_nsec*: int               ## Nanoseconds.
  
struct timespec   Source
titimerspec = object 
  it_interval*: Ttimespec     ## Timer period.
  it_value*: Ttimespec        ## Timer expiration.
  
struct itimerspec   Source
Tsig_atomic = cint
Possibly volatile-qualified integer type of an object that can be accessed as an atomic entity, even in the presence of asynchronous interrupts.   Source
Tsigset = object 
  Source
TsigEvent = object 
  sigev_notify*: cint         ## Notification type.
  sigev_signo*: cint          ## Signal number.
  sigev_value*: TsigVal       ## Signal value.
  sigev_notify_function*: proc (x: TsigVal) {.noconv.} ## Notification func.
  sigev_notify_attributes*: ptr Tpthread_attr ## Notification attributes.
  
struct sigevent   Source
TsigVal = object 
  sival_ptr*: pointer         ## pointer signal value;
                              ## integer signal value not defined!
  
struct sigval   Source
TSigaction = object 
  sa_handler*: proc (x: cint) {.noconv.} ## Pointer to a signal-catching
                                         ## function or one of the macros
                                         ## SIG_IGN or SIG_DFL.
  sa_mask*: Tsigset ## Set of signals to be blocked during execution of
                    ## the signal handling function.
  sa_flags*: cint             ## Special flags.
  sa_sigaction*: proc (x: cint; y: var TsigInfo; z: pointer) {.noconv.}
struct sigaction   Source
TStack = object 
  ss_sp*: pointer             ## Stack base or pointer.
  ss_size*: int               ## Stack size.
  ss_flags*: cint             ## Flags.
  
stack_t   Source
TSigStack = object 
  ss_onstack*: cint           ## Non-zero when signal stack is in use.
  ss_sp*: pointer             ## Signal stack pointer.
  
struct sigstack   Source
TsigInfo = object 
  si_signo*: cint             ## Signal number.
  si_code*: cint              ## Signal code.
  si_errno*: cint             ## If non-zero, an errno value associated with
                              ## this signal, as defined in <errno.h>.
  si_pid*: TPid               ## Sending process ID.
  si_uid*: Tuid               ## Real user ID of sending process.
  si_addr*: pointer           ## Address of faulting instruction.
  si_status*: cint            ## Exit value or signal.
  si_band*: int               ## Band event for SIGPOLL.
  si_value*: TsigVal          ## Signal value.
  
siginfo_t   Source
Tnl_item = cint
  Source
Tnl_catd = cint
  Source
Tsched_param = object 
  sched_priority*: cint
  sched_ss_low_priority*: cint ## Low scheduling priority for
                               ## sporadic server.
  sched_ss_repl_period*: Ttimespec ## Replenishment period for
                                   ## sporadic server.
  sched_ss_init_budget*: Ttimespec ## Initial budget for sporadic server.
  sched_ss_max_repl*: cint    ## Maximum pending replenishments for
                              ## sporadic server.
  
struct sched_param   Source
Timeval = object 
  tv_sec*: int                ## Seconds.
  tv_usec*: int               ## Microseconds.
  
struct timeval   Source
TFdSet = object 
  Source
Tmcontext = object 
  Source
Tucontext = object 
  uc_link*: ptr Tucontext     ## Pointer to the context that is resumed
                              ## when this context returns.
  uc_sigmask*: Tsigset        ## The set of signals that are blocked when this
                              ## context is active.
  uc_stack*: TStack           ## The stack used by this context.
  uc_mcontext*: Tmcontext     ## A machine-specific representation of the saved
                              ## context.
  
ucontext_t   Source
Taiocb = object 
  aio_fildes*: cint           ## File descriptor.
  aio_offset*: TOff           ## File offset.
  aio_buf*: pointer           ## Location of buffer.
  aio_nbytes*: int            ## Length of transfer.
  aio_reqprio*: cint          ## Request priority offset.
  aio_sigevent*: TsigEvent    ## Signal number and value.
  aio_lio_opcode: cint        ## Operation to be performed.
  
struct aiocb   Source
Tposix_spawnattr = object 
  Source
Tposix_spawn_file_actions = object 
  Source
Socklen = cuint
  Source
TSa_Family = cint
  Source
SockAddr = object 
  sa_family*: TSa_Family      ## Address family.
  sa_data*: array[0 .. 255, char] ## Socket address (variable-length data).
  
struct sockaddr   Source
Tsockaddr_storage = object 
  ss_family*: TSa_Family      ## Address family.
  
struct sockaddr_storage   Source
Tif_nameindex = object 
  if_index*: cint             ## Numeric index of the interface.
  if_name*: cstring           ## Null-terminated name of the interface.
  
struct if_nameindex   Source
TIOVec = object 
  iov_base*: pointer          ## Base address of a memory region for input or output.
  iov_len*: int               ## The size of the memory pointed to by iov_base.
  
struct iovec   Source
Tmsghdr = object 
  msg_name*: pointer          ## Optional address.
  msg_namelen*: Socklen       ## Size of address.
  msg_iov*: ptr TIOVec        ## Scatter/gather array.
  msg_iovlen*: cint           ## Members in msg_iov.
  msg_control*: pointer       ## Ancillary data; see below.
  msg_controllen*: Socklen    ## Ancillary data buffer len.
  msg_flags*: cint            ## Flags on received message.
  
struct msghdr   Source
Tcmsghdr = object 
  cmsg_len*: Socklen          ## Data byte count, including the cmsghdr.
  cmsg_level*: cint           ## Originating protocol.
  cmsg_type*: cint            ## Protocol-specific type.
  
struct cmsghdr   Source
TLinger = object 
  l_onoff*: cint              ## Indicates whether linger option is enabled.
  l_linger*: cint             ## Linger time, in seconds.
  
struct linger   Source
TInPort = int16
unsigned!   Source
TInAddrScalar = int32
unsigned!   Source
TInAddrT = int32
unsigned!   Source
InAddr = object 
  s_addr*: TInAddrScalar
struct in_addr   Source
Sockaddr_in = object 
  sin_family*: TSa_Family     ## AF_INET.
  sin_port*: TInPort          ## Port number.
  sin_addr*: InAddr           ## IP address.
  
struct sockaddr_in   Source
TIn6Addr = object 
  s6_addr*: array[0 .. 15, char]
struct in6_addr   Source
Tsockaddr_in6 = object 
  sin6_family*: TSa_Family    ## AF_INET6.
  sin6_port*: TInPort         ## Port number.
  sin6_flowinfo*: int32       ## IPv6 traffic class and flow information.
  sin6_addr*: TIn6Addr        ## IPv6 address.
  sin6_scope_id*: int32       ## Set of interfaces for a scope.
  
struct sockaddr_in6   Source
Tipv6_mreq = object 
  ipv6mr_multiaddr*: TIn6Addr ## IPv6 multicast address.
  ipv6mr_interface*: cint     ## Interface index.
  
struct ipv6_mreq   Source
Hostent = object 
  h_name*: cstring            ## Official name of the host.
  h_aliases*: cstringArray    ## A pointer to an array of pointers to
                              ## alternative host names, terminated by a
                              ## null pointer.
  h_addrtype*: cint           ## Address type.
  h_length*: cint             ## The length, in bytes, of the address.
  h_addr_list*: cstringArray  ## A pointer to an array of pointers to network
                              ## addresses (in network byte order) for the
                              ## host, terminated by a null pointer.
  
struct hostent   Source
Tnetent = object 
  n_name*: cstring            ## Official, fully-qualified (including the
                              ## domain) name of the host.
  n_aliases*: cstringArray    ## A pointer to an array of pointers to
                              ## alternative network names, terminated by a
                              ## null pointer.
  n_addrtype*: cint           ## The address type of the network.
  n_net*: int32               ## The network number, in host byte order.
  
struct netent   Source
TProtoent = object 
  p_name*: cstring            ## Official name of the protocol.
  p_aliases*: cstringArray    ## A pointer to an array of pointers to
                              ## alternative protocol names, terminated by
                              ## a null pointer.
  p_proto*: cint              ## The protocol number.
  
struct protoent   Source
Servent = object 
  s_name*: cstring            ## Official name of the service.
  s_aliases*: cstringArray    ## A pointer to an array of pointers to
                              ## alternative service names, terminated by
                              ## a null pointer.
  s_port*: cint               ## The port number at which the service
                              ## resides, in network byte order.
  s_proto*: cstring           ## The name of the protocol to use when
                              ## contacting the service.
  
struct servent   Source
AddrInfo = object 
  ai_flags*: cint             ## Input flags.
  ai_family*: cint            ## Address family of socket.
  ai_socktype*: cint          ## Socket type.
  ai_protocol*: cint          ## Protocol of socket.
  ai_addrlen*: Socklen        ## Length of socket address.
  ai_addr*: ptr SockAddr      ## Socket address of socket.
  ai_canonname*: cstring      ## Canonical name of service location.
  ai_next*: ptr AddrInfo      ## Pointer to next in list.
  
struct addrinfo   Source
TPollfd = object 
  fd*: cint                   ## The following descriptor being polled.
  events*: cshort             ## The input event flags (see below).
  revents*: cshort            ## The output event flags (see below).
  
struct pollfd   Source
Tnfds = cint
  Source

Vars

errno: cint
error variable   Source
h_errno: cint
  Source
daylight: cint
  Source
timezone: int
  Source
AIO_ALLDONE: cint
A return value indicating that none of the requested operations could be canceled since they are already complete.   Source
AIO_CANCELED: cint
A return value indicating that all requested operations have been canceled.   Source
AIO_NOTCANCELED: cint
A return value indicating that some of the requested operations could not be canceled since they are in progress.   Source
LIO_NOP: cint
A lio_listio() element operation option indicating that no transfer is requested.   Source
LIO_NOWAIT: cint
A lio_listio() synchronization operation indicating that the calling thread is to continue execution while the lio_listio() operation is being performed, and no notification is given when the operation is complete.   Source
LIO_READ: cint
A lio_listio() element operation option requesting a read.   Source
LIO_WAIT: cint
A lio_listio() synchronization operation indicating that the calling thread is to suspend until the lio_listio() operation is complete.   Source
LIO_WRITE: cint
A lio_listio() element operation option requesting a write.   Source
RTLD_LAZY: cint
Relocations are performed at an implementation-defined time.   Source
RTLD_NOW: cint
Relocations are performed when the object is loaded.   Source
RTLD_GLOBAL: cint
All symbols are available for relocation processing of other modules.   Source
RTLD_LOCAL: cint
All symbols are not made available for relocation processing by other modules.   Source
E2BIG: cint
Argument list too long.   Source
EACCES: cint
Permission denied.   Source
EADDRINUSE: cint
Address in use.   Source
EADDRNOTAVAIL: cint
Address not available.   Source
EAFNOSUPPORT: cint
Address family not supported.   Source
EAGAIN: cint
Resource unavailable, try again (may be the same value as EWOULDBLOCK).   Source
EALREADY: cint
Connection already in progress.   Source
EBADF: cint
Bad file descriptor.   Source
EBADMSG: cint
Bad message.   Source
EBUSY: cint
Device or resource busy.   Source
ECANCELED: cint
Operation canceled.   Source
ECHILD: cint
No child processes.   Source
ECONNABORTED: cint
Connection aborted.   Source
ECONNREFUSED: cint
Connection refused.   Source
ECONNRESET: cint
Connection reset.   Source
EDEADLK: cint
Resource deadlock would occur.   Source
EDESTADDRREQ: cint
Destination address required.   Source
EDOM: cint
Mathematics argument out of domain of function.   Source
EDQUOT: cint
Reserved.   Source
EEXIST: cint
File exists.   Source
EFAULT: cint
Bad address.   Source
EFBIG: cint
File too large.   Source
EHOSTUNREACH: cint
Host is unreachable.   Source
EIDRM: cint
Identifier removed.   Source
EILSEQ: cint
Illegal byte sequence.   Source
EINPROGRESS: cint
Operation in progress.   Source
EINTR: cint
Interrupted function.   Source
EINVAL: cint
Invalid argument.   Source
EIO: cint
I/O error.   Source
EISCONN: cint
Socket is connected.   Source
EISDIR: cint
Is a directory.   Source
ELOOP: cint
Too many levels of symbolic links.   Source
EMFILE: cint
Too many open files.   Source
Too many links.   Source
EMSGSIZE: cint
Message too large.   Source
EMULTIHOP: cint
Reserved.   Source
ENAMETOOLONG: cint
Filename too long.   Source
ENETDOWN: cint
Network is down.   Source
ENETRESET: cint
Connection aborted by network.   Source
ENETUNREACH: cint
Network unreachable.   Source
ENFILE: cint
Too many files open in system.   Source
ENOBUFS: cint
No buffer space available.   Source
ENODATA: cint
No message is available on the STREAM head read queue.   Source
ENODEV: cint
No such device.   Source
ENOENT: cint
No such file or directory.   Source
ENOEXEC: cint
Executable file format error.   Source
ENOLCK: cint
No locks available.   Source
Reserved.   Source
ENOMEM: cint
Not enough space.   Source
ENOMSG: cint
No message of the desired type.   Source
ENOPROTOOPT: cint
Protocol not available.   Source
ENOSPC: cint
No space left on device.   Source
ENOSR: cint
No STREAM resources.   Source
ENOSTR: cint
Not a STREAM.   Source
ENOSYS: cint
Function not supported.   Source
ENOTCONN: cint
The socket is not connected.   Source
ENOTDIR: cint
Not a directory.   Source
ENOTEMPTY: cint
Directory not empty.   Source
ENOTSOCK: cint
Not a socket.   Source
ENOTSUP: cint
Not supported.   Source
ENOTTY: cint
Inappropriate I/O control operation.   Source
ENXIO: cint
No such device or address.   Source
EOPNOTSUPP: cint
Operation not supported on socket.   Source
EOVERFLOW: cint
Value too large to be stored in data type.   Source
EPERM: cint
Operation not permitted.   Source
EPIPE: cint
Broken pipe.   Source
EPROTO: cint
Protocol error.   Source
EPROTONOSUPPORT: cint
Protocol not supported.   Source
EPROTOTYPE: cint
Protocol wrong type for socket.   Source
ERANGE: cint
Result too large.   Source
EROFS: cint
Read-only file system.   Source
ESPIPE: cint
Invalid seek.   Source
ESRCH: cint
No such process.   Source
ESTALE: cint
Reserved.   Source
ETIME: cint
Stream ioctl() timeout.   Source
ETIMEDOUT: cint
Connection timed out.   Source
ETXTBSY: cint
Text file busy.   Source
EWOULDBLOCK: cint
Operation would block (may be the same value as [EAGAIN]).   Source
EXDEV: cint
Cross-device link.   Source
F_DUPFD: cint
Duplicate file descriptor.   Source
F_GETFD: cint
Get file descriptor flags.   Source
F_SETFD: cint
Set file descriptor flags.   Source
F_GETFL: cint
Get file status flags and file access modes.   Source
F_SETFL: cint
Set file status flags.   Source
F_GETLK: cint
Get record locking information.   Source
F_SETLK: cint
Set record locking information.   Source
F_SETLKW: cint
Set record locking information; wait if blocked.   Source
F_GETOWN: cint
Get process or process group ID to receive SIGURG signals.   Source
F_SETOWN: cint
Set process or process group ID to receive SIGURG signals.   Source
FD_CLOEXEC: cint
Close the file descriptor upon execution of an exec family function.   Source
F_RDLCK: cint
Shared or read lock.   Source
F_UNLCK: cint
Unlock.   Source
F_WRLCK: cint
Exclusive or write lock.   Source
O_CREAT: cint
Create file if it does not exist.   Source
O_EXCL: cint
Exclusive use flag.   Source
O_NOCTTY: cint
Do not assign controlling terminal.   Source
O_TRUNC: cint
Truncate flag.   Source
O_APPEND: cint
Set append mode.   Source
O_DSYNC: cint
Write according to synchronized I/O data integrity completion.   Source
O_NONBLOCK: cint
Non-blocking mode.   Source
O_RSYNC: cint
Synchronized read I/O operations.   Source
O_SYNC: cint
Write according to synchronized I/O file integrity completion.   Source
O_ACCMODE: cint
Mask for file access modes.   Source
O_RDONLY: cint
Open for reading only.   Source
O_RDWR: cint
Open for reading and writing.   Source
O_WRONLY: cint
Open for writing only.   Source
POSIX_FADV_NORMAL: cint
The application has no advice to give on its behavior with respect to the specified data. It is the default characteristic if no advice is given for an open file.   Source
POSIX_FADV_SEQUENTIAL: cint
The application expects to access the specified data   Source
POSIX_FADV_RANDOM: cint
The application expects to access the specified data in a random order.   Source
POSIX_FADV_WILLNEED: cint
The application expects to access the specified data in the near future.   Source
POSIX_FADV_DONTNEED: cint
The application expects that it will not access the specified data in the near future.   Source
POSIX_FADV_NOREUSE: cint
The application expects to access the specified data once and then not reuse it thereafter.   Source
MM_HARD: cint
Source of the condition is hardware.   Source
MM_SOFT: cint
Source of the condition is software.   Source
MM_FIRM: cint
Source of the condition is firmware.   Source
MM_APPL: cint
Condition detected by application.   Source
MM_UTIL: cint
Condition detected by utility.   Source
MM_OPSYS: cint
Condition detected by operating system.   Source
MM_RECOVER: cint
Recoverable error.   Source
MM_NRECOV: cint
Non-recoverable error.   Source
MM_HALT: cint
Error causing application to halt.   Source
MM_ERROR: cint
Application has encountered a non-fatal fault.   Source
MM_WARNING: cint
Application has detected unusual non-error condition.   Source
MM_INFO: cint
Informative message.   Source
MM_NOSEV: cint
No severity level provided for the message.   Source
MM_PRINT: cint
Display message on standard error.   Source
MM_CONSOLE: cint
Display message on system console.   Source
MM_OK: cint
The function succeeded.   Source
MM_NOTOK: cint
The function failed completely.   Source
MM_NOMSG: cint
The function was unable to generate a message on standard error, but otherwise succeeded.   Source
MM_NOCON: cint
The function was unable to generate a console message, but otherwise succeeded.   Source
FNM_NOMATCH: cint
The string does not match the specified pattern.   Source
FNM_PATHNAME: cint
Slash in string only matches slash in pattern.   Source
FNM_PERIOD: cint
Leading period in string must be exactly matched by period in pattern.   Source
FNM_NOESCAPE: cint
Disable backslash escaping.   Source
FNM_NOSYS: cint
Reserved.   Source
FTW_F: cint
File.   Source
FTW_D: cint
Directory.   Source
FTW_DNR: cint
Directory without read permission.   Source
FTW_DP: cint
Directory with subdirectories visited.   Source
FTW_NS: cint
Unknown type; stat() failed.   Source
FTW_SL: cint
Symbolic link.   Source
FTW_SLN: cint
Symbolic link that names a nonexistent file.   Source
FTW_PHYS: cint
Physical walk, does not follow symbolic links. Otherwise, nftw() follows links but does not walk down any path that crosses itself.   Source
FTW_MOUNT: cint
The walk does not cross a mount point.   Source
FTW_DEPTH: cint
All subdirectories are visited before the directory itself.   Source
FTW_CHDIR: cint
The walk changes to each directory before reading it.   Source
GLOB_APPEND: cint
Append generated pathnames to those previously obtained.   Source
GLOB_DOOFFS: cint
Specify how many null pointers to add to the beginning of gl_pathv.   Source
GLOB_ERR: cint
Cause glob() to return on error.   Source
GLOB_MARK: cint
Each pathname that is a directory that matches pattern has a slash appended.   Source
GLOB_NOCHECK: cint
If pattern does not match any pathname, then return a list consisting of only pattern.   Source
GLOB_NOESCAPE: cint
Disable backslash escaping.   Source
GLOB_NOSORT: cint
Do not sort the pathnames returned.   Source
GLOB_ABORTED: cint
The scan was stopped because GLOB_ERR was set or errfunc() returned non-zero.   Source
GLOB_NOMATCH: cint
The pattern does not match any existing pathname, and GLOB_NOCHECK was not set in flags.   Source
GLOB_NOSPACE: cint
An attempt to allocate memory failed.   Source
GLOB_NOSYS: cint
Reserved   Source
CODESET: cint
Codeset name.   Source
D_T_FMT: cint
String for formatting date and time.   Source
D_FMT: cint
Date format string.   Source
T_FMT: cint
Time format string.   Source
T_FMT_AMPM: cint
a.m. or p.m. time format string.   Source
AM_STR: cint
Ante-meridiem affix.   Source
PM_STR: cint
Post-meridiem affix.   Source
DAY_1: cint
Name of the first day of the week (for example, Sunday).   Source
DAY_2: cint
Name of the second day of the week (for example, Monday).   Source
DAY_3: cint
Name of the third day of the week (for example, Tuesday).   Source
DAY_4: cint
Name of the fourth day of the week (for example, Wednesday).   Source
DAY_5: cint
Name of the fifth day of the week (for example, Thursday).   Source
DAY_6: cint
Name of the sixth day of the week (for example, Friday).   Source
DAY_7: cint
Name of the seventh day of the week (for example, Saturday).   Source
ABDAY_1: cint
Abbreviated name of the first day of the week.   Source
ABDAY_2: cint
  Source
ABDAY_3: cint
  Source
ABDAY_4: cint
  Source
ABDAY_5: cint
  Source
ABDAY_6: cint
  Source
ABDAY_7: cint
  Source
MON_1: cint
Name of the first month of the year.   Source
MON_2: cint
  Source
MON_3: cint
  Source
MON_4: cint
  Source
MON_5: cint
  Source
MON_6: cint
  Source
MON_7: cint
  Source
MON_8: cint
  Source
MON_9: cint
  Source
MON_10: cint
  Source
MON_11: cint
  Source
MON_12: cint
  Source
ABMON_1: cint
Abbreviated name of the first month.   Source
ABMON_2: cint
  Source
ABMON_3: cint
  Source
ABMON_4: cint
  Source
ABMON_5: cint
  Source
ABMON_6: cint
  Source
ABMON_7: cint
  Source
ABMON_8: cint
  Source
ABMON_9: cint
  Source
ABMON_10: cint
  Source
ABMON_11: cint
  Source
ABMON_12: cint
  Source
ERA: cint
Era description segments.   Source
ERA_D_FMT: cint
Era date format string.   Source
ERA_D_T_FMT: cint
Era date and time format string.   Source
ERA_T_FMT: cint
Era time format string.   Source
ALT_DIGITS: cint
Alternative symbols for digits.   Source
RADIXCHAR: cint
Radix character.   Source
THOUSEP: cint
Separator for thousands.   Source
YESEXPR: cint
Affirmative response expression.   Source
NOEXPR: cint
Negative response expression.   Source
CRNCYSTR: cint
Local currency symbol, preceded by '-' if the symbol should appear before the value, '+' if the symbol should appear after the value, or '.' if the symbol should replace the radix character. If the local currency symbol is the empty string, implementations may return the empty string ( "" ).   Source
LC_ALL: cint
  Source
LC_COLLATE: cint
  Source
LC_CTYPE: cint
  Source
LC_MESSAGES: cint
  Source
LC_MONETARY: cint
  Source
LC_NUMERIC: cint
  Source
LC_TIME: cint
  Source
PTHREAD_BARRIER_SERIAL_THREAD: cint
  Source
PTHREAD_CANCEL_ASYNCHRONOUS: cint
  Source
PTHREAD_CANCEL_ENABLE: cint
  Source
PTHREAD_CANCEL_DEFERRED: cint
  Source
PTHREAD_CANCEL_DISABLE: cint
  Source
PTHREAD_CANCELED: cint
  Source
PTHREAD_COND_INITIALIZER: cint
  Source
PTHREAD_CREATE_DETACHED: cint
  Source
PTHREAD_CREATE_JOINABLE: cint
  Source
PTHREAD_EXPLICIT_SCHED: cint
  Source
PTHREAD_INHERIT_SCHED: cint
  Source
PTHREAD_MUTEX_DEFAULT: cint
  Source
PTHREAD_MUTEX_ERRORCHECK: cint
  Source
PTHREAD_MUTEX_INITIALIZER: cint
  Source
PTHREAD_MUTEX_NORMAL: cint
  Source
PTHREAD_MUTEX_RECURSIVE: cint
  Source
PTHREAD_ONCE_INIT: cint
  Source
PTHREAD_PRIO_INHERIT: cint
  Source
PTHREAD_PRIO_NONE: cint
  Source
PTHREAD_PRIO_PROTECT: cint
  Source
PTHREAD_PROCESS_SHARED: cint
  Source
PTHREAD_PROCESS_PRIVATE: cint
  Source
PTHREAD_SCOPE_PROCESS: cint
  Source
PTHREAD_SCOPE_SYSTEM: cint
  Source
POSIX_ASYNC_IO: cint
  Source
POSIX_PRIO_IO: cint
  Source
POSIX_SYNC_IO: cint
  Source
F_OK: cint
  Source
R_OK: cint
  Source
W_OK: cint
  Source
X_OK: cint
  Source
CS_PATH: cint
  Source
CS_POSIX_V6_ILP32_OFF32_CFLAGS: cint
  Source
CS_POSIX_V6_ILP32_OFF32_LDFLAGS: cint
  Source
CS_POSIX_V6_ILP32_OFF32_LIBS: cint
  Source
CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: cint
  Source
CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: cint
  Source
CS_POSIX_V6_ILP32_OFFBIG_LIBS: cint
  Source
CS_POSIX_V6_LP64_OFF64_CFLAGS: cint
  Source
CS_POSIX_V6_LP64_OFF64_LDFLAGS: cint
  Source
CS_POSIX_V6_LP64_OFF64_LIBS: cint
  Source
CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: cint
  Source
CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: cint
  Source
CS_POSIX_V6_LPBIG_OFFBIG_LIBS: cint
  Source
CS_POSIX_V6_WIDTH_RESTRICTED_ENVS: cint
  Source
F_LOCK: cint
  Source
F_TEST: cint
  Source
F_TLOCK: cint
  Source
F_ULOCK: cint
  Source
  Source
PC_ALLOC_SIZE_MIN: cint
  Source
PC_ASYNC_IO: cint
  Source
PC_CHOWN_RESTRICTED: cint
  Source
PC_FILESIZEBITS: cint
  Source
  Source
PC_MAX_CANON: cint
  Source
PC_MAX_INPUT: cint
  Source
PC_NAME_MAX: cint
  Source
PC_NO_TRUNC: cint
  Source
PC_PATH_MAX: cint
  Source
PC_PIPE_BUF: cint
  Source
PC_PRIO_IO: cint
  Source
PC_REC_INCR_XFER_SIZE: cint
  Source
PC_REC_MIN_XFER_SIZE: cint
  Source
PC_REC_XFER_ALIGN: cint
  Source
  Source
PC_SYNC_IO: cint
  Source
PC_VDISABLE: cint
  Source
SC_2_C_BIND: cint
  Source
SC_2_C_DEV: cint
  Source
SC_2_CHAR_TERM: cint
  Source
SC_2_FORT_DEV: cint
  Source
SC_2_FORT_RUN: cint
  Source
SC_2_LOCALEDEF: cint
  Source
SC_2_PBS: cint
  Source
SC_2_PBS_ACCOUNTING: cint
  Source
SC_2_PBS_CHECKPOINT: cint
  Source
SC_2_PBS_LOCATE: cint
  Source
SC_2_PBS_MESSAGE: cint
  Source
SC_2_PBS_TRACK: cint
  Source
SC_2_SW_DEV: cint
  Source
SC_2_UPE: cint
  Source
SC_2_VERSION: cint
  Source
SC_ADVISORY_INFO: cint
  Source
SC_AIO_LISTIO_MAX: cint
  Source
SC_AIO_MAX: cint
  Source
SC_AIO_PRIO_DELTA_MAX: cint
  Source
SC_ARG_MAX: cint
  Source
SC_ASYNCHRONOUS_IO: cint
  Source
SC_ATEXIT_MAX: cint
  Source
SC_BARRIERS: cint
  Source
SC_BC_BASE_MAX: cint
  Source
SC_BC_DIM_MAX: cint
  Source
SC_BC_SCALE_MAX: cint
  Source
SC_BC_STRING_MAX: cint
  Source
SC_CHILD_MAX: cint
  Source
SC_CLK_TCK: cint
  Source
SC_CLOCK_SELECTION: cint
  Source
SC_COLL_WEIGHTS_MAX: cint
  Source
SC_CPUTIME: cint
  Source
SC_DELAYTIMER_MAX: cint
  Source
SC_EXPR_NEST_MAX: cint
  Source
SC_FSYNC: cint
  Source
SC_GETGR_R_SIZE_MAX: cint
  Source
SC_GETPW_R_SIZE_MAX: cint
  Source
SC_HOST_NAME_MAX: cint
  Source
SC_IOV_MAX: cint
  Source
SC_IPV6: cint
  Source
SC_JOB_CONTROL: cint
  Source
SC_LINE_MAX: cint
  Source
SC_LOGIN_NAME_MAX: cint
  Source
SC_MAPPED_FILES: cint
  Source
SC_MEMLOCK: cint
  Source
SC_MEMLOCK_RANGE: cint
  Source
SC_MEMORY_PROTECTION: cint
  Source
SC_MESSAGE_PASSING: cint
  Source
SC_MONOTONIC_CLOCK: cint
  Source
SC_MQ_OPEN_MAX: cint
  Source
SC_MQ_PRIO_MAX: cint
  Source
SC_NGROUPS_MAX: cint
  Source
SC_OPEN_MAX: cint
  Source
SC_PAGE_SIZE: cint
  Source
SC_PRIORITIZED_IO: cint
  Source
SC_PRIORITY_SCHEDULING: cint
  Source
SC_RAW_SOCKETS: cint
  Source
SC_RE_DUP_MAX: cint
  Source
SC_READER_WRITER_LOCKS: cint
  Source
SC_REALTIME_SIGNALS: cint
  Source
SC_REGEXP: cint
  Source
SC_RTSIG_MAX: cint
  Source
SC_SAVED_IDS: cint
  Source
SC_SEM_NSEMS_MAX: cint
  Source
SC_SEM_VALUE_MAX: cint
  Source
SC_SEMAPHORES: cint
  Source
SC_SHARED_MEMORY_OBJECTS: cint
  Source
SC_SHELL: cint
  Source
SC_SIGQUEUE_MAX: cint
  Source
SC_SPAWN: cint
  Source
SC_SPIN_LOCKS: cint
  Source
SC_SPORADIC_SERVER: cint
  Source
SC_SS_REPL_MAX: cint
  Source
SC_STREAM_MAX: cint
  Source
SC_SYMLOOP_MAX: cint
  Source
SC_SYNCHRONIZED_IO: cint
  Source
SC_THREAD_ATTR_STACKADDR: cint
  Source
SC_THREAD_ATTR_STACKSIZE: cint
  Source
SC_THREAD_CPUTIME: cint
  Source
SC_THREAD_DESTRUCTOR_ITERATIONS: cint
  Source
SC_THREAD_KEYS_MAX: cint
  Source
SC_THREAD_PRIO_INHERIT: cint
  Source
SC_THREAD_PRIO_PROTECT: cint
  Source
SC_THREAD_PRIORITY_SCHEDULING: cint
  Source
SC_THREAD_PROCESS_SHARED: cint
  Source
SC_THREAD_SAFE_FUNCTIONS: cint
  Source
SC_THREAD_SPORADIC_SERVER: cint
  Source
SC_THREAD_STACK_MIN: cint
  Source
SC_THREAD_THREADS_MAX: cint
  Source
SC_THREADS: cint
  Source
SC_TIMEOUTS: cint
  Source
SC_TIMER_MAX: cint
  Source
SC_TIMERS: cint
  Source
SC_TRACE: cint
  Source
SC_TRACE_EVENT_FILTER: cint
  Source
SC_TRACE_EVENT_NAME_MAX: cint
  Source
SC_TRACE_INHERIT: cint
  Source
SC_TRACE_LOG: cint
  Source
SC_TRACE_NAME_MAX: cint
  Source
SC_TRACE_SYS_MAX: cint
  Source
SC_TRACE_USER_EVENT_MAX: cint
  Source
SC_TTY_NAME_MAX: cint
  Source
SC_TYPED_MEMORY_OBJECTS: cint
  Source
SC_TZNAME_MAX: cint
  Source
SC_V6_ILP32_OFF32: cint
  Source
SC_V6_ILP32_OFFBIG: cint
  Source
SC_V6_LP64_OFF64: cint
  Source
SC_V6_LPBIG_OFFBIG: cint
  Source
SC_VERSION: cint
  Source
SC_XBS5_ILP32_OFF32: cint
  Source
SC_XBS5_ILP32_OFFBIG: cint
  Source
SC_XBS5_LP64_OFF64: cint
  Source
SC_XBS5_LPBIG_OFFBIG: cint
  Source
SC_XOPEN_CRYPT: cint
  Source
SC_XOPEN_ENH_I18N: cint
  Source
SC_XOPEN_LEGACY: cint
  Source
SC_XOPEN_REALTIME: cint
  Source
SC_XOPEN_REALTIME_THREADS: cint
  Source
SC_XOPEN_SHM: cint
  Source
SC_XOPEN_STREAMS: cint
  Source
SC_XOPEN_UNIX: cint
  Source
SC_XOPEN_VERSION: cint
  Source
SC_NPROCESSORS_ONLN: cint
  Source
SEM_FAILED: pointer
  Source
IPC_CREAT: cint
Create entry if key does not exist.   Source
IPC_EXCL: cint
Fail if key exists.   Source
IPC_NOWAIT: cint
Error if request must wait.   Source
IPC_PRIVATE: cint
Private key.   Source
IPC_RMID: cint
Remove identifier.   Source
IPC_SET: cint
Set options.   Source
IPC_STAT: cint
Get options.   Source
S_IFMT: cint
Type of file.   Source
S_IFBLK: cint
Block special.   Source
S_IFCHR: cint
Character special.   Source
S_IFIFO: cint
FIFO special.   Source
S_IFREG: cint
Regular.   Source
S_IFDIR: cint
Directory.   Source
S_IFLNK: cint
Symbolic link.   Source
S_IFSOCK: cint
Socket.   Source
S_IRWXU: cint
Read, write, execute/search by owner.   Source
S_IRUSR: cint
Read permission, owner.   Source
S_IWUSR: cint
Write permission, owner.   Source
S_IXUSR: cint
Execute/search permission, owner.   Source
S_IRWXG: cint
Read, write, execute/search by group.   Source
S_IRGRP: cint
Read permission, group.   Source
S_IWGRP: cint
Write permission, group.   Source
S_IXGRP: cint
Execute/search permission, group.   Source
S_IRWXO: cint
Read, write, execute/search by others.   Source
S_IROTH: cint
Read permission, others.   Source
S_IWOTH: cint
Write permission, others.   Source
S_IXOTH: cint
Execute/search permission, others.   Source
S_ISUID: cint
Set-user-ID on execution.   Source
S_ISGID: cint
Set-group-ID on execution.   Source
S_ISVTX: cint
On directories, restricted deletion flag.   Source
ST_RDONLY: cint
Read-only file system.   Source
ST_NOSUID: cint
Does not support the semantics of the ST_ISUID and ST_ISGID file mode bits.   Source
PROT_READ: cint
Page can be read.   Source
PROT_WRITE: cint
Page can be written.   Source
PROT_EXEC: cint
Page can be executed.   Source
PROT_NONE: cint
Page cannot be accessed.   Source
MAP_SHARED: cint
Share changes.   Source
MAP_PRIVATE: cint
Changes are private.   Source
MAP_FIXED: cint
Interpret addr exactly.   Source
MS_ASYNC: cint
Perform asynchronous writes.   Source
MS_SYNC: cint
Perform synchronous writes.   Source
MS_INVALIDATE: cint
Invalidate mappings.   Source
MCL_CURRENT: cint
Lock currently mapped pages.   Source
MCL_FUTURE: cint
Lock pages that become mapped.   Source
MAP_FAILED: cint
  Source
POSIX_MADV_NORMAL: cint
The application has no advice to give on its behavior with respect to the specified range. It is the default characteristic if no advice is given for a range of memory.   Source
POSIX_MADV_SEQUENTIAL: cint
The application expects to access the specified range sequentially from lower addresses to higher addresses.   Source
POSIX_MADV_RANDOM: cint
The application expects to access the specified range in a random order.   Source
POSIX_MADV_WILLNEED: cint
The application expects to access the specified range in the near future.   Source
POSIX_MADV_DONTNEED: cint
  Source
POSIX_TYPED_MEM_ALLOCATE: cint
  Source
POSIX_TYPED_MEM_ALLOCATE_CONTIG: cint
  Source
POSIX_TYPED_MEM_MAP_ALLOCATABLE: cint
  Source
CLOCKS_PER_SEC: int
A number used to convert the value returned by the clock() function into seconds.   Source
CLOCK_PROCESS_CPUTIME_ID: cint
The identifier of the CPU-time clock associated with the process making a clock() or timer*() function call.   Source
CLOCK_THREAD_CPUTIME_ID: cint
  Source
CLOCK_REALTIME: cint
The identifier of the system-wide realtime clock.   Source
TIMER_ABSTIME: cint
Flag indicating time is absolute. For functions taking timer objects, this refers to the clock associated with the timer.   Source
CLOCK_MONOTONIC: cint
  Source
WNOHANG: cint
Do not hang if no status is available; return immediately.   Source
WUNTRACED: cint
Report status of stopped child process.   Source
WEXITSTATUS: cint
Return exit status.   Source
WSTOPSIG: cint
Return signal number that caused process to stop.   Source
WTERMSIG: cint
Return signal number that caused process to terminate.   Source
WEXITED: cint
Wait for processes that have exited.   Source
WSTOPPED: cint
Status is returned for any child that has stopped upon receipt of a signal.   Source
WCONTINUED: cint
Status is returned for any child that was stopped and has been continued.   Source
WNOWAIT: cint
Keep the process whose status is returned in infop in a waitable state.   Source
P_ALL: cint
  Source
P_PID: cint
  Source
P_PGID: cint
  Source
SIG_DFL: proc (x: cint) {.noconv.}
Request for default signal handling.   Source
SIG_ERR: proc (x: cint) {.noconv.}
Return value from signal() in case of error.   Source
cSIG_HOLD: proc (x: cint) {.noconv.}
Request that signal be held.   Source
SIG_IGN: proc (x: cint) {.noconv.}
Request that signal be ignored.   Source
SIGEV_NONE: cint
  Source
SIGEV_SIGNAL: cint
  Source
SIGEV_THREAD: cint
  Source
SIGABRT: cint
  Source
SIGALRM: cint
  Source
SIGBUS: cint
  Source
SIGCHLD: cint
  Source
SIGCONT: cint
  Source
SIGFPE: cint
  Source
SIGHUP: cint
  Source
SIGILL: cint
  Source
SIGINT: cint
  Source
SIGKILL: cint
  Source
SIGPIPE: cint
  Source
SIGQUIT: cint
  Source
SIGSEGV: cint
  Source
SIGSTOP: cint
  Source
SIGTERM: cint
  Source
SIGTSTP: cint
  Source
SIGTTIN: cint
  Source
SIGTTOU: cint
  Source
SIGUSR1: cint
  Source
SIGUSR2: cint
  Source
SIGPOLL: cint
  Source
SIGPROF: cint
  Source
SIGSYS: cint
  Source
SIGTRAP: cint
  Source
SIGURG: cint
  Source
SIGVTALRM: cint
  Source
SIGXCPU: cint
  Source
SIGXFSZ: cint
  Source
SA_NOCLDSTOP: cint
  Source
SIG_BLOCK: cint
  Source
SIG_UNBLOCK: cint
  Source
SIG_SETMASK: cint
  Source
SA_ONSTACK: cint
  Source
SA_RESETHAND: cint
  Source
SA_RESTART: cint
  Source
SA_SIGINFO: cint
  Source
SA_NOCLDWAIT: cint
  Source
SA_NODEFER: cint
  Source
SS_ONSTACK: cint
  Source
SS_DISABLE: cint
  Source
MINSIGSTKSZ: cint
  Source
SIGSTKSZ: cint
  Source
NL_SETD: cint
  Source
NL_CAT_LOCALE: cint
  Source
SCHED_FIFO: cint
  Source
SCHED_RR: cint
  Source
SCHED_SPORADIC: cint
  Source
SCHED_OTHER: cint
  Source
FD_SETSIZE: cint
  Source
SEEK_SET: cint
  Source
SEEK_CUR: cint
  Source
SEEK_END: cint
  Source
SCM_RIGHTS: cint
Indicates that the data array contains the access rights to be sent or received.   Source
SOCK_DGRAM: cint
Datagram socket.   Source
SOCK_RAW: cint
Raw Protocol Interface.   Source
SOCK_SEQPACKET: cint
Sequenced-packet socket.   Source
SOCK_STREAM: cint
Byte-stream socket.   Source
SOL_SOCKET: cint
Options to be accessed at socket level, not protocol level.   Source
SO_ACCEPTCONN: cint
Socket is accepting connections.   Source
SO_BROADCAST: cint
Transmission of broadcast messages is supported.   Source
SO_DEBUG: cint
Debugging information is being recorded.   Source
SO_DONTROUTE: cint
Bypass normal routing.   Source
SO_ERROR: cint
Socket error status.   Source
SO_KEEPALIVE: cint
Connections are kept alive with periodic messages.   Source
SO_LINGER: cint
Socket lingers on close.   Source
SO_OOBINLINE: cint
Out-of-band data is transmitted in line.   Source
SO_RCVBUF: cint
Receive buffer size.   Source
SO_RCVLOWAT: cint
Receive low water mark.   Source
SO_RCVTIMEO: cint
Receive timeout.   Source
SO_REUSEADDR: cint
Reuse of local addresses is supported.   Source
SO_SNDBUF: cint
Send buffer size.   Source
SO_SNDLOWAT: cint
Send low water mark.   Source
SO_SNDTIMEO: cint
Send timeout.   Source
SO_TYPE: cint
Socket type.   Source
SOMAXCONN: cint
The maximum backlog queue length.   Source
MSG_CTRUNC: cint
Control data truncated.   Source
MSG_DONTROUTE: cint
Send without using routing tables.   Source
MSG_EOR: cint
Terminates a record (if supported by the protocol).   Source
MSG_OOB: cint
Out-of-band data.   Source
MAP_POPULATE: cint
Populate (prefault) page tables for a mapping.   Source
MSG_NOSIGNAL: cint
No SIGPIPE generated when an attempt to send is made on a stream-oriented socket that is no longer connected.   Source
MSG_PEEK: cint
Leave received data in queue.   Source
MSG_TRUNC: cint
Normal data truncated.   Source
MSG_WAITALL: cint
Attempt to fill the read buffer.   Source
AF_INET: cint
Internet domain sockets for use with IPv4 addresses.   Source
AF_INET6: cint
Internet domain sockets for use with IPv6 addresses.   Source
AF_UNIX: cint
UNIX domain sockets.   Source
AF_UNSPEC: cint
Unspecified.   Source
SHUT_RD: cint
Disables further receive operations.   Source
SHUT_RDWR: cint
Disables further send and receive operations.   Source
SHUT_WR: cint
Disables further send operations.   Source
IF_NAMESIZE: cint
  Source
IPPROTO_IP: cint
Internet protocol.   Source
IPPROTO_IPV6: cint
Internet Protocol Version 6.   Source
IPPROTO_ICMP: cint
Control message protocol.   Source
IPPROTO_RAW: cint
Raw IP Packets Protocol.   Source
IPPROTO_TCP: cint
Transmission control protocol.   Source
IPPROTO_UDP: cint
User datagram protocol.   Source
INADDR_ANY: TInAddrScalar
IPv4 local host address.   Source
INADDR_BROADCAST: TInAddrScalar
IPv4 broadcast address.   Source
INET_ADDRSTRLEN: cint
16. Length of the string form for IP.   Source
IPV6_JOIN_GROUP: cint
Join a multicast group.   Source
IPV6_LEAVE_GROUP: cint
Quit a multicast group.   Source
IPV6_MULTICAST_HOPS: cint
Multicast hop limit.   Source
IPV6_MULTICAST_IF: cint
Interface to use for outgoing multicast packets.   Source
IPV6_MULTICAST_LOOP: cint
Multicast packets are delivered back to the local application.   Source
IPV6_UNICAST_HOPS: cint
Unicast hop limit.   Source
IPV6_V6ONLY: cint
Restrict AF_INET6 socket to IPv6 communications only.   Source
TCP_NODELAY: cint
Avoid coalescing of small segments.   Source
IPPORT_RESERVED: cint
  Source
HOST_NOT_FOUND: cint
  Source
NO_DATA: cint
  Source
NO_RECOVERY: cint
  Source
TRY_AGAIN: cint
  Source
AI_PASSIVE: cint
Socket address is intended for bind().   Source
AI_CANONNAME: cint
Request for canonical name.   Source
AI_NUMERICHOST: cint
Return numeric host address as name.   Source
AI_NUMERICSERV: cint
Inhibit service name resolution.   Source
AI_V4MAPPED: cint
If no IPv6 addresses are found, query for IPv4 addresses and return them to the caller as IPv4-mapped IPv6 addresses.   Source
AI_ALL: cint
Query for both IPv4 and IPv6 addresses.   Source
AI_ADDRCONFIG: cint
Query for IPv4 addresses only when an IPv4 address is configured; query for IPv6 addresses only when an IPv6 address is configured.   Source
NI_NOFQDN: cint
Only the nodename portion of the FQDN is returned for local hosts.   Source
NI_NUMERICHOST: cint
The numeric form of the node's address is returned instead of its name.   Source
NI_NAMEREQD: cint
Return an error if the node's name cannot be located in the database.   Source
NI_NUMERICSERV: cint
The numeric form of the service address is returned instead of its name.   Source
NI_NUMERICSCOPE: cint
For IPv6 addresses, the numeric form of the scope identifier is returned instead of its name.   Source
NI_DGRAM: cint
Indicates that the service is a datagram service (SOCK_DGRAM).   Source
EAI_AGAIN: cint
The name could not be resolved at this time. Future attempts may succeed.   Source
EAI_BADFLAGS: cint
The flags had an invalid value.   Source
EAI_FAIL: cint
A non-recoverable error occurred.   Source
EAI_FAMILY: cint
The address family was not recognized or the address length was invalid for the specified family.   Source
EAI_MEMORY: cint
There was a memory allocation failure.   Source
EAI_NONAME: cint
The name does not resolve for the supplied parameters. NI_NAMEREQD is set and the host's name cannot be located, or both nodename and servname were null.   Source
EAI_SERVICE: cint
The service passed was not recognized for the specified socket type.   Source
EAI_SOCKTYPE: cint
The intended socket type was not recognized.   Source
EAI_SYSTEM: cint
A system error occurred. The error code can be found in errno.   Source
EAI_OVERFLOW: cint
An argument buffer overflowed.   Source
POLLIN: cshort
Data other than high-priority data may be read without blocking.   Source
POLLRDNORM: cshort
Normal data may be read without blocking.   Source
POLLRDBAND: cshort
Priority data may be read without blocking.   Source
POLLPRI: cshort
High priority data may be read without blocking.   Source
POLLOUT: cshort
Normal data may be written without blocking.   Source
POLLWRNORM: cshort
Equivalent to POLLOUT.   Source
POLLWRBAND: cshort
Priority data may be written.   Source
POLLERR: cshort
An error has occurred (revents only).   Source
POLLHUP: cshort
Device has been disconnected (revents only).   Source
POLLNVAL: cshort
Invalid fd member (revents only).   Source
POSIX_SPAWN_RESETIDS: cint
  Source
POSIX_SPAWN_SETPGROUP: cint
  Source
POSIX_SPAWN_SETSCHEDPARAM: cint
  Source
POSIX_SPAWN_SETSCHEDULER: cint
  Source
POSIX_SPAWN_SETSIGDEF: cint
  Source
POSIX_SPAWN_SETSIGMASK: cint
  Source
in6addr_any: TIn6Addr
  Source
in6addr_loopback: TIn6Addr
  Source

Consts

MM_NULLLBL = nil
  Source
MM_NULLSEV = 0
  Source
MM_NULLMC = 0
  Source
MM_NULLTXT = nil
  Source
MM_NULLACT = nil
  Source
MM_NULLTAG = nil
  Source
STDERR_FILENO = 2
File number of stderr;   Source
STDIN_FILENO = 0
File number of stdin;   Source
STDOUT_FILENO = 1
File number of stdout;   Source
DT_UNKNOWN = 0
Unknown file type.   Source
DT_FIFO = 1
Named pipe, or FIFO.   Source
DT_CHR = 2
Character device.   Source
DT_DIR = 4
Directory.   Source
DT_BLK = 6
Block device.   Source
DT_REG = 8
Regular file.   Source
DT_LNK = 10
Symbolic link.   Source
DT_SOCK = 12
UNIX domain socket.   Source
DT_WHT = 14
  Source
POSIX_SPAWN_USEVFORK = 0x00000040
  Source
INVALID_SOCKET = -1
  Source

Procs

proc WIFCONTINUED(s: cint): bool {.importc, header: "<sys/wait.h>".}
True if child has been continued.   Source
proc WIFEXITED(s: cint): bool {.importc, header: "<sys/wait.h>".}
True if child exited normally.   Source
proc WIFSIGNALED(s: cint): bool {.importc, header: "<sys/wait.h>".}
True if child exited due to uncaught signal.   Source
proc WIFSTOPPED(s: cint): bool {.importc, header: "<sys/wait.h>".}
True if child is currently stopped.   Source
proc aio_cancel(a1: cint; a2: ptr Taiocb): cint {.importc, header: "<aio.h>".}
  Source
proc aio_error(a1: ptr Taiocb): cint {.importc, header: "<aio.h>".}
  Source
proc aio_fsync(a1: cint; a2: ptr Taiocb): cint {.importc, header: "<aio.h>".}
  Source
proc aio_read(a1: ptr Taiocb): cint {.importc, header: "<aio.h>".}
  Source
proc aio_return(a1: ptr Taiocb): int {.importc, header: "<aio.h>".}
  Source
proc aio_suspend(a1: ptr ptr Taiocb; a2: cint; a3: ptr Ttimespec): cint {.
    importc, header: "<aio.h>".}
  Source
proc aio_write(a1: ptr Taiocb): cint {.importc, header: "<aio.h>".}
  Source
proc lio_listio(a1: cint; a2: ptr ptr Taiocb; a3: cint; a4: ptr TsigEvent): cint {.
    importc, header: "<aio.h>".}
  Source
proc htonl(a1: int32): int32 {.importc, header: "<arpa/inet.h>".}
  Source
proc htons(a1: int16): int16 {.importc, header: "<arpa/inet.h>".}
  Source
proc ntohl(a1: int32): int32 {.importc, header: "<arpa/inet.h>".}
  Source
proc ntohs(a1: int16): int16 {.importc, header: "<arpa/inet.h>".}
  Source
proc inet_addr(a1: cstring): TInAddrT {.importc, header: "<arpa/inet.h>".}
  Source
proc inet_ntoa(a1: InAddr): cstring {.importc, header: "<arpa/inet.h>".}
  Source
proc inet_ntop(a1: cint; a2: pointer; a3: cstring; a4: int32): cstring {.
    importc, header: "<arpa/inet.h>".}
  Source
proc inet_pton(a1: cint; a2: cstring; a3: pointer): cint {.importc, 
    header: "<arpa/inet.h>".}
  Source
proc IN6ADDR_ANY_INIT(): TIn6Addr {.importc, header: "<netinet/in.h>".}
  Source
proc IN6ADDR_LOOPBACK_INIT(): TIn6Addr {.importc, header: "<netinet/in.h>".}
  Source
proc closedir(a1: ptr TDIR): cint {.importc, header: "<dirent.h>".}
  Source
proc opendir(a1: cstring): ptr TDIR {.importc, header: "<dirent.h>".}
  Source
proc readdir(a1: ptr TDIR): ptr Tdirent {.importc, header: "<dirent.h>".}
  Source
proc readdir_r(a1: ptr TDIR; a2: ptr Tdirent; a3: ptr ptr Tdirent): cint {.
    importc, header: "<dirent.h>".}
  Source
proc rewinddir(a1: ptr TDIR) {.importc, header: "<dirent.h>".}
  Source
proc seekdir(a1: ptr TDIR; a2: int) {.importc, header: "<dirent.h>".}
  Source
proc telldir(a1: ptr TDIR): int {.importc, header: "<dirent.h>".}
  Source
proc dlclose(a1: pointer): cint {.importc, header: "<dlfcn.h>".}
  Source
proc dlerror(): cstring {.importc, header: "<dlfcn.h>".}
  Source
proc dlopen(a1: cstring; a2: cint): pointer {.importc, header: "<dlfcn.h>".}
  Source
proc dlsym(a1: pointer; a2: cstring): pointer {.importc, header: "<dlfcn.h>".}
  Source
proc creat(a1: cstring; a2: TMode): cint {.importc, header: "<fcntl.h>".}
  Source
proc fcntl[](a1: cint | SocketHandle; a2: cint): cint {.varargs, importc, 
    header: "<fcntl.h>".}
  Source
proc open(a1: cstring; a2: cint): cint {.varargs, importc, header: "<fcntl.h>".}
  Source
proc posix_fadvise(a1: cint; a2, a3: TOff; a4: cint): cint {.importc, 
    header: "<fcntl.h>".}
  Source
proc posix_fallocate(a1: cint; a2, a3: TOff): cint {.importc, 
    header: "<fcntl.h>".}
  Source
proc fmtmsg(a1: int; a2: cstring; a3: cint; a4, a5, a6: cstring): cint {.
    importc, header: "<fmtmsg.h>".}
  Source
proc fnmatch(a1, a2: cstring; a3: cint): cint {.importc, header: "<fnmatch.h>".}
  Source
proc ftw(a1: cstring; 
         a2: proc (x1: cstring; x2: ptr TStat; x3: cint): cint {.noconv.}; 
         a3: cint): cint {.importc, header: "<ftw.h>".}
  Source
proc nftw(a1: cstring; a2: proc (x1: cstring; x2: ptr TStat; x3: cint; 
                                 x4: ptr TFTW): cint {.noconv.}; a3: cint; 
          a4: cint): cint {.importc, header: "<ftw.h>".}
  Source
proc glob(a1: cstring; a2: cint; 
          a3: proc (x1: cstring; x2: cint): cint {.noconv.}; a4: ptr TGlob): cint {.
    importc, header: "<glob.h>".}
  Source
proc globfree(a1: ptr TGlob) {.importc, header: "<glob.h>".}
  Source
proc getgrgid(a1: TGid): ptr TGroup {.importc, header: "<grp.h>".}
  Source
proc getgrnam(a1: cstring): ptr TGroup {.importc, header: "<grp.h>".}
  Source
proc getgrgid_r(a1: TGid; a2: ptr TGroup; a3: cstring; a4: int; 
                a5: ptr ptr TGroup): cint {.importc, header: "<grp.h>".}
  Source
proc getgrnam_r(a1: cstring; a2: ptr TGroup; a3: cstring; a4: int; 
                a5: ptr ptr TGroup): cint {.importc, header: "<grp.h>".}
  Source
proc getgrent(): ptr TGroup {.importc, header: "<grp.h>".}
  Source
proc endgrent() {.importc, header: "<grp.h>".}
  Source
proc setgrent() {.importc, header: "<grp.h>".}
  Source
proc iconv_open(a1, a2: cstring): Ticonv {.importc, header: "<iconv.h>".}
  Source
proc iconv(a1: Ticonv; a2: var cstring; a3: var int; a4: var cstring; 
           a5: var int): int {.importc, header: "<iconv.h>".}
  Source
proc iconv_close(a1: Ticonv): cint {.importc, header: "<iconv.h>".}
  Source
proc nl_langinfo(a1: Tnl_item): cstring {.importc, header: "<langinfo.h>".}
  Source
proc basename(a1: cstring): cstring {.importc, header: "<libgen.h>".}
  Source
proc dirname(a1: cstring): cstring {.importc, header: "<libgen.h>".}
  Source
proc localeconv(): ptr Tlconv {.importc, header: "<locale.h>".}
  Source
proc setlocale(a1: cint; a2: cstring): cstring {.importc, header: "<locale.h>".}
  Source
proc strfmon(a1: cstring; a2: int; a3: cstring): int {.varargs, importc, 
    header: "<monetary.h>".}
  Source
proc mq_close(a1: TMqd): cint {.importc, header: "<mqueue.h>".}
  Source
proc mq_getattr(a1: TMqd; a2: ptr TMqAttr): cint {.importc, header: "<mqueue.h>".}
  Source
proc mq_notify(a1: TMqd; a2: ptr TsigEvent): cint {.importc, 
    header: "<mqueue.h>".}
  Source
proc mq_open(a1: cstring; a2: cint): TMqd {.varargs, importc, 
    header: "<mqueue.h>".}
  Source
proc mq_receive(a1: TMqd; a2: cstring; a3: int; a4: var int): int {.importc, 
    header: "<mqueue.h>".}
  Source
proc mq_send(a1: TMqd; a2: cstring; a3: int; a4: int): cint {.importc, 
    header: "<mqueue.h>".}
  Source
proc mq_setattr(a1: TMqd; a2, a3: ptr TMqAttr): cint {.importc, 
    header: "<mqueue.h>".}
  Source
proc mq_timedreceive(a1: TMqd; a2: cstring; a3: int; a4: int; a5: ptr Ttimespec): int {.
    importc, header: "<mqueue.h>".}
  Source
proc mq_timedsend(a1: TMqd; a2: cstring; a3: int; a4: int; a5: ptr Ttimespec): cint {.
    importc, header: "<mqueue.h>".}
  Source
  Source
proc getpwnam(a1: cstring): ptr TPasswd {.importc, header: "<pwd.h>".}
  Source
proc getpwuid(a1: Tuid): ptr TPasswd {.importc, header: "<pwd.h>".}
  Source
proc getpwnam_r(a1: cstring; a2: ptr TPasswd; a3: cstring; a4: int; 
                a5: ptr ptr TPasswd): cint {.importc, header: "<pwd.h>".}
  Source
proc getpwuid_r(a1: Tuid; a2: ptr TPasswd; a3: cstring; a4: int; 
                a5: ptr ptr TPasswd): cint {.importc, header: "<pwd.h>".}
  Source
proc endpwent() {.importc, header: "<pwd.h>".}
  Source
proc getpwent(): ptr TPasswd {.importc, header: "<pwd.h>".}
  Source
proc setpwent() {.importc, header: "<pwd.h>".}
  Source
proc uname(a1: var Tutsname): cint {.importc, header: "<sys/utsname.h>".}
  Source
proc pthread_atfork(a1, a2, a3: proc () {.noconv.}): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_attr_destroy(a1: ptr Tpthread_attr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_attr_getdetachstate(a1: ptr Tpthread_attr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getguardsize(a1: ptr Tpthread_attr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getinheritsched(a1: ptr Tpthread_attr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getschedparam(a1: ptr Tpthread_attr; a2: ptr Tsched_param): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getschedpolicy(a1: ptr Tpthread_attr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getscope(a1: ptr Tpthread_attr; a2: var cint): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_attr_getstack(a1: ptr Tpthread_attr; a2: var pointer; a3: var int): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getstackaddr(a1: ptr Tpthread_attr; a2: var pointer): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_getstacksize(a1: ptr Tpthread_attr; a2: var int): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_init(a1: ptr Tpthread_attr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_attr_setdetachstate(a1: ptr Tpthread_attr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_setguardsize(a1: ptr Tpthread_attr; a2: int): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_attr_setinheritsched(a1: ptr Tpthread_attr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_setschedparam(a1: ptr Tpthread_attr; a2: ptr Tsched_param): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_setschedpolicy(a1: ptr Tpthread_attr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_setscope(a1: ptr Tpthread_attr; a2: cint): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_attr_setstack(a1: ptr Tpthread_attr; a2: pointer; a3: int): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_setstackaddr(a1: ptr Tpthread_attr; a2: pointer): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_attr_setstacksize(a1: ptr Tpthread_attr; a2: int): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_barrier_destroy(a1: ptr Tpthread_barrier): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_barrier_init(a1: ptr Tpthread_barrier; 
                          a2: ptr Tpthread_barrierattr; a3: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_barrier_wait(a1: ptr Tpthread_barrier): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_barrierattr_destroy(a1: ptr Tpthread_barrierattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_barrierattr_getpshared(a1: ptr Tpthread_barrierattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_barrierattr_init(a1: ptr Tpthread_barrierattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_barrierattr_setpshared(a1: ptr Tpthread_barrierattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_cancel(a1: Tpthread): cint {.importc, header: "<pthread.h>".}
  Source
proc pthread_cleanup_push(a1: proc (x: pointer) {.noconv.}; a2: pointer) {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_cleanup_pop(a1: cint) {.importc, header: "<pthread.h>".}
  Source
proc pthread_cond_broadcast(a1: ptr Tpthread_cond): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_cond_destroy(a1: ptr Tpthread_cond): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_cond_init(a1: ptr Tpthread_cond; a2: ptr Tpthread_condattr): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_cond_signal(a1: ptr Tpthread_cond): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_cond_timedwait(a1: ptr Tpthread_cond; a2: ptr Tpthread_mutex; 
                            a3: ptr Ttimespec): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_cond_wait(a1: ptr Tpthread_cond; a2: ptr Tpthread_mutex): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_condattr_destroy(a1: ptr Tpthread_condattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_condattr_getclock(a1: ptr Tpthread_condattr; a2: var TClockId): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_condattr_getpshared(a1: ptr Tpthread_condattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_condattr_init(a1: ptr Tpthread_condattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_condattr_setclock(a1: ptr Tpthread_condattr; a2: TClockId): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_condattr_setpshared(a1: ptr Tpthread_condattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_create(a1: ptr Tpthread; a2: ptr Tpthread_attr; 
                    a3: proc (x: pointer): pointer {.noconv.}; a4: pointer): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_detach(a1: Tpthread): cint {.importc, header: "<pthread.h>".}
  Source
proc pthread_equal(a1, a2: Tpthread): cint {.importc, header: "<pthread.h>".}
  Source
proc pthread_exit(a1: pointer) {.importc, header: "<pthread.h>".}
  Source
proc pthread_getconcurrency(): cint {.importc, header: "<pthread.h>".}
  Source
proc pthread_getcpuclockid(a1: Tpthread; a2: var TClockId): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_getschedparam(a1: Tpthread; a2: var cint; a3: ptr Tsched_param): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_getspecific(a1: Tpthread_key): pointer {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_join(a1: Tpthread; a2: ptr pointer): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_key_create(a1: ptr Tpthread_key; a2: proc (x: pointer) {.noconv.}): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_key_delete(a1: Tpthread_key): cint {.importc, header: "<pthread.h>".}
  Source
proc pthread_mutex_destroy(a1: ptr Tpthread_mutex): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_mutex_getprioceiling(a1: ptr Tpthread_mutex; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutex_init(a1: ptr Tpthread_mutex; a2: ptr Tpthread_mutexattr): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutex_lock(a1: ptr Tpthread_mutex): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_mutex_setprioceiling(a1: ptr Tpthread_mutex; a2: cint; a3: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutex_timedlock(a1: ptr Tpthread_mutex; a2: ptr Ttimespec): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutex_trylock(a1: ptr Tpthread_mutex): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_mutex_unlock(a1: ptr Tpthread_mutex): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_mutexattr_destroy(a1: ptr Tpthread_mutexattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_mutexattr_getprioceiling(a1: ptr Tpthread_mutexattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_getprotocol(a1: ptr Tpthread_mutexattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_getpshared(a1: ptr Tpthread_mutexattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_gettype(a1: ptr Tpthread_mutexattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_init(a1: ptr Tpthread_mutexattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_mutexattr_setprioceiling(a1: ptr Tpthread_mutexattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_setprotocol(a1: ptr Tpthread_mutexattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_setpshared(a1: ptr Tpthread_mutexattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_mutexattr_settype(a1: ptr Tpthread_mutexattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_once(a1: ptr Tpthread_once; a2: proc () {.noconv.}): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_rwlock_destroy(a1: ptr Tpthread_rwlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlock_init(a1: ptr Tpthread_rwlock; a2: ptr Tpthread_rwlockattr): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_rwlock_rdlock(a1: ptr Tpthread_rwlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlock_timedrdlock(a1: ptr Tpthread_rwlock; a2: ptr Ttimespec): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_rwlock_timedwrlock(a1: ptr Tpthread_rwlock; a2: ptr Ttimespec): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_rwlock_tryrdlock(a1: ptr Tpthread_rwlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlock_trywrlock(a1: ptr Tpthread_rwlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlock_unlock(a1: ptr Tpthread_rwlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlock_wrlock(a1: ptr Tpthread_rwlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlockattr_destroy(a1: ptr Tpthread_rwlockattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlockattr_getpshared(a1: ptr Tpthread_rwlockattr; a2: var cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_rwlockattr_init(a1: ptr Tpthread_rwlockattr): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_rwlockattr_setpshared(a1: ptr Tpthread_rwlockattr; a2: cint): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_self(): Tpthread {.importc, header: "<pthread.h>".}
  Source
proc pthread_setcancelstate(a1: cint; a2: var cint): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_setcanceltype(a1: cint; a2: var cint): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_setconcurrency(a1: cint): cint {.importc, header: "<pthread.h>".}
  Source
proc pthread_setschedparam(a1: Tpthread; a2: cint; a3: ptr Tsched_param): cint {.
    importc, header: "<pthread.h>".}
  Source
proc pthread_setschedprio(a1: Tpthread; a2: cint): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_setspecific(a1: Tpthread_key; a2: pointer): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_spin_destroy(a1: ptr Tpthread_spinlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_spin_init(a1: ptr Tpthread_spinlock; a2: cint): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_spin_lock(a1: ptr Tpthread_spinlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_spin_trylock(a1: ptr Tpthread_spinlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_spin_unlock(a1: ptr Tpthread_spinlock): cint {.importc, 
    header: "<pthread.h>".}
  Source
proc pthread_testcancel() {.importc, header: "<pthread.h>".}
  Source
proc exitnow(code: int): void {.importc: "_exit", header: "<unistd.h>".}
  Source
proc access(a1: cstring; a2: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc alarm(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc chdir(a1: cstring): cint {.importc, header: "<unistd.h>".}
  Source
proc chown(a1: cstring; a2: Tuid; a3: TGid): cint {.importc, 
    header: "<unistd.h>".}
  Source
proc close[](a1: cint | SocketHandle): cint {.importc, header: "<unistd.h>".}
  Source
proc confstr(a1: cint; a2: cstring; a3: int): int {.importc, 
    header: "<unistd.h>".}
  Source
proc crypt(a1, a2: cstring): cstring {.importc, header: "<unistd.h>".}
  Source
proc ctermid(a1: cstring): cstring {.importc, header: "<unistd.h>".}
  Source
proc dup(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc dup2(a1, a2: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc encrypt(a1: array[0 .. 63, char]; a2: cint) {.importc, header: "<unistd.h>".}
  Source
proc execl(a1, a2: cstring): cint {.varargs, importc, header: "<unistd.h>".}
  Source
proc execle(a1, a2: cstring): cint {.varargs, importc, header: "<unistd.h>".}
  Source
proc execlp(a1, a2: cstring): cint {.varargs, importc, header: "<unistd.h>".}
  Source
proc execv(a1: cstring; a2: cstringArray): cint {.importc, header: "<unistd.h>".}
  Source
proc execve(a1: cstring; a2, a3: cstringArray): cint {.importc, 
    header: "<unistd.h>".}
  Source
proc execvp(a1: cstring; a2: cstringArray): cint {.importc, header: "<unistd.h>".}
  Source
proc execvpe(a1: cstring; a2: cstringArray; a3: cstringArray): cint {.importc, 
    header: "<unistd.h>".}
  Source
proc fchown(a1: cint; a2: Tuid; a3: TGid): cint {.importc, header: "<unistd.h>".}
  Source
proc fchdir(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc fdatasync(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc fork(): TPid {.importc, header: "<unistd.h>".}
  Source
proc fpathconf(a1, a2: cint): int {.importc, header: "<unistd.h>".}
  Source
proc fsync(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc ftruncate(a1: cint; a2: TOff): cint {.importc, header: "<unistd.h>".}
  Source
proc getcwd(a1: cstring; a2: int): cstring {.importc, header: "<unistd.h>".}
  Source
proc getegid(): TGid {.importc, header: "<unistd.h>".}
  Source
proc geteuid(): Tuid {.importc, header: "<unistd.h>".}
  Source
proc getgid(): TGid {.importc, header: "<unistd.h>".}
  Source
proc getgroups(a1: cint; a2: ptr array[0 .. 255, TGid]): cint {.importc, 
    header: "<unistd.h>".}
  Source
proc gethostid(): int {.importc, header: "<unistd.h>".}
  Source
proc gethostname(a1: cstring; a2: int): cint {.importc, header: "<unistd.h>".}
  Source
proc getlogin(): cstring {.importc, header: "<unistd.h>".}
  Source
proc getlogin_r(a1: cstring; a2: int): cint {.importc, header: "<unistd.h>".}
  Source
proc getopt(a1: cint; a2: cstringArray; a3: cstring): cint {.importc, 
    header: "<unistd.h>".}
  Source
proc getpgid(a1: TPid): TPid {.importc, header: "<unistd.h>".}
  Source
proc getpgrp(): TPid {.importc, header: "<unistd.h>".}
  Source
proc getpid(): TPid {.importc, header: "<unistd.h>".}
  Source
proc getppid(): TPid {.importc, header: "<unistd.h>".}
  Source
proc getsid(a1: TPid): TPid {.importc, header: "<unistd.h>".}
  Source
proc getuid(): Tuid {.importc, header: "<unistd.h>".}
  Source
proc getwd(a1: cstring): cstring {.importc, header: "<unistd.h>".}
  Source
proc isatty(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc lchown(a1: cstring; a2: Tuid; a3: TGid): cint {.importc, 
    header: "<unistd.h>".}
  Source
  Source
proc lockf(a1, a2: cint; a3: TOff): cint {.importc, header: "<unistd.h>".}
  Source
proc lseek(a1: cint; a2: TOff; a3: cint): TOff {.importc, header: "<unistd.h>".}
  Source
proc nice(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc pathconf(a1: cstring; a2: cint): int {.importc, header: "<unistd.h>".}
  Source
proc pause(): cint {.importc, header: "<unistd.h>".}
  Source
proc pipe(a: array[0 .. 1, cint]): cint {.importc, header: "<unistd.h>".}
  Source
proc pread(a1: cint; a2: pointer; a3: int; a4: TOff): int {.importc, 
    header: "<unistd.h>".}
  Source
proc pwrite(a1: cint; a2: pointer; a3: int; a4: TOff): int {.importc, 
    header: "<unistd.h>".}
  Source
proc read(a1: cint; a2: pointer; a3: int): int {.importc, header: "<unistd.h>".}
  Source
  Source
proc rmdir(a1: cstring): cint {.importc, header: "<unistd.h>".}
  Source
proc setegid(a1: TGid): cint {.importc, header: "<unistd.h>".}
  Source
proc seteuid(a1: Tuid): cint {.importc, header: "<unistd.h>".}
  Source
proc setgid(a1: TGid): cint {.importc, header: "<unistd.h>".}
  Source
proc setpgid(a1, a2: TPid): cint {.importc, header: "<unistd.h>".}
  Source
proc setpgrp(): TPid {.importc, header: "<unistd.h>".}
  Source
proc setregid(a1, a2: TGid): cint {.importc, header: "<unistd.h>".}
  Source
proc setreuid(a1, a2: Tuid): cint {.importc, header: "<unistd.h>".}
  Source
proc setsid(): TPid {.importc, header: "<unistd.h>".}
  Source
proc setuid(a1: Tuid): cint {.importc, header: "<unistd.h>".}
  Source
proc sleep(a1: cint): cint {.importc, header: "<unistd.h>".}
  Source
proc swab(a1, a2: pointer; a3: int) {.importc, header: "<unistd.h>".}
  Source
  Source
proc sync() {.importc, header: "<unistd.h>".}
  Source
proc sysconf(a1: cint): int {.importc, header: "<unistd.h>".}
  Source
proc tcgetpgrp(a1: cint): TPid {.importc, header: "<unistd.h>".}
  Source
proc tcsetpgrp(a1: cint; a2: TPid): cint {.importc, header: "<unistd.h>".}
  Source
proc truncate(a1: cstring; a2: TOff): cint {.importc, header: "<unistd.h>".}
  Source
proc ttyname(a1: cint): cstring {.importc, header: "<unistd.h>".}
  Source
proc ttyname_r(a1: cint; a2: cstring; a3: int): cint {.importc, 
    header: "<unistd.h>".}
  Source
proc ualarm(a1, a2: Tuseconds): Tuseconds {.importc, header: "<unistd.h>".}
  Source
  Source
proc usleep(a1: Tuseconds): cint {.importc, header: "<unistd.h>".}
  Source
proc vfork(): TPid {.importc, header: "<unistd.h>".}
  Source
proc write(a1: cint; a2: pointer; a3: int): int {.importc, header: "<unistd.h>".}
  Source
proc sem_close(a1: ptr TSem): cint {.importc, header: "<semaphore.h>".}
  Source
proc sem_destroy(a1: ptr TSem): cint {.importc, header: "<semaphore.h>".}
  Source
proc sem_getvalue(a1: ptr TSem; a2: var cint): cint {.importc, 
    header: "<semaphore.h>".}
  Source
proc sem_init(a1: ptr TSem; a2: cint; a3: cint): cint {.importc, 
    header: "<semaphore.h>".}
  Source
proc sem_open(a1: cstring; a2: cint): ptr TSem {.varargs, importc, 
    header: "<semaphore.h>".}
  Source
proc sem_post(a1: ptr TSem): cint {.importc, header: "<semaphore.h>".}
  Source
proc sem_timedwait(a1: ptr TSem; a2: ptr Ttimespec): cint {.importc, 
    header: "<semaphore.h>".}
  Source
proc sem_trywait(a1: ptr TSem): cint {.importc, header: "<semaphore.h>".}
  Source
  Source
proc sem_wait(a1: ptr TSem): cint {.importc, header: "<semaphore.h>".}
  Source
proc ftok(a1: cstring; a2: cint): TKey {.importc, header: "<sys/ipc.h>".}
  Source
proc statvfs(a1: cstring; a2: var TStatvfs): cint {.importc, 
    header: "<sys/statvfs.h>".}
  Source
proc fstatvfs(a1: cint; a2: var TStatvfs): cint {.importc, 
    header: "<sys/statvfs.h>".}
  Source
proc chmod(a1: cstring; a2: TMode): cint {.importc, header: "<sys/stat.h>".}
  Source
proc fchmod(a1: cint; a2: TMode): cint {.importc, header: "<sys/stat.h>".}
  Source
proc fstat(a1: cint; a2: var TStat): cint {.importc, header: "<sys/stat.h>".}
  Source
proc lstat(a1: cstring; a2: var TStat): cint {.importc, header: "<sys/stat.h>".}
  Source
proc mkdir(a1: cstring; a2: TMode): cint {.importc, header: "<sys/stat.h>".}
  Source
proc mkfifo(a1: cstring; a2: TMode): cint {.importc, header: "<sys/stat.h>".}
  Source
proc mknod(a1: cstring; a2: TMode; a3: TDev): cint {.importc, 
    header: "<sys/stat.h>".}
  Source
proc stat(a1: cstring; a2: var TStat): cint {.importc, header: "<sys/stat.h>".}
  Source
proc umask(a1: TMode): TMode {.importc, header: "<sys/stat.h>".}
  Source
proc S_ISBLK(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a block special file.   Source
proc S_ISCHR(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a character special file.   Source
proc S_ISDIR(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a directory.   Source
proc S_ISFIFO(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a pipe or FIFO special file.   Source
proc S_ISREG(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a regular file.   Source
proc S_ISLNK(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a symbolic link.   Source
proc S_ISSOCK(m: TMode): bool {.importc, header: "<sys/stat.h>".}
Test for a socket.   Source
proc S_TYPEISMQ(buf: var TStat): bool {.importc, header: "<sys/stat.h>".}
Test for a message queue.   Source
proc S_TYPEISSEM(buf: var TStat): bool {.importc, header: "<sys/stat.h>".}
Test for a semaphore.   Source
proc S_TYPEISSHM(buf: var TStat): bool {.importc, header: "<sys/stat.h>".}
Test for a shared memory object.   Source
proc S_TYPEISTMO(buf: var TStat): bool {.importc, header: "<sys/stat.h>".}
Test macro for a typed memory object.   Source
proc mlock(a1: pointer; a2: int): cint {.importc, header: "<sys/mman.h>".}
  Source
proc mlockall(a1: cint): cint {.importc, header: "<sys/mman.h>".}
  Source
proc mmap(a1: pointer; a2: int; a3, a4, a5: cint; a6: TOff): pointer {.importc, 
    header: "<sys/mman.h>".}
  Source
proc mprotect(a1: pointer; a2: int; a3: cint): cint {.importc, 
    header: "<sys/mman.h>".}
  Source
proc msync(a1: pointer; a2: int; a3: cint): cint {.importc, 
    header: "<sys/mman.h>".}
  Source
proc munlock(a1: pointer; a2: int): cint {.importc, header: "<sys/mman.h>".}
  Source
proc munlockall(): cint {.importc, header: "<sys/mman.h>".}
  Source
proc munmap(a1: pointer; a2: int): cint {.importc, header: "<sys/mman.h>".}
  Source
proc posix_madvise(a1: pointer; a2: int; a3: cint): cint {.importc, 
    header: "<sys/mman.h>".}
  Source
proc posix_mem_offset(a1: pointer; a2: int; a3: var TOff; a4: var int; 
                      a5: var cint): cint {.importc, header: "<sys/mman.h>".}
  Source
proc posix_typed_mem_get_info(a1: cint; a2: var Tposix_typed_mem_info): cint {.
    importc, header: "<sys/mman.h>".}
  Source
proc posix_typed_mem_open(a1: cstring; a2, a3: cint): cint {.importc, 
    header: "<sys/mman.h>".}
  Source
proc shm_open(a1: cstring; a2: cint; a3: TMode): cint {.importc, 
    header: "<sys/mman.h>".}
  Source
  Source
proc asctime(a1: var Ttm): cstring {.importc, header: "<time.h>".}
  Source
proc asctime_r(a1: var Ttm; a2: cstring): cstring {.importc, header: "<time.h>".}
  Source
proc clock(): TClock {.importc, header: "<time.h>".}
  Source
proc clock_getcpuclockid(a1: TPid; a2: var TClockId): cint {.importc, 
    header: "<time.h>".}
  Source
proc clock_getres(a1: TClockId; a2: var Ttimespec): cint {.importc, 
    header: "<time.h>".}
  Source
proc clock_gettime(a1: TClockId; a2: var Ttimespec): cint {.importc, 
    header: "<time.h>".}
  Source
proc clock_nanosleep(a1: TClockId; a2: cint; a3: var Ttimespec; 
                     a4: var Ttimespec): cint {.importc, header: "<time.h>".}
  Source
proc clock_settime(a1: TClockId; a2: var Ttimespec): cint {.importc, 
    header: "<time.h>".}
  Source
proc ctime(a1: var Time): cstring {.importc, header: "<time.h>".}
  Source
proc ctime_r(a1: var Time; a2: cstring): cstring {.importc, header: "<time.h>".}
  Source
proc difftime(a1, a2: Time): cdouble {.importc, header: "<time.h>".}
  Source
proc getdate(a1: cstring): ptr Ttm {.importc, header: "<time.h>".}
  Source
proc gmtime(a1: var Time): ptr Ttm {.importc, header: "<time.h>".}
  Source
proc gmtime_r(a1: var Time; a2: var Ttm): ptr Ttm {.importc, header: "<time.h>".}
  Source
proc localtime(a1: var Time): ptr Ttm {.importc, header: "<time.h>".}
  Source
proc localtime_r(a1: var Time; a2: var Ttm): ptr Ttm {.importc, 
    header: "<time.h>".}
  Source
proc mktime(a1: var Ttm): Time {.importc, header: "<time.h>".}
  Source
proc timegm(a1: var Ttm): Time {.importc, header: "<time.h>".}
  Source
proc nanosleep(a1, a2: var Ttimespec): cint {.importc, header: "<time.h>".}
  Source
proc strftime(a1: cstring; a2: int; a3: cstring; a4: var Ttm): int {.importc, 
    header: "<time.h>".}
  Source
proc strptime(a1, a2: cstring; a3: var Ttm): cstring {.importc, 
    header: "<time.h>".}
  Source
proc time(a1: var Time): Time {.importc, header: "<time.h>".}
  Source
proc timer_create(a1: var TClockId; a2: var TsigEvent; a3: var Ttimer): cint {.
    importc, header: "<time.h>".}
  Source
proc timer_delete(a1: var Ttimer): cint {.importc, header: "<time.h>".}
  Source
proc timer_gettime(a1: Ttimer; a2: var titimerspec): cint {.importc, 
    header: "<time.h>".}
  Source
proc timer_getoverrun(a1: Ttimer): cint {.importc, header: "<time.h>".}
  Source
proc timer_settime(a1: Ttimer; a2: cint; a3: var titimerspec; 
                   a4: var titimerspec): cint {.importc, header: "<time.h>".}
  Source
proc tzset() {.importc, header: "<time.h>".}
  Source
proc wait(a1: var cint): TPid {.importc, header: "<sys/wait.h>".}
  Source
proc waitid(a1: cint; a2: Tid; a3: var TsigInfo; a4: cint): cint {.importc, 
    header: "<sys/wait.h>".}
  Source
proc waitpid(a1: TPid; a2: var cint; a3: cint): TPid {.importc, 
    header: "<sys/wait.h>".}
  Source
proc bsd_signal(a1: cint; a2: proc (x: pointer) {.noconv.}) {.importc, 
    header: "<signal.h>".}
  Source
proc kill(a1: TPid; a2: cint): cint {.importc, header: "<signal.h>".}
  Source
proc killpg(a1: TPid; a2: cint): cint {.importc, header: "<signal.h>".}
  Source
proc pthread_kill(a1: Tpthread; a2: cint): cint {.importc, header: "<signal.h>".}
  Source
proc pthread_sigmask(a1: cint; a2, a3: var Tsigset): cint {.importc, 
    header: "<signal.h>".}
  Source
proc `raise`(a1: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigaction(a1: cint; a2, a3: var TSigaction): cint {.importc, 
    header: "<signal.h>".}
  Source
proc sigaddset(a1: var Tsigset; a2: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigaltstack(a1, a2: var TStack): cint {.importc, header: "<signal.h>".}
  Source
proc sigdelset(a1: var Tsigset; a2: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigemptyset(a1: var Tsigset): cint {.importc, header: "<signal.h>".}
  Source
proc sigfillset(a1: var Tsigset): cint {.importc, header: "<signal.h>".}
  Source
proc sighold(a1: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigignore(a1: cint): cint {.importc, header: "<signal.h>".}
  Source
proc siginterrupt(a1, a2: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigismember(a1: var Tsigset; a2: cint): cint {.importc, 
    header: "<signal.h>".}
  Source
proc signal(a1: cint; a2: proc (x: cint) {.noconv.}) {.importc, 
    header: "<signal.h>".}
  Source
proc sigpause(a1: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigpending(a1: var Tsigset): cint {.importc, header: "<signal.h>".}
  Source
proc sigprocmask(a1: cint; a2, a3: var Tsigset): cint {.importc, 
    header: "<signal.h>".}
  Source
proc sigqueue(a1: TPid; a2: cint; a3: TsigVal): cint {.importc, 
    header: "<signal.h>".}
  Source
proc sigrelse(a1: cint): cint {.importc, header: "<signal.h>".}
  Source
proc sigset(a1: int; a2: proc (x: cint) {.noconv.}) {.importc, 
    header: "<signal.h>".}
  Source
proc sigsuspend(a1: var Tsigset): cint {.importc, header: "<signal.h>".}
  Source
proc sigtimedwait(a1: var Tsigset; a2: var TsigInfo; a3: var Ttimespec): cint {.
    importc, header: "<signal.h>".}
  Source
proc sigwait(a1: var Tsigset; a2: var cint): cint {.importc, 
    header: "<signal.h>".}
  Source
proc sigwaitinfo(a1: var Tsigset; a2: var TsigInfo): cint {.importc, 
    header: "<signal.h>".}
  Source
proc catclose(a1: Tnl_catd): cint {.importc, header: "<nl_types.h>".}
  Source
proc catgets(a1: Tnl_catd; a2, a3: cint; a4: cstring): cstring {.importc, 
    header: "<nl_types.h>".}
  Source
proc catopen(a1: cstring; a2: cint): Tnl_catd {.importc, header: "<nl_types.h>".}
  Source
proc sched_get_priority_max(a1: cint): cint {.importc, header: "<sched.h>".}
  Source
proc sched_get_priority_min(a1: cint): cint {.importc, header: "<sched.h>".}
  Source
proc sched_getparam(a1: TPid; a2: var Tsched_param): cint {.importc, 
    header: "<sched.h>".}
  Source
proc sched_getscheduler(a1: TPid): cint {.importc, header: "<sched.h>".}
  Source
proc sched_rr_get_interval(a1: TPid; a2: var Ttimespec): cint {.importc, 
    header: "<sched.h>".}
  Source
proc sched_setparam(a1: TPid; a2: var Tsched_param): cint {.importc, 
    header: "<sched.h>".}
  Source
proc sched_setscheduler(a1: TPid; a2: cint; a3: var Tsched_param): cint {.
    importc, header: "<sched.h>".}
  Source
proc sched_yield(): cint {.importc, header: "<sched.h>".}
  Source
proc strerror(errnum: cint): cstring {.importc, header: "<string.h>".}
  Source
proc hstrerror(herrnum: cint): cstring {.importc, header: "<netdb.h>".}
  Source
proc FD_CLR(a1: cint; a2: var TFdSet) {.importc, header: "<sys/select.h>".}
  Source
proc FD_ISSET[](a1: cint | SocketHandle; a2: var TFdSet): cint {.importc, 
    header: "<sys/select.h>".}
  Source
proc FD_SET[](a1: cint | SocketHandle; a2: var TFdSet) {.importc: "FD_SET", 
    header: "<sys/select.h>".}
  Source
proc FD_ZERO(a1: var TFdSet) {.importc, header: "<sys/select.h>".}
  Source
proc pselect(a1: cint; a2, a3, a4: ptr TFdSet; a5: ptr Ttimespec; 
             a6: var Tsigset): cint {.importc, header: "<sys/select.h>".}
  Source
proc select[](a1: cint | SocketHandle; a2, a3, a4: ptr TFdSet; a5: ptr Timeval): cint {.
    importc, header: "<sys/select.h>".}
  Source
proc posix_spawn(a1: var TPid; a2: cstring; a3: var Tposix_spawn_file_actions; 
                 a4: var Tposix_spawnattr; a5, a6: cstringArray): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawn_file_actions_addclose(a1: var Tposix_spawn_file_actions; 
                                       a2: cint): cint {.importc, 
    header: "<spawn.h>".}
  Source
proc posix_spawn_file_actions_adddup2(a1: var Tposix_spawn_file_actions; 
                                      a2, a3: cint): cint {.importc, 
    header: "<spawn.h>".}
  Source
proc posix_spawn_file_actions_addopen(a1: var Tposix_spawn_file_actions; 
                                      a2: cint; a3: cstring; a4: cint; a5: TMode): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawn_file_actions_destroy(a1: var Tposix_spawn_file_actions): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawn_file_actions_init(a1: var Tposix_spawn_file_actions): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_destroy(a1: var Tposix_spawnattr): cint {.importc, 
    header: "<spawn.h>".}
  Source
proc posix_spawnattr_getsigdefault(a1: var Tposix_spawnattr; a2: var Tsigset): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_getflags(a1: var Tposix_spawnattr; a2: var cshort): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_getpgroup(a1: var Tposix_spawnattr; a2: var TPid): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_getschedparam(a1: var Tposix_spawnattr; 
                                   a2: var Tsched_param): cint {.importc, 
    header: "<spawn.h>".}
  Source
proc posix_spawnattr_getschedpolicy(a1: var Tposix_spawnattr; a2: var cint): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_getsigmask(a1: var Tposix_spawnattr; a2: var Tsigset): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_init(a1: var Tposix_spawnattr): cint {.importc, 
    header: "<spawn.h>".}
  Source
proc posix_spawnattr_setsigdefault(a1: var Tposix_spawnattr; a2: var Tsigset): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_setflags(a1: var Tposix_spawnattr; a2: cint): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_setpgroup(a1: var Tposix_spawnattr; a2: TPid): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_setschedparam(a1: var Tposix_spawnattr; 
                                   a2: var Tsched_param): cint {.importc, 
    header: "<spawn.h>".}
  Source
proc posix_spawnattr_setschedpolicy(a1: var Tposix_spawnattr; a2: cint): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnattr_setsigmask(a1: var Tposix_spawnattr; a2: var Tsigset): cint {.
    importc, header: "<spawn.h>".}
  Source
proc posix_spawnp(a1: var TPid; a2: cstring; a3: var Tposix_spawn_file_actions; 
                  a4: var Tposix_spawnattr; a5, a6: cstringArray): cint {.
    importc, header: "<spawn.h>".}
  Source
proc getcontext(a1: var Tucontext): cint {.importc, header: "<ucontext.h>".}
  Source
proc makecontext(a1: var Tucontext; a4: proc () {.noconv.}; a3: cint) {.varargs, 
    importc, header: "<ucontext.h>".}
  Source
proc setcontext(a1: var Tucontext): cint {.importc, header: "<ucontext.h>".}
  Source
proc swapcontext(a1, a2: var Tucontext): cint {.importc, header: "<ucontext.h>".}
  Source
proc readv(a1: cint; a2: ptr TIOVec; a3: cint): int {.importc, 
    header: "<sys/uio.h>".}
  Source
proc writev(a1: cint; a2: ptr TIOVec; a3: cint): int {.importc, 
    header: "<sys/uio.h>".}
  Source
proc CMSG_DATA(cmsg: ptr Tcmsghdr): cstring {.importc, header: "<sys/socket.h>".}
  Source
proc CMSG_NXTHDR(mhdr: ptr Tmsghdr; cmsg: ptr Tcmsghdr): ptr Tcmsghdr {.importc, 
    header: "<sys/socket.h>".}
  Source
proc CMSG_FIRSTHDR(mhdr: ptr Tmsghdr): ptr Tcmsghdr {.importc, 
    header: "<sys/socket.h>".}
  Source
proc `==`(x, y: SocketHandle): bool {.borrow.}
  Source
proc accept(a1: SocketHandle; a2: ptr SockAddr; a3: ptr Socklen): SocketHandle {.
    importc, header: "<sys/socket.h>".}
  Source
proc bindSocket(a1: SocketHandle; a2: ptr SockAddr; a3: Socklen): cint {.
    importc: "bind", header: "<sys/socket.h>".}
is Posix's bind, because bind is a reserved word   Source
proc connect(a1: SocketHandle; a2: ptr SockAddr; a3: Socklen): cint {.importc, 
    header: "<sys/socket.h>".}
  Source
proc getpeername(a1: SocketHandle; a2: ptr SockAddr; a3: ptr Socklen): cint {.
    importc, header: "<sys/socket.h>".}
  Source
proc getsockname(a1: SocketHandle; a2: ptr SockAddr; a3: ptr Socklen): cint {.
    importc, header: "<sys/socket.h>".}
  Source
proc getsockopt(a1: SocketHandle; a2, a3: cint; a4: pointer; a5: ptr Socklen): cint {.
    importc, header: "<sys/socket.h>".}
  Source
proc listen(a1: SocketHandle; a2: cint): cint {.importc, 
    header: "<sys/socket.h>".}
  Source
proc recv(a1: SocketHandle; a2: pointer; a3: int; a4: cint): int {.importc, 
    header: "<sys/socket.h>".}
  Source
proc recvfrom(a1: SocketHandle; a2: pointer; a3: int; a4: cint; 
              a5: ptr SockAddr; a6: ptr Socklen): int {.importc, 
    header: "<sys/socket.h>".}
  Source
proc recvmsg(a1: SocketHandle; a2: ptr Tmsghdr; a3: cint): int {.importc, 
    header: "<sys/socket.h>".}
  Source
proc send(a1: SocketHandle; a2: pointer; a3: int; a4: cint): int {.importc, 
    header: "<sys/socket.h>".}
  Source
proc sendmsg(a1: SocketHandle; a2: ptr Tmsghdr; a3: cint): int {.importc, 
    header: "<sys/socket.h>".}
  Source
proc sendto(a1: SocketHandle; a2: pointer; a3: int; a4: cint; a5: ptr SockAddr; 
            a6: Socklen): int {.importc, header: "<sys/socket.h>".}
  Source
proc setsockopt(a1: SocketHandle; a2, a3: cint; a4: pointer; a5: Socklen): cint {.
    importc, header: "<sys/socket.h>".}
  Source
proc shutdown(a1: SocketHandle; a2: cint): cint {.importc, 
    header: "<sys/socket.h>".}
  Source
proc socket(a1, a2, a3: cint): SocketHandle {.importc, header: "<sys/socket.h>".}
  Source
proc sockatmark(a1: cint): cint {.importc, header: "<sys/socket.h>".}
  Source
proc socketpair(a1, a2, a3: cint; a4: var array[0 .. 1, cint]): cint {.importc, 
    header: "<sys/socket.h>".}
  Source
proc if_nametoindex(a1: cstring): cint {.importc, header: "<net/if.h>".}
  Source
proc if_indextoname(a1: cint; a2: cstring): cstring {.importc, 
    header: "<net/if.h>".}
  Source
proc if_nameindex(): ptr Tif_nameindex {.importc, header: "<net/if.h>".}
  Source
proc if_freenameindex(a1: ptr Tif_nameindex) {.importc, header: "<net/if.h>".}
  Source
proc IN6_IS_ADDR_UNSPECIFIED(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Unspecified address.   Source
proc IN6_IS_ADDR_LOOPBACK(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Loopback address.   Source
proc IN6_IS_ADDR_MULTICAST(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Multicast address.   Source
proc IN6_IS_ADDR_LINKLOCAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Unicast link-local address.   Source
proc IN6_IS_ADDR_SITELOCAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Unicast site-local address.   Source
proc IN6_IS_ADDR_V4MAPPED(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
IPv4 mapped address.   Source
proc IN6_IS_ADDR_V4COMPAT(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
IPv4-compatible address.   Source
proc IN6_IS_ADDR_MC_NODELOCAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Multicast node-local address.   Source
proc IN6_IS_ADDR_MC_LINKLOCAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Multicast link-local address.   Source
proc IN6_IS_ADDR_MC_SITELOCAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Multicast site-local address.   Source
proc IN6_IS_ADDR_MC_ORGLOCAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Multicast organization-local address.   Source
proc IN6_IS_ADDR_MC_GLOBAL(a1: ptr TIn6Addr): cint {.importc, 
    header: "<netinet/in.h>".}
Multicast global address.   Source
proc endhostent() {.importc, header: "<netdb.h>".}
  Source
proc endnetent() {.importc, header: "<netdb.h>".}
  Source
proc endprotoent() {.importc, header: "<netdb.h>".}
  Source
proc endservent() {.importc, header: "<netdb.h>".}
  Source
proc freeaddrinfo(a1: ptr AddrInfo) {.importc, header: "<netdb.h>".}
  Source
proc gai_strerror(a1: cint): cstring {.importc, header: "<netdb.h>".}
  Source
proc getaddrinfo(a1, a2: cstring; a3: ptr AddrInfo; a4: var ptr AddrInfo): cint {.
    importc, header: "<netdb.h>".}
  Source
proc gethostbyaddr(a1: pointer; a2: Socklen; a3: cint): ptr Hostent {.importc, 
    header: "<netdb.h>".}
  Source
proc gethostbyname(a1: cstring): ptr Hostent {.importc, header: "<netdb.h>".}
  Source
proc gethostent(): ptr Hostent {.importc, header: "<netdb.h>".}
  Source
proc getnameinfo(a1: ptr SockAddr; a2: Socklen; a3: cstring; a4: Socklen; 
                 a5: cstring; a6: Socklen; a7: cint): cint {.importc, 
    header: "<netdb.h>".}
  Source
proc getnetbyaddr(a1: int32; a2: cint): ptr Tnetent {.importc, 
    header: "<netdb.h>".}
  Source
proc getnetbyname(a1: cstring): ptr Tnetent {.importc, header: "<netdb.h>".}
  Source
proc getnetent(): ptr Tnetent {.importc, header: "<netdb.h>".}
  Source
proc getprotobyname(a1: cstring): ptr TProtoent {.importc, header: "<netdb.h>".}
  Source
proc getprotobynumber(a1: cint): ptr TProtoent {.importc, header: "<netdb.h>".}
  Source
proc getprotoent(): ptr TProtoent {.importc, header: "<netdb.h>".}
  Source
proc getservbyname(a1, a2: cstring): ptr Servent {.importc, header: "<netdb.h>".}
  Source
proc getservbyport(a1: cint; a2: cstring): ptr Servent {.importc, 
    header: "<netdb.h>".}
  Source
proc getservent(): ptr Servent {.importc, header: "<netdb.h>".}
  Source
proc sethostent(a1: cint) {.importc, header: "<netdb.h>".}
  Source
proc setnetent(a1: cint) {.importc, header: "<netdb.h>".}
  Source
proc setprotoent(a1: cint) {.importc, header: "<netdb.h>".}
  Source
proc setservent(a1: cint) {.importc, header: "<netdb.h>".}
  Source
proc poll(a1: ptr TPollfd; a2: Tnfds; a3: int): cint {.importc, 
    header: "<poll.h>".}
  Source
proc realpath(name, resolved: cstring): cstring {.importc: "realpath", 
    header: "<stdlib.h>".}
  Source
proc utimes(path: cstring; times: ptr array[2, Timeval]): int {.
    importc: "utimes", header: "<sys/time.h>".}

Sets file access and modification times.

Pass the filename and an array of times to set the access and modification times respectively. If you pass nil as the array both attributes will be set to the current time.

Returns zero on success.

For more information read http://www.unix.com/man-page/posix/3/utimes/.

  Source