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.

DIR {...}{.importc: "DIR", header: "<dirent.h>", incompleteStruct.} = object
  
A type representing a directory stream.   ソース 編集
SocketHandle = distinct cint
  ソース 編集
Time {...}{.importc: "time_t", header: "<time.h>".} = distinct clong
  ソース 編集
Timespec {...}{.importc: "struct timespec", header: "<time.h>", final, pure.} = object
  tv_sec*: Time                ## Seconds.
  tv_nsec*: int                ## Nanoseconds.
  
struct timespec   Source Edit
Dirent {...}{.importc: "struct dirent", header: "<dirent.h>", final, pure.} = object
  when defined(haiku):
      d_dev*: Dev              ## Device (not POSIX)
      d_pdev*: Dev             ## Parent device (only for queries) (not POSIX)
    
  d_ino*: Ino                  ## File serial number.
  when defined(dragonfly):
      d_type*: uint8

  elif false 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 defined(linux) or defined(openbsd):
          d_off*: Off          ## Not an offset. Value that ``telldir()`` would return.
        

  elif defined(haiku):
      d_pino*: Ino             ## Parent inode (only for queries) (not POSIX)
      d_reclen*: cushort       ## Length of this record. (not POSIX)
    
  d_name*: array[0 .. 255, char]  ## Name of entry.
  
dirent_t struct   Source Edit
Tflock {...}{.importc: "struct flock", final, pure, header: "<fcntl.h>".} = object
  l_type*: cshort              ## Type of lock; F_RDLCK, F_WRLCK, F_UNLCK.
  l_whence*: cshort            ## Flag for starting offset.
  l_start*: Off                ## Relative offset in bytes.
  l_len*: Off                  ## Size; if 0 then until EOF.
  l_pid*: Pid                  ## Process ID of the process holding the lock;
            ## returned with F_GETLK.
  
flock type   Source Edit
FTW {...}{.importc: "struct FTW", header: "<ftw.h>", final, pure.} = object
  base*: cint
  level*: cint
  ソース 編集
Glob {...}{.importc: "glob_t", header: "<glob.h>", final, pure.} = 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 Edit
Group {...}{.importc: "struct group", header: "<grp.h>", final, pure.} = object
  gr_name*: cstring            ## The name of the group.
  gr_gid*: Gid                 ## Numerical group ID.
  gr_mem*: cstringArray        ## Pointer to a null-terminated array of character
                      ## pointers to member names.
  
struct group   Source Edit
Iconv {...}{.importc: "iconv_t", header: "<iconv.h>", final, pure.} = object
Identifies the conversion from one codeset to another.   ソース 編集
Lconv {...}{.importc: "struct lconv", header: "<locale.h>", final, pure.} = 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
  ソース 編集
Mqd {...}{.importc: "mqd_t", header: "<mqueue.h>", final, pure.} = object
  ソース 編集
MqAttr {...}{.importc: "struct mq_attr", header: "<mqueue.h>", final, pure.} = 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 Edit
Passwd {...}{.importc: "struct passwd", header: "<pwd.h>", final, pure.} = object
  pw_name*: cstring            ## User's login name.
  pw_uid*: Uid                 ## Numerical user ID.
  pw_gid*: Gid                 ## Numerical group ID.
  pw_dir*: cstring             ## Initial working directory.
  pw_shell*: cstring           ## Program to use as shell.
  
struct passwd   Source Edit
Blkcnt {...}{.importc: "blkcnt_t", header: "<sys/types.h>".} = int
used for file block counts   Source Edit
Blksize {...}{.importc: "blksize_t", header: "<sys/types.h>".} = int
used for block sizes   Source Edit
Clock {...}{.importc: "clock_t", header: "<sys/types.h>".} = int
  ソース 編集
ClockId {...}{.importc: "clockid_t", header: "<sys/types.h>".} = int
  ソース 編集
Dev {...}{.importc: "dev_t", header: "<sys/types.h>".} = int
  ソース 編集
Fsblkcnt {...}{.importc: "fsblkcnt_t", header: "<sys/types.h>".} = int
  ソース 編集
Fsfilcnt {...}{.importc: "fsfilcnt_t", header: "<sys/types.h>".} = int
  ソース 編集
Gid {...}{.importc: "gid_t", header: "<sys/types.h>".} = int
  ソース 編集
Id {...}{.importc: "id_t", header: "<sys/types.h>".} = int
  ソース 編集
Ino {...}{.importc: "ino_t", header: "<sys/types.h>".} = int
  ソース 編集
Key {...}{.importc: "key_t", header: "<sys/types.h>".} = int
  ソース 編集
Mode {...}{.importc: "mode_t", header: "<sys/types.h>".} = (when false or false:
  uint16
 else:
  uint32)
  ソース 編集
Nlink {...}{.importc: "nlink_t", header: "<sys/types.h>".} = int
  ソース 編集
Off {...}{.importc: "off_t", header: "<sys/types.h>".} = int64
  ソース 編集
Pid {...}{.importc: "pid_t", header: "<sys/types.h>".} = int32
  ソース 編集
Pthread_attr {...}{.importc: "pthread_attr_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_barrier {...}{.importc: "pthread_barrier_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_barrierattr {...}{.importc: "pthread_barrierattr_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_cond {...}{.importc: "pthread_cond_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_condattr {...}{.importc: "pthread_condattr_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_key {...}{.importc: "pthread_key_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_mutex {...}{.importc: "pthread_mutex_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_mutexattr {...}{.importc: "pthread_mutexattr_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_once {...}{.importc: "pthread_once_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_rwlock {...}{.importc: "pthread_rwlock_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_rwlockattr {...}{.importc: "pthread_rwlockattr_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread_spinlock {...}{.importc: "pthread_spinlock_t", header: "<sys/types.h>".} = int
  ソース 編集
Pthread {...}{.importc: "pthread_t", header: "<sys/types.h>".} = int
  ソース 編集
Suseconds {...}{.importc: "suseconds_t", header: "<sys/types.h>".} = int
  ソース 編集
Timer {...}{.importc: "timer_t", header: "<sys/types.h>".} = int
  ソース 編集
Trace_attr {...}{.importc: "trace_attr_t", header: "<sys/types.h>".} = int
  ソース 編集
Trace_event_id {...}{.importc: "trace_event_id_t", header: "<sys/types.h>".} = int
  ソース 編集
Trace_event_set {...}{.importc: "trace_event_set_t", header: "<sys/types.h>".} = int
  ソース 編集
Trace_id {...}{.importc: "trace_id_t", header: "<sys/types.h>".} = int
  ソース 編集
Uid {...}{.importc: "uid_t", header: "<sys/types.h>".} = int
  ソース 編集
Useconds {...}{.importc: "useconds_t", header: "<sys/types.h>".} = int
  ソース 編集
Utsname {...}{.importc: "struct utsname", header: "<sys/utsname.h>", final, pure.} = 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 Edit
Sem {...}{.importc: "sem_t", header: "<semaphore.h>", final, pure.} = object
  ソース 編集
Ipc_perm {...}{.importc: "struct ipc_perm", header: "<sys/ipc.h>", final, pure.} = object
  uid*: Uid                    ## Owner's user ID.
  gid*: Gid                    ## Owner's group ID.
  cuid*: Uid                   ## Creator's user ID.
  cgid*: Gid                   ## Creator's group ID.
  mode*: Mode                  ## Read/write permission.
  
struct ipc_perm   Source Edit
Stat {...}{.importc: "struct stat", header: "<sys/stat.h>", final, pure.} = object
  st_dev*: Dev                 ## Device ID of device containing file.
  st_ino*: Ino                 ## File serial number.
  st_mode*: Mode               ## Mode of file (see below).
  st_nlink*: Nlink             ## Number of hard links to the file.
  st_uid*: Uid                 ## User ID of file.
  st_gid*: Gid                 ## Group ID of file.
  st_rdev*: Dev                ## Device ID (if file is character or block special).
  st_size*: Off                ## 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.
  when StatHasNanoseconds:
      st_atim*: Timespec       ## Time of last access.
      st_mtim*: Timespec       ## Time of last data modification.
      st_ctim*: Timespec       ## Time of last status change.
    
  else:
      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*: Blksize         ## 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*: Blkcnt           ## Number of blocks allocated for this object.
  
struct stat   Source Edit
Statvfs {...}{.importc: "struct statvfs", header: "<sys/statvfs.h>", final, pure.} = object
  f_bsize*: int                ## File system block size.
  f_frsize*: int               ## Fundamental file system block size.
  f_blocks*: Fsblkcnt          ## Total number of blocks on file system
                    ## in units of f_frsize.
  f_bfree*: Fsblkcnt           ## Total number of free blocks.
  f_bavail*: Fsblkcnt          ## Number of free blocks available to
                    ## non-privileged process.
  f_files*: Fsfilcnt           ## Total number of file serial numbers.
  f_ffree*: Fsfilcnt           ## Total number of free file serial numbers.
  f_favail*: Fsfilcnt          ## 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 Edit
Posix_typed_mem_info {...}{.importc: "struct posix_typed_mem_info",
                      header: "<sys/mman.h>", final, pure.} = object
  posix_tmi_length*: int
  ソース 編集
Tm {...}{.importc: "struct tm", header: "<time.h>", final, pure.} = 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 Edit
Itimerspec {...}{.importc: "struct itimerspec", header: "<time.h>", final, pure.} = object
  it_interval*: Timespec       ## Timer period.
  it_value*: Timespec          ## Timer expiration.
  
struct itimerspec   Source Edit
Sig_atomic {...}{.importc: "sig_atomic_t", header: "<signal.h>".} = cint
Possibly volatile-qualified integer type of an object that can be accessed as an atomic entity, even in the presence of asynchronous interrupts.   ソース 編集
Sigset {...}{.importc: "sigset_t", header: "<signal.h>", final, pure.} = object
  ソース 編集
SigEvent {...}{.importc: "struct sigevent", header: "<signal.h>", final, pure.} = object
  sigev_notify*: cint          ## Notification type.
  sigev_signo*: cint           ## Signal number.
  sigev_value*: SigVal         ## Signal value.
  sigev_notify_function*: proc (x: SigVal) {...}{.noconv.} ## Notification func.
  sigev_notify_attributes*: ptr Pthread_attr ## Notification attributes.
  
struct sigevent   Source Edit
SigVal {...}{.importc: "union sigval", header: "<signal.h>", final, pure.} = object
  sival_ptr*: pointer          ## pointer signal value;
                    ## integer signal value not defined!
  
struct sigval   Source Edit
Sigaction {...}{.importc: "struct sigaction", header: "<signal.h>", final, pure.} = 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*: Sigset             ## Set of signals to be blocked during execution of
                 ## the signal handling function.
  sa_flags*: cint              ## Special flags.
  sa_sigaction*: proc (x: cint; y: ptr SigInfo; z: pointer) {...}{.noconv.}
struct sigaction   Source Edit
Stack {...}{.importc: "stack_t", header: "<signal.h>", final, pure.} = object
  ss_sp*: pointer              ## Stack base or pointer.
  ss_size*: int                ## Stack size.
  ss_flags*: cint              ## Flags.
  
stack_t   Source Edit
SigStack {...}{.importc: "struct sigstack", header: "<signal.h>", final, pure.} = object
  ss_onstack*: cint            ## Non-zero when signal stack is in use.
  ss_sp*: pointer              ## Signal stack pointer.
  
struct sigstack   Source Edit
SigInfo {...}{.importc: "siginfo_t", header: "<signal.h>", final, pure.} = 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*: Pid                 ## Sending process ID.
  si_uid*: Uid                 ## 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*: SigVal            ## Signal value.
  
siginfo_t   Source Edit
Nl_item {...}{.importc: "nl_item", header: "<nl_types.h>".} = cint
  ソース 編集
Nl_catd {...}{.importc: "nl_catd", header: "<nl_types.h>".} = cint
  ソース 編集
Sched_param {...}{.importc: "struct sched_param", header: "<sched.h>", final, pure.} = object
  sched_priority*: cint
  sched_ss_low_priority*: cint ## Low scheduling priority for
                             ## sporadic server.
  sched_ss_repl_period*: Timespec ## Replenishment period for
                                ## sporadic server.
  sched_ss_init_budget*: Timespec ## Initial budget for sporadic server.
  sched_ss_max_repl*: cint     ## Maximum pending replenishments for
                         ## sporadic server.
  
struct sched_param   Source Edit
Timeval {...}{.importc: "struct timeval", header: "<sys/select.h>", final, pure.} = object
  tv_sec*: Time                ## Seconds.
  tv_usec*: Suseconds          ## Microseconds.
  
struct timeval   Source Edit
TFdSet {...}{.importc: "fd_set", header: "<sys/select.h>", final, pure.} = object
  ソース 編集
Mcontext {...}{.importc: "mcontext_t", header: "<ucontext.h>", final, pure.} = object
  ソース 編集
Ucontext {...}{.importc: "ucontext_t", header: "<ucontext.h>", final, pure.} = object
  uc_link*: ptr Ucontext        ## Pointer to the context that is resumed
                      ## when this context returns.
  uc_sigmask*: Sigset          ## The set of signals that are blocked when this
                    ## context is active.
  uc_stack*: Stack             ## The stack used by this context.
  uc_mcontext*: Mcontext       ## A machine-specific representation of the saved
                       ## context.
  
ucontext_t   Source Edit
Tposix_spawnattr {...}{.importc: "posix_spawnattr_t", header: "<spawn.h>", final, pure.} = object
  ソース 編集
Tposix_spawn_file_actions {...}{.importc: "posix_spawn_file_actions_t",
                           header: "<spawn.h>", final, pure.} = object
  ソース 編集
SockLen {...}{.importc: "socklen_t", header: "<sys/socket.h>".} = cuint
  ソース 編集
TSa_Family {...}{.importc: "sa_family_t", header: "<sys/socket.h>".} = cushort
  ソース 編集
SockAddr {...}{.importc: "struct sockaddr", header: "<sys/socket.h>", pure, final.} = object
  sa_family*: TSa_Family       ## Address family.
  sa_data*: array[0 .. 255, char] ## Socket address (variable-length data).
  
struct sockaddr   Source Edit
Sockaddr_un {...}{.importc: "struct sockaddr_un", header: "<sys/un.h>", pure, final.} = object
  sun_family*: TSa_Family      ## Address family.
  sun_path*: array[0 .. 92 - 1, char] ## Socket path
  
struct sockaddr_un   Source Edit
Sockaddr_storage {...}{.importc: "struct sockaddr_storage", header: "<sys/socket.h>",
                  pure, final.} = object
  ss_family*: TSa_Family       ## Address family.
  
struct sockaddr_storage   Source Edit
Tif_nameindex {...}{.importc: "struct if_nameindex", final, pure, header: "<net/if.h>".} = object
  if_index*: cint              ## Numeric index of the interface.
  if_name*: cstring            ## Null-terminated name of the interface.
  
struct if_nameindex   Source Edit
IOVec {...}{.importc: "struct iovec", pure, final, header: "<sys/uio.h>".} = 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 Edit
Tmsghdr {...}{.importc: "struct msghdr", pure, final, header: "<sys/socket.h>".} = object
  msg_name*: pointer           ## Optional address.
  msg_namelen*: SockLen        ## Size of address.
  msg_iov*: ptr IOVec           ## 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 Edit
Tcmsghdr {...}{.importc: "struct cmsghdr", pure, final, header: "<sys/socket.h>".} = object
  cmsg_len*: SockLen           ## Data byte count, including the cmsghdr.
  cmsg_level*: cint            ## Originating protocol.
  cmsg_type*: cint             ## Protocol-specific type.
  
struct cmsghdr   Source Edit
TLinger {...}{.importc: "struct linger", pure, final, header: "<sys/socket.h>".} = object
  l_onoff*: cint               ## Indicates whether linger option is enabled.
  l_linger*: cint              ## Linger time, in seconds.
  
struct linger   Source Edit
InPort = uint16
  ソース 編集
InAddrScalar = uint32
  ソース 編集
InAddrT {...}{.importc: "in_addr_t", pure, final, header: "<netinet/in.h>".} = uint32
  ソース 編集
InAddr {...}{.importc: "struct in_addr", pure, final, header: "<netinet/in.h>".} = object
  s_addr*: InAddrScalar
struct in_addr   Source Edit
Sockaddr_in {...}{.importc: "struct sockaddr_in", pure, final, header: "<netinet/in.h>".} = object
  sin_family*: TSa_Family      ## AF_INET.
  sin_port*: InPort            ## Port number.
  sin_addr*: InAddr            ## IP address.
  
struct sockaddr_in   Source Edit
In6Addr {...}{.importc: "struct in6_addr", pure, final, header: "<netinet/in.h>".} = object
  s6_addr*: array[0 .. 15, char]
struct in6_addr   Source Edit
Sockaddr_in6 {...}{.importc: "struct sockaddr_in6", pure, final, header: "<netinet/in.h>".} = object
  sin6_family*: TSa_Family     ## AF_INET6.
  sin6_port*: InPort           ## Port number.
  sin6_flowinfo*: int32        ## IPv6 traffic class and flow information.
  sin6_addr*: In6Addr          ## IPv6 address.
  sin6_scope_id*: int32        ## Set of interfaces for a scope.
  
struct sockaddr_in6   Source Edit
Tipv6_mreq {...}{.importc: "struct ipv6_mreq", pure, final, header: "<netinet/in.h>".} = object
  ipv6mr_multiaddr*: In6Addr   ## IPv6 multicast address.
  ipv6mr_interface*: cint      ## Interface index.
  
struct ipv6_mreq   Source Edit
Hostent {...}{.importc: "struct hostent", pure, final, header: "<netdb.h>".} = 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 Edit
Tnetent {...}{.importc: "struct netent", pure, final, header: "<netdb.h>".} = 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 Edit
Protoent {...}{.importc: "struct protoent", pure, final, header: "<netdb.h>".} = 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 Edit
Servent {...}{.importc: "struct servent", pure, final, header: "<netdb.h>".} = 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 Edit
AddrInfo {...}{.importc: "struct addrinfo", pure, final, header: "<netdb.h>".} = 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 Edit
TPollfd {...}{.importc: "struct pollfd", pure, final, header: "<poll.h>".} = 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 Edit
Tnfds {...}{.importc: "nfds_t", header: "<poll.h>".} = cint
  ソース 編集
Rusage {...}{.importc: "struct rusage", header: "<sys/resource.h>", bycopy.} = object
  ru_utime*, ru_stime*: Timeval
  ru_maxrss*, ru_ixrss*, ru_idrss*, ru_isrss*, ru_minflt*, ru_majflt*, ru_nswap*,
  ru_inblock*, ru_oublock*, ru_msgsnd*, ru_msgrcv*, ru_nsignals*, ru_nvcsw*,
  ru_nivcsw*: clong
  ソース 編集
RLimit {...}{.importc: "struct rlimit", header: "<sys/resource.h>", pure, final.} = object
  rlim_cur*: int
  rlim_max*: int
  ソース 編集

変数

errno: cint
error variable   Source Edit
h_errno: cint
  ソース 編集
daylight: cint
  ソース 編集
timezone: int
  ソース 編集
AIO_ALLDONE: cint
  ソース 編集
AIO_CANCELED: cint
  ソース 編集
AIO_NOTCANCELED: cint
  ソース 編集
LIO_NOP: cint
  ソース 編集
LIO_NOWAIT: cint
  ソース 編集
LIO_READ: cint
  ソース 編集
LIO_WAIT: cint
  ソース 編集
LIO_WRITE: cint
  ソース 編集
RTLD_LAZY: cint
  ソース 編集
RTLD_NOW: cint
  ソース 編集
RTLD_GLOBAL: cint
  ソース 編集
RTLD_LOCAL: cint
  ソース 編集
E2BIG: cint
  ソース 編集
EACCES: cint
  ソース 編集
EADDRINUSE: cint
  ソース 編集
EADDRNOTAVAIL: cint
  ソース 編集
EAFNOSUPPORT: cint
  ソース 編集
EAGAIN: cint
  ソース 編集
EALREADY: cint
  ソース 編集
EBADF: cint
  ソース 編集
EBADMSG: cint
  ソース 編集
EBUSY: cint
  ソース 編集
ECANCELED: cint
  ソース 編集
ECHILD: cint
  ソース 編集
ECONNABORTED: cint
  ソース 編集
ECONNREFUSED: cint
  ソース 編集
ECONNRESET: cint
  ソース 編集
EDEADLK: cint
  ソース 編集
EDESTADDRREQ: cint
  ソース 編集
EDOM: cint
  ソース 編集
EDQUOT: cint
  ソース 編集
EEXIST: cint
  ソース 編集
EFAULT: cint
  ソース 編集
EFBIG: cint
  ソース 編集
EHOSTUNREACH: cint
  ソース 編集
EIDRM: cint
  ソース 編集
EILSEQ: cint
  ソース 編集
EINPROGRESS: cint
  ソース 編集
EINTR: cint
  ソース 編集
EINVAL: cint
  ソース 編集
EIO: cint
  ソース 編集
EISCONN: cint
  ソース 編集
EISDIR: cint
  ソース 編集
ELOOP: cint
  ソース 編集
EMFILE: cint
  ソース 編集
EMLINK: cint
  ソース 編集
EMSGSIZE: cint
  ソース 編集
EMULTIHOP: cint
  ソース 編集
ENAMETOOLONG: cint
  ソース 編集
ENETDOWN: cint
  ソース 編集
ENETRESET: cint
  ソース 編集
ENETUNREACH: cint
  ソース 編集
ENFILE: cint
  ソース 編集
ENOBUFS: cint
  ソース 編集
ENODATA: cint
  ソース 編集
ENODEV: cint
  ソース 編集
ENOENT: cint
  ソース 編集
ENOEXEC: cint
  ソース 編集
ENOLCK: cint
  ソース 編集
ENOLINK: cint
  ソース 編集
ENOMEM: cint
  ソース 編集
ENOMSG: cint
  ソース 編集
ENOPROTOOPT: cint
  ソース 編集
ENOSPC: cint
  ソース 編集
ENOSR: cint
  ソース 編集
ENOSTR: cint
  ソース 編集
ENOSYS: cint
  ソース 編集
ENOTCONN: cint
  ソース 編集
ENOTDIR: cint
  ソース 編集
ENOTEMPTY: cint
  ソース 編集
ENOTSOCK: cint
  ソース 編集
ENOTSUP: cint
  ソース 編集
ENOTTY: cint
  ソース 編集
ENXIO: cint
  ソース 編集
EOPNOTSUPP: cint
  ソース 編集
EOVERFLOW: cint
  ソース 編集
EPERM: cint
  ソース 編集
EPIPE: cint
  ソース 編集
EPROTO: cint
  ソース 編集
EPROTONOSUPPORT: cint
  ソース 編集
EPROTOTYPE: cint
  ソース 編集
ERANGE: cint
  ソース 編集
EROFS: cint
  ソース 編集
ESPIPE: cint
  ソース 編集
ESRCH: cint
  ソース 編集
ESTALE: cint
  ソース 編集
ETIME: cint
  ソース 編集
ETIMEDOUT: cint
  ソース 編集
ETXTBSY: cint
  ソース 編集
EWOULDBLOCK: cint
  ソース 編集
EXDEV: cint
  ソース 編集
F_DUPFD: cint
  ソース 編集
F_GETFD: cint
  ソース 編集
F_SETFD: cint
  ソース 編集
F_GETFL: cint
  ソース 編集
F_SETFL: cint
  ソース 編集
F_GETLK: cint
  ソース 編集
F_SETLK: cint
  ソース 編集
F_SETLKW: cint
  ソース 編集
F_GETOWN: cint
  ソース 編集
F_SETOWN: cint
  ソース 編集
FD_CLOEXEC: cint
  ソース 編集
F_RDLCK: cint
  ソース 編集
F_UNLCK: cint
  ソース 編集
F_WRLCK: cint
  ソース 編集
O_CREAT: cint
  ソース 編集
O_EXCL: cint
  ソース 編集
O_NOCTTY: cint
  ソース 編集
O_TRUNC: cint
  ソース 編集
O_APPEND: cint
  ソース 編集
O_DSYNC: cint
  ソース 編集
O_NONBLOCK: cint
  ソース 編集
O_RSYNC: cint
  ソース 編集
O_SYNC: cint
  ソース 編集
O_ACCMODE: cint
  ソース 編集
O_RDONLY: cint
  ソース 編集
O_RDWR: cint
  ソース 編集
O_WRONLY: cint
  ソース 編集
POSIX_FADV_NORMAL: cint
  ソース 編集
POSIX_FADV_SEQUENTIAL: cint
  ソース 編集
POSIX_FADV_RANDOM: cint
  ソース 編集
POSIX_FADV_WILLNEED: cint
  ソース 編集
POSIX_FADV_DONTNEED: cint
  ソース 編集
POSIX_FADV_NOREUSE: cint
  ソース 編集
FE_DIVBYZERO: cint
  ソース 編集
FE_INEXACT: cint
  ソース 編集
FE_INVALID: cint
  ソース 編集
FE_OVERFLOW: cint
  ソース 編集
FE_UNDERFLOW: cint
  ソース 編集
FE_ALL_EXCEPT: cint
  ソース 編集
FE_DOWNWARD: cint
  ソース 編集
FE_TONEAREST: cint
  ソース 編集
FE_TOWARDZERO: cint
  ソース 編集
FE_UPWARD: cint
  ソース 編集
FE_DFL_ENV: cint
  ソース 編集
MM_HARD: cint
  ソース 編集
MM_SOFT: cint
  ソース 編集
MM_FIRM: cint
  ソース 編集
MM_APPL: cint
  ソース 編集
MM_UTIL: cint
  ソース 編集
MM_OPSYS: cint
  ソース 編集
MM_RECOVER: cint
  ソース 編集
MM_NRECOV: cint
  ソース 編集
MM_HALT: cint
  ソース 編集
MM_ERROR: cint
  ソース 編集
MM_WARNING: cint
  ソース 編集
MM_INFO: cint
  ソース 編集
MM_NOSEV: cint
  ソース 編集
MM_PRINT: cint
  ソース 編集
MM_CONSOLE: cint
  ソース 編集
MM_OK: cint
  ソース 編集
MM_NOTOK: cint
  ソース 編集
MM_NOMSG: cint
  ソース 編集
MM_NOCON: cint
  ソース 編集
FNM_NOMATCH: cint
  ソース 編集
FNM_PATHNAME: cint
  ソース 編集
FNM_PERIOD: cint
  ソース 編集
FNM_NOESCAPE: cint
  ソース 編集
FNM_NOSYS: cint
  ソース 編集
FTW_F: cint
  ソース 編集
FTW_D: cint
  ソース 編集
FTW_DNR: cint
  ソース 編集
FTW_DP: cint
  ソース 編集
FTW_NS: cint
  ソース 編集
FTW_SL: cint
  ソース 編集
FTW_SLN: cint
  ソース 編集
FTW_PHYS: cint
  ソース 編集
FTW_MOUNT: cint
  ソース 編集
FTW_DEPTH: cint
  ソース 編集
FTW_CHDIR: cint
  ソース 編集
GLOB_APPEND: cint
  ソース 編集
GLOB_DOOFFS: cint
  ソース 編集
GLOB_ERR: cint
  ソース 編集
GLOB_MARK: cint
  ソース 編集
GLOB_NOCHECK: cint
  ソース 編集
GLOB_NOESCAPE: cint
  ソース 編集
GLOB_NOSORT: cint
  ソース 編集
GLOB_ABORTED: cint
  ソース 編集
GLOB_NOMATCH: cint
  ソース 編集
GLOB_NOSPACE: cint
  ソース 編集
GLOB_NOSYS: cint
  ソース 編集
CODESET: cint
  ソース 編集
D_T_FMT: cint
  ソース 編集
D_FMT: cint
  ソース 編集
T_FMT: cint
  ソース 編集
T_FMT_AMPM: cint
  ソース 編集
AM_STR: cint
  ソース 編集
PM_STR: cint
  ソース 編集
DAY_1: cint
  ソース 編集
DAY_2: cint
  ソース 編集
DAY_3: cint
  ソース 編集
DAY_4: cint
  ソース 編集
DAY_5: cint
  ソース 編集
DAY_6: cint
  ソース 編集
DAY_7: cint
  ソース 編集
ABDAY_1: cint
  ソース 編集
ABDAY_2: cint
  ソース 編集
ABDAY_3: cint
  ソース 編集
ABDAY_4: cint
  ソース 編集
ABDAY_5: cint
  ソース 編集
ABDAY_6: cint
  ソース 編集
ABDAY_7: cint
  ソース 編集
MON_1: cint
  ソース 編集
MON_2: cint
  ソース 編集
MON_3: cint
  ソース 編集
MON_4: cint
  ソース 編集
MON_5: cint
  ソース 編集
MON_6: cint
  ソース 編集
MON_7: cint
  ソース 編集
MON_8: cint
  ソース 編集
MON_9: cint
  ソース 編集
MON_10: cint
  ソース 編集
MON_11: cint
  ソース 編集
MON_12: cint
  ソース 編集
ABMON_1: cint
  ソース 編集
ABMON_2: cint
  ソース 編集
ABMON_3: cint
  ソース 編集
ABMON_4: cint
  ソース 編集
ABMON_5: cint
  ソース 編集
ABMON_6: cint
  ソース 編集
ABMON_7: cint
  ソース 編集
ABMON_8: cint
  ソース 編集
ABMON_9: cint
  ソース 編集
ABMON_10: cint
  ソース 編集
ABMON_11: cint
  ソース 編集
ABMON_12: cint
  ソース 編集
ERA: cint
  ソース 編集
ERA_D_FMT: cint
  ソース 編集
ERA_D_T_FMT: cint
  ソース 編集
ERA_T_FMT: cint
  ソース 編集
ALT_DIGITS: cint
  ソース 編集
RADIXCHAR: cint
  ソース 編集
THOUSEP: cint
  ソース 編集
YESEXPR: cint
  ソース 編集
NOEXPR: cint
  ソース 編集
CRNCYSTR: cint
  ソース 編集
LC_ALL: cint
  ソース 編集
LC_COLLATE: cint
  ソース 編集
LC_CTYPE: cint
  ソース 編集
LC_MESSAGES: cint
  ソース 編集
LC_MONETARY: cint
  ソース 編集
LC_NUMERIC: cint
  ソース 編集
LC_TIME: cint
  ソース 編集
IPPORT_RESERVED: cint
  ソース 編集
HOST_NOT_FOUND: cint
  ソース 編集
NO_DATA: cint
  ソース 編集
NO_RECOVERY: cint
  ソース 編集
TRY_AGAIN: cint
  ソース 編集
AI_PASSIVE: cint
  ソース 編集
AI_CANONNAME: cint
  ソース 編集
AI_NUMERICHOST: cint
  ソース 編集
AI_NUMERICSERV: cint
  ソース 編集
AI_V4MAPPED: cint
  ソース 編集
AI_ALL: cint
  ソース 編集
AI_ADDRCONFIG: cint
  ソース 編集
NI_NOFQDN: cint
  ソース 編集
NI_NUMERICHOST: cint
  ソース 編集
NI_NAMEREQD: cint
  ソース 編集
NI_NUMERICSERV: cint
  ソース 編集
NI_NUMERICSCOPE: cint
  ソース 編集
NI_DGRAM: cint
  ソース 編集
EAI_AGAIN: cint
  ソース 編集
EAI_BADFLAGS: cint
  ソース 編集
EAI_FAIL: cint
  ソース 編集
EAI_FAMILY: cint
  ソース 編集
EAI_MEMORY: cint
  ソース 編集
EAI_NONAME: cint
  ソース 編集
EAI_SERVICE: cint
  ソース 編集
EAI_SOCKTYPE: cint
  ソース 編集
EAI_SYSTEM: cint
  ソース 編集
EAI_OVERFLOW: cint
  ソース 編集
IF_NAMESIZE: cint
  ソース 編集
IPPROTO_IP: cint
  ソース 編集
IPPROTO_IPV6: cint
  ソース 編集
IPPROTO_ICMP: cint
  ソース 編集
IPPROTO_ICMPV6: cint
  ソース 編集
IPPROTO_RAW: cint
  ソース 編集
IPPROTO_TCP: cint
  ソース 編集
IPPROTO_UDP: cint
  ソース 編集
INADDR_ANY: InAddrScalar
  ソース 編集
INADDR_LOOPBACK: InAddrScalar
  ソース 編集
INADDR_BROADCAST: InAddrScalar
  ソース 編集
INET_ADDRSTRLEN: cint
  ソース 編集
INET6_ADDRSTRLEN: cint
  ソース 編集
IPV6_JOIN_GROUP: cint
  ソース 編集
IPV6_LEAVE_GROUP: cint
  ソース 編集
IPV6_MULTICAST_HOPS: cint
  ソース 編集
IPV6_MULTICAST_IF: cint
  ソース 編集
IPV6_MULTICAST_LOOP: cint
  ソース 編集
IPV6_UNICAST_HOPS: cint
  ソース 編集
IPV6_V6ONLY: cint
  ソース 編集
TCP_NODELAY: cint
  ソース 編集
NL_SETD: cint
  ソース 編集
NL_CAT_LOCALE: cint
  ソース 編集
POLLIN: cshort
  ソース 編集
POLLRDNORM: cshort
  ソース 編集
POLLRDBAND: cshort
  ソース 編集
POLLPRI: cshort
  ソース 編集
POLLOUT: cshort
  ソース 編集
POLLWRNORM: cshort
  ソース 編集
POLLWRBAND: cshort
  ソース 編集
POLLERR: cshort
  ソース 編集
POLLHUP: cshort
  ソース 編集
POLLNVAL: cshort
  ソース 編集
PTHREAD_BARRIER_SERIAL_THREAD: cint
  ソース 編集
PTHREAD_CANCEL_ASYNCHRONOUS: cint
  ソース 編集
PTHREAD_CANCEL_ENABLE: cint
  ソース 編集
PTHREAD_CANCEL_DEFERRED: cint
  ソース 編集
PTHREAD_CANCEL_DISABLE: cint
  ソース 編集
PTHREAD_CREATE_DETACHED: cint
  ソース 編集
PTHREAD_CREATE_JOINABLE: cint
  ソース 編集
PTHREAD_EXPLICIT_SCHED: cint
  ソース 編集
PTHREAD_INHERIT_SCHED: cint
  ソース 編集
PTHREAD_MUTEX_DEFAULT: cint
  ソース 編集
PTHREAD_MUTEX_ERRORCHECK: cint
  ソース 編集
PTHREAD_MUTEX_NORMAL: cint
  ソース 編集
PTHREAD_MUTEX_RECURSIVE: cint
  ソース 編集
PTHREAD_PRIO_INHERIT: cint
  ソース 編集
PTHREAD_PRIO_NONE: cint
  ソース 編集
PTHREAD_PRIO_PROTECT: cint
  ソース 編集
PTHREAD_PROCESS_SHARED: cint
  ソース 編集
PTHREAD_PROCESS_PRIVATE: cint
  ソース 編集
PTHREAD_SCOPE_PROCESS: cint
  ソース 編集
PTHREAD_SCOPE_SYSTEM: cint
  ソース 編集
SCHED_FIFO: cint
  ソース 編集
SCHED_RR: cint
  ソース 編集
SCHED_SPORADIC: cint
  ソース 編集
SCHED_OTHER: cint
  ソース 編集
SEM_FAILED: pointer
  ソース 編集
SIGEV_NONE: cint
  ソース 編集
SIGEV_SIGNAL: cint
  ソース 編集
SIGEV_THREAD: cint
  ソース 編集
SIGABRT: cint
  ソース 編集
SIGALRM: cint
  ソース 編集
SIGBUS: cint
  ソース 編集
SIGCHLD: cint
  ソース 編集
SIGCONT: cint
  ソース 編集
SIGFPE: cint
  ソース 編集
SIGHUP: cint
  ソース 編集
SIGILL: cint
  ソース 編集
SIGINT: cint
  ソース 編集
SIGKILL: cint
  ソース 編集
SIGPIPE: cint
  ソース 編集
SIGQUIT: cint
  ソース 編集
SIGSEGV: cint
  ソース 編集
SIGSTOP: cint
  ソース 編集
SIGTERM: cint
  ソース 編集
SIGTSTP: cint
  ソース 編集
SIGTTIN: cint
  ソース 編集
SIGTTOU: cint
  ソース 編集
SIGUSR1: cint
  ソース 編集
SIGUSR2: cint
  ソース 編集
SIGPOLL: cint
  ソース 編集
SIGPROF: cint
  ソース 編集
SIGSYS: cint
  ソース 編集
SIGTRAP: cint
  ソース 編集
SIGURG: cint
  ソース 編集
SIGVTALRM: cint
  ソース 編集
SIGXCPU: cint
  ソース 編集
SIGXFSZ: cint
  ソース 編集
SA_NOCLDSTOP: cint
  ソース 編集
SIG_BLOCK: cint
  ソース 編集
SIG_UNBLOCK: cint
  ソース 編集
SIG_SETMASK: cint
  ソース 編集
SA_ONSTACK: cint
  ソース 編集
SA_RESETHAND: cint
  ソース 編集
SA_RESTART: cint
  ソース 編集
SA_SIGINFO: cint
  ソース 編集
SA_NOCLDWAIT: cint
  ソース 編集
SA_NODEFER: cint
  ソース 編集
SS_ONSTACK: cint
  ソース 編集
SS_DISABLE: cint
  ソース 編集
MINSIGSTKSZ: cint
  ソース 編集
SIGSTKSZ: cint
  ソース 編集
SIG_HOLD: Sighandler
  ソース 編集
SIG_DFL: Sighandler
  ソース 編集
SIG_ERR: Sighandler
  ソース 編集
SIG_IGN: Sighandler
  ソース 編集
IPC_CREAT: cint
  ソース 編集
IPC_EXCL: cint
  ソース 編集
IPC_NOWAIT: cint
  ソース 編集
IPC_PRIVATE: cint
  ソース 編集
IPC_RMID: cint
  ソース 編集
IPC_SET: cint
  ソース 編集
IPC_STAT: cint
  ソース 編集
PROT_READ: cint
  ソース 編集
PROT_WRITE: cint
  ソース 編集
PROT_EXEC: cint
  ソース 編集
PROT_NONE: cint
  ソース 編集
MAP_ANONYMOUS: cint
  ソース 編集
MAP_FIXED_NOREPLACE: cint
  ソース 編集
MAP_NORESERVE: cint
  ソース 編集
MAP_SHARED: cint
  ソース 編集
MAP_PRIVATE: cint
  ソース 編集
MAP_FIXED: cint
  ソース 編集
MS_ASYNC: cint
  ソース 編集
MS_SYNC: cint
  ソース 編集
MS_INVALIDATE: cint
  ソース 編集
MCL_CURRENT: cint
  ソース 編集
MCL_FUTURE: cint
  ソース 編集
MAP_FAILED: pointer
  ソース 編集
POSIX_MADV_NORMAL: cint
  ソース 編集
POSIX_MADV_SEQUENTIAL: cint
  ソース 編集
POSIX_MADV_RANDOM: cint
  ソース 編集
POSIX_MADV_WILLNEED: cint
  ソース 編集
POSIX_MADV_DONTNEED: cint
  ソース 編集
POSIX_TYPED_MEM_ALLOCATE: cint
  ソース 編集
POSIX_TYPED_MEM_ALLOCATE_CONTIG: cint
  ソース 編集
POSIX_TYPED_MEM_MAP_ALLOCATABLE: cint
  ソース 編集
RLIMIT_NOFILE: cint
  ソース 編集
FD_SETSIZE: cint
  ソース 編集
MSG_CTRUNC: cint
  ソース 編集
MSG_DONTROUTE: cint
  ソース 編集
MSG_EOR: cint
  ソース 編集
MSG_OOB: cint
  ソース 編集
SCM_RIGHTS: cint
  ソース 編集
SO_ACCEPTCONN: cint
  ソース 編集
SO_BROADCAST: cint
  ソース 編集
SO_DEBUG: cint
  ソース 編集
SO_DONTROUTE: cint
  ソース 編集
SO_ERROR: cint
  ソース 編集
SO_KEEPALIVE: cint
  ソース 編集
SO_LINGER: cint
  ソース 編集
SO_OOBINLINE: cint
  ソース 編集
SO_RCVBUF: cint
  ソース 編集
SO_RCVLOWAT: cint
  ソース 編集
SO_RCVTIMEO: cint
  ソース 編集
SO_REUSEADDR: cint
  ソース 編集
SO_SNDBUF: cint
  ソース 編集
SO_SNDLOWAT: cint
  ソース 編集
SO_SNDTIMEO: cint
  ソース 編集
SO_TYPE: cint
  ソース 編集
SOCK_DGRAM: cint
  ソース 編集
SOCK_RAW: cint
  ソース 編集
SOCK_SEQPACKET: cint
  ソース 編集
SOCK_STREAM: cint
  ソース 編集
SOL_SOCKET: cint
  ソース 編集
SOMAXCONN: cint
  ソース 編集
MSG_PEEK: cint
  ソース 編集
MSG_TRUNC: cint
  ソース 編集
MSG_WAITALL: cint
  ソース 編集
AF_INET: cint
  ソース 編集
AF_INET6: cint
  ソース 編集
AF_UNIX: cint
  ソース 編集
AF_UNSPEC: cint
  ソース 編集
SHUT_RD: cint
  ソース 編集
SHUT_RDWR: cint
  ソース 編集
SHUT_WR: cint
  ソース 編集
S_IFBLK: cint
  ソース 編集
S_IFCHR: cint
  ソース 編集
S_IFDIR: cint
  ソース 編集
S_IFIFO: cint
  ソース 編集
S_IFLNK: cint
  ソース 編集
S_IFMT: cint
  ソース 編集
S_IFREG: cint
  ソース 編集
S_IFSOCK: cint
  ソース 編集
S_IRGRP: cint
  ソース 編集
S_IROTH: cint
  ソース 編集
S_IRUSR: cint
  ソース 編集
S_IRWXG: cint
  ソース 編集
S_IRWXO: cint
  ソース 編集
S_IRWXU: cint
  ソース 編集
S_ISGID: cint
  ソース 編集
S_ISUID: cint
  ソース 編集
S_ISVTX: cint
  ソース 編集
S_IWGRP: cint
  ソース 編集
S_IWOTH: cint
  ソース 編集
S_IWUSR: cint
  ソース 編集
S_IXGRP: cint
  ソース 編集
S_IXOTH: cint
  ソース 編集
S_IXUSR: cint
  ソース 編集
ST_RDONLY: cint
  ソース 編集
ST_NOSUID: cint
  ソース 編集
WNOHANG: cint
  ソース 編集
WUNTRACED: cint
  ソース 編集
WEXITED: cint
  ソース 編集
WSTOPPED: cint
  ソース 編集
WCONTINUED: cint
  ソース 編集
WNOWAIT: cint
  ソース 編集
P_ALL: cint
  ソース 編集
P_PID: cint
  ソース 編集
P_PGID: cint
  ソース 編集
POSIX_SPAWN_RESETIDS: cint
  ソース 編集
POSIX_SPAWN_SETPGROUP: cint
  ソース 編集
POSIX_SPAWN_SETSCHEDPARAM: cint
  ソース 編集
POSIX_SPAWN_SETSCHEDULER: cint
  ソース 編集
POSIX_SPAWN_SETSIGDEF: cint
  ソース 編集
POSIX_SPAWN_SETSIGMASK: cint
  ソース 編集
IOFBF: cint
  ソース 編集
IONBF: cint
  ソース 編集
CLOCKS_PER_SEC: clong
  ソース 編集
CLOCK_PROCESS_CPUTIME_ID: cint
  ソース 編集
CLOCK_THREAD_CPUTIME_ID: cint
  ソース 編集
CLOCK_REALTIME: cint
  ソース 編集
TIMER_ABSTIME: cint
  ソース 編集
CLOCK_MONOTONIC: cint
  ソース 編集
POSIX_ASYNC_IO: cint
  ソース 編集
POSIX_PRIO_IO: cint
  ソース 編集
POSIX_SYNC_IO: cint
  ソース 編集
F_OK: cint
  ソース 編集
R_OK: cint
  ソース 編集
W_OK: cint
  ソース 編集
X_OK: cint
  ソース 編集
CS_PATH: cint
  ソース 編集
CS_POSIX_V6_ILP32_OFF32_CFLAGS: cint
  ソース 編集
CS_POSIX_V6_ILP32_OFF32_LDFLAGS: cint
  ソース 編集
CS_POSIX_V6_ILP32_OFF32_LIBS: cint
  ソース 編集
CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: cint
  ソース 編集
CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: cint
  ソース 編集
CS_POSIX_V6_ILP32_OFFBIG_LIBS: cint
  ソース 編集
CS_POSIX_V6_LP64_OFF64_CFLAGS: cint
  ソース 編集
CS_POSIX_V6_LP64_OFF64_LDFLAGS: cint
  ソース 編集
CS_POSIX_V6_LP64_OFF64_LIBS: cint
  ソース 編集
CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: cint
  ソース 編集
CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: cint
  ソース 編集
CS_POSIX_V6_LPBIG_OFFBIG_LIBS: cint
  ソース 編集
CS_POSIX_V6_WIDTH_RESTRICTED_ENVS: cint
  ソース 編集
F_LOCK: cint
  ソース 編集
F_TEST: cint
  ソース 編集
F_TLOCK: cint
  ソース 編集
F_ULOCK: cint
  ソース 編集
PC_2_SYMLINKS: cint
  ソース 編集
PC_ALLOC_SIZE_MIN: cint
  ソース 編集
PC_ASYNC_IO: cint
  ソース 編集
PC_CHOWN_RESTRICTED: cint
  ソース 編集
PC_FILESIZEBITS: cint
  ソース 編集
PC_LINK_MAX: cint
  ソース 編集
PC_MAX_CANON: cint
  ソース 編集
PC_MAX_INPUT: cint
  ソース 編集
PC_NAME_MAX: cint
  ソース 編集
PC_NO_TRUNC: cint
  ソース 編集
PC_PATH_MAX: cint
  ソース 編集
PC_PIPE_BUF: cint
  ソース 編集
PC_PRIO_IO: cint
  ソース 編集
PC_REC_INCR_XFER_SIZE: cint
  ソース 編集
PC_REC_MIN_XFER_SIZE: cint
  ソース 編集
PC_REC_XFER_ALIGN: cint
  ソース 編集
PC_SYMLINK_MAX: cint
  ソース 編集
PC_SYNC_IO: cint
  ソース 編集
PC_VDISABLE: cint
  ソース 編集
SC_2_C_BIND: cint
  ソース 編集
SC_2_C_DEV: cint
  ソース 編集
SC_2_CHAR_TERM: cint
  ソース 編集
SC_2_FORT_DEV: cint
  ソース 編集
SC_2_FORT_RUN: cint
  ソース 編集
SC_2_LOCALEDEF: cint
  ソース 編集
SC_2_PBS: cint
  ソース 編集
SC_2_PBS_ACCOUNTING: cint
  ソース 編集
SC_2_PBS_CHECKPOINT: cint
  ソース 編集
SC_2_PBS_LOCATE: cint
  ソース 編集
SC_2_PBS_MESSAGE: cint
  ソース 編集
SC_2_PBS_TRACK: cint
  ソース 編集
SC_2_SW_DEV: cint
  ソース 編集
SC_2_UPE: cint
  ソース 編集
SC_2_VERSION: cint
  ソース 編集
SC_ADVISORY_INFO: cint
  ソース 編集
SC_AIO_LISTIO_MAX: cint
  ソース 編集
SC_AIO_MAX: cint
  ソース 編集
SC_AIO_PRIO_DELTA_MAX: cint
  ソース 編集
SC_ARG_MAX: cint
  ソース 編集
SC_ASYNCHRONOUS_IO: cint
  ソース 編集
SC_ATEXIT_MAX: cint
  ソース 編集
SC_BARRIERS: cint
  ソース 編集
SC_BC_BASE_MAX: cint
  ソース 編集
SC_BC_DIM_MAX: cint
  ソース 編集
SC_BC_SCALE_MAX: cint
  ソース 編集
SC_BC_STRING_MAX: cint
  ソース 編集
SC_CHILD_MAX: cint
  ソース 編集
SC_CLK_TCK: cint
  ソース 編集
SC_CLOCK_SELECTION: cint
  ソース 編集
SC_COLL_WEIGHTS_MAX: cint
  ソース 編集
SC_CPUTIME: cint
  ソース 編集
SC_DELAYTIMER_MAX: cint
  ソース 編集
SC_EXPR_NEST_MAX: cint
  ソース 編集
SC_FSYNC: cint
  ソース 編集
SC_GETGR_R_SIZE_MAX: cint
  ソース 編集
SC_GETPW_R_SIZE_MAX: cint
  ソース 編集
SC_HOST_NAME_MAX: cint
  ソース 編集
SC_IOV_MAX: cint
  ソース 編集
SC_IPV6: cint
  ソース 編集
SC_JOB_CONTROL: cint
  ソース 編集
SC_LINE_MAX: cint
  ソース 編集
SC_LOGIN_NAME_MAX: cint
  ソース 編集
SC_MAPPED_FILES: cint
  ソース 編集
SC_MEMLOCK: cint
  ソース 編集
SC_MEMLOCK_RANGE: cint
  ソース 編集
SC_MEMORY_PROTECTION: cint
  ソース 編集
SC_MESSAGE_PASSING: cint
  ソース 編集
SC_MONOTONIC_CLOCK: cint
  ソース 編集
SC_MQ_OPEN_MAX: cint
  ソース 編集
SC_MQ_PRIO_MAX: cint
  ソース 編集
SC_NGROUPS_MAX: cint
  ソース 編集
SC_OPEN_MAX: cint
  ソース 編集
SC_PAGESIZE: cint
  ソース 編集
SC_PRIORITIZED_IO: cint
  ソース 編集
SC_PRIORITY_SCHEDULING: cint
  ソース 編集
SC_RAW_SOCKETS: cint
  ソース 編集
SC_RE_DUP_MAX: cint
  ソース 編集
SC_READER_WRITER_LOCKS: cint
  ソース 編集
SC_REALTIME_SIGNALS: cint
  ソース 編集
SC_REGEXP: cint
  ソース 編集
SC_RTSIG_MAX: cint
  ソース 編集
SC_SAVED_IDS: cint
  ソース 編集
SC_SEM_NSEMS_MAX: cint
  ソース 編集
SC_SEM_VALUE_MAX: cint
  ソース 編集
SC_SEMAPHORES: cint
  ソース 編集
SC_SHARED_MEMORY_OBJECTS: cint
  ソース 編集
SC_SHELL: cint
  ソース 編集
SC_SIGQUEUE_MAX: cint
  ソース 編集
SC_SPAWN: cint
  ソース 編集
SC_SPIN_LOCKS: cint
  ソース 編集
SC_SPORADIC_SERVER: cint
  ソース 編集
SC_SS_REPL_MAX: cint
  ソース 編集
SC_STREAM_MAX: cint
  ソース 編集
SC_SYMLOOP_MAX: cint
  ソース 編集
SC_SYNCHRONIZED_IO: cint
  ソース 編集
SC_THREAD_ATTR_STACKADDR: cint
  ソース 編集
SC_THREAD_ATTR_STACKSIZE: cint
  ソース 編集
SC_THREAD_CPUTIME: cint
  ソース 編集
SC_THREAD_DESTRUCTOR_ITERATIONS: cint
  ソース 編集
SC_THREAD_KEYS_MAX: cint
  ソース 編集
SC_THREAD_PRIO_INHERIT: cint
  ソース 編集
SC_THREAD_PRIO_PROTECT: cint
  ソース 編集
SC_THREAD_PRIORITY_SCHEDULING: cint
  ソース 編集
SC_THREAD_PROCESS_SHARED: cint
  ソース 編集
SC_THREAD_SAFE_FUNCTIONS: cint
  ソース 編集
SC_THREAD_SPORADIC_SERVER: cint
  ソース 編集
SC_THREAD_STACK_MIN: cint
  ソース 編集
SC_THREAD_THREADS_MAX: cint
  ソース 編集
SC_THREADS: cint
  ソース 編集
SC_TIMEOUTS: cint
  ソース 編集
SC_TIMER_MAX: cint
  ソース 編集
SC_TIMERS: cint
  ソース 編集
SC_TRACE: cint
  ソース 編集
SC_TRACE_EVENT_FILTER: cint
  ソース 編集
SC_TRACE_EVENT_NAME_MAX: cint
  ソース 編集
SC_TRACE_INHERIT: cint
  ソース 編集
SC_TRACE_LOG: cint
  ソース 編集
SC_TRACE_NAME_MAX: cint
  ソース 編集
SC_TRACE_SYS_MAX: cint
  ソース 編集
SC_TRACE_USER_EVENT_MAX: cint
  ソース 編集
SC_TTY_NAME_MAX: cint
  ソース 編集
SC_TYPED_MEMORY_OBJECTS: cint
  ソース 編集
SC_TZNAME_MAX: cint
  ソース 編集
SC_V6_ILP32_OFF32: cint
  ソース 編集
SC_V6_ILP32_OFFBIG: cint
  ソース 編集
SC_V6_LP64_OFF64: cint
  ソース 編集
SC_V6_LPBIG_OFFBIG: cint
  ソース 編集
SC_VERSION: cint
  ソース 編集
SC_XBS5_ILP32_OFF32: cint
  ソース 編集
SC_XBS5_ILP32_OFFBIG: cint
  ソース 編集
SC_XBS5_LP64_OFF64: cint
  ソース 編集
SC_XBS5_LPBIG_OFFBIG: cint
  ソース 編集
SC_XOPEN_CRYPT: cint
  ソース 編集
SC_XOPEN_ENH_I18N: cint
  ソース 編集
SC_XOPEN_LEGACY: cint
  ソース 編集
SC_XOPEN_REALTIME: cint
  ソース 編集
SC_XOPEN_REALTIME_THREADS: cint
  ソース 編集
SC_XOPEN_SHM: cint
  ソース 編集
SC_XOPEN_STREAMS: cint
  ソース 編集
SC_XOPEN_UNIX: cint
  ソース 編集
SC_XOPEN_VERSION: cint
  ソース 編集
SC_NPROCESSORS_ONLN: cint
  ソース 編集
SEEK_SET: cint
  ソース 編集
SEEK_CUR: cint
  ソース 編集
SEEK_END: cint
  ソース 編集
MAP_POPULATE: cint = 0
  ソース 編集
MSG_NOSIGNAL: cint
No SIGPIPE generated when an attempt to send is made on a stream-oriented socket that is no longer connected.   ソース 編集
in6addr_any: In6Addr
  ソース 編集
in6addr_loopback: In6Addr
  ソース 編集

定数

MM_NULLLBL = nil
  ソース 編集
MM_NULLSEV = 0
  ソース 編集
MM_NULLMC = 0
  ソース 編集
MM_NULLTXT = nil
  ソース 編集
MM_NULLACT = nil
  ソース 編集
MM_NULLTAG = nil
  ソース 編集
STDERR_FILENO = 2
File number of stderr;   Source Edit
STDIN_FILENO = 0
File number of stdin;   Source Edit
STDOUT_FILENO = 1
File number of stdout;   Source Edit
DT_UNKNOWN = 0
Unknown file type.   ソース 編集
DT_FIFO = 1
Named pipe, or FIFO.   ソース 編集
DT_CHR = 2
Character device.   ソース 編集
DT_DIR = 4
Directory.   ソース 編集
DT_BLK = 6
Block device.   ソース 編集
DT_REG = 8
Regular file.   ソース 編集
DT_LNK = 10
Symbolic link.   ソース 編集
DT_SOCK = 12
UNIX domain socket.   ソース 編集
DT_WHT = 14
  ソース 編集
StatHasNanoseconds = false
Boolean flag that indicates if the system supports nanosecond time resolution in the fields of Stat. Note that the nanosecond based fields (Stat.st_atim, Stat.st_mtim and Stat.st_ctim) can be accessed without checking this flag, because this module defines fallback procs when they are not available.   Source Edit
Sockaddr_un_path_length = 92
  ソース 編集
SO_REUSEPORT = 512'i32
Multiple binding: load balancing on incoming TCP connections or UDP packets. (Requires Linux kernel > 3.9)   Source Edit
POSIX_SPAWN_USEVFORK = 0'i32
  ソース 編集
RUSAGE_SELF = 0'i32
  ソース 編集
RUSAGE_CHILDREN = -1'i32
  ソース 編集
RUSAGE_THREAD = 1'i32
  ソース 編集
INVALID_SOCKET = -1'i32
  ソース 編集

プロシージャ

proc WEXITSTATUS(s: cint): cint {...}{.importc, header: "<sys/wait.h>".}
Exit code, iff WIFEXITED(s)   Source Edit
proc WTERMSIG(s: cint): cint {...}{.importc, header: "<sys/wait.h>".}
Termination signal, iff WIFSIGNALED(s)   Source Edit
proc WSTOPSIG(s: cint): cint {...}{.importc, header: "<sys/wait.h>".}
Stop signal, iff WIFSTOPPED(s)   Source Edit
proc WIFEXITED(s: cint): bool {...}{.importc, header: "<sys/wait.h>".}
True if child exited normally.   ソース 編集
proc WIFSIGNALED(s: cint): bool {...}{.importc, header: "<sys/wait.h>".}
True if child exited due to uncaught signal.   ソース 編集
proc WIFSTOPPED(s: cint): bool {...}{.importc, header: "<sys/wait.h>".}
True if child is currently stopped.   ソース 編集
proc WIFCONTINUED(s: cint): bool {...}{.importc, header: "<sys/wait.h>".}
True if child has been continued.   ソース 編集
proc st_atim(s: Stat): Timespec {...}{.inline, raises: [], tags: [].}
Nanosecond-granularity time of last access.   ソース 編集
proc st_mtim(s: Stat): Timespec {...}{.inline, raises: [], tags: [].}
Nanosecond-granularity time of last data modification.   ソース 編集
proc st_ctim(s: Stat): Timespec {...}{.inline, raises: [], tags: [].}
Nanosecond-granularity time of last data modification.   ソース 編集
proc htonl(a1: uint32): uint32 {...}{.importc, header: "<arpa/inet.h>".}
  ソース 編集
proc htons(a1: uint16): uint16 {...}{.importc, header: "<arpa/inet.h>".}
  ソース 編集
proc ntohl(a1: uint32): uint32 {...}{.importc, header: "<arpa/inet.h>".}
  ソース 編集
proc ntohs(a1: uint16): uint16 {...}{.importc, header: "<arpa/inet.h>".}
  ソース 編集
proc inet_addr(a1: cstring): InAddrT {...}{.importc, header: "<arpa/inet.h>".}
  ソース 編集
proc inet_ntoa(a1: InAddr): cstring {...}{.importc, header: "<arpa/inet.h>".}
  ソース 編集
proc inet_ntop(a1: cint; a2: pointer; a3: cstring; a4: int32): cstring {...}{.
    importc: "(char *)$1", header: "<arpa/inet.h>".}
  ソース 編集
proc inet_pton(a1: cint; a2: cstring; a3: pointer): cint {...}{.importc,
    header: "<arpa/inet.h>".}
  ソース 編集
proc IN6ADDR_ANY_INIT(): In6Addr {...}{.importc, header: "<netinet/in.h>".}
  ソース 編集
proc IN6ADDR_LOOPBACK_INIT(): In6Addr {...}{.importc, header: "<netinet/in.h>".}
  ソース 編集
proc closedir(a1: ptr DIR): cint {...}{.importc, header: "<dirent.h>".}
  ソース 編集
proc opendir(a1: cstring): ptr DIR {...}{.importc, header: "<dirent.h>".}
  ソース 編集
proc readdir(a1: ptr DIR): ptr Dirent {...}{.importc, header: "<dirent.h>".}
  ソース 編集
proc readdir_r(a1: ptr DIR; a2: ptr Dirent; a3: ptr ptr Dirent): cint {...}{.importc,
    header: "<dirent.h>".}
  ソース 編集
proc rewinddir(a1: ptr DIR) {...}{.importc, header: "<dirent.h>".}
  ソース 編集
proc seekdir(a1: ptr DIR; a2: int) {...}{.importc, header: "<dirent.h>".}
  ソース 編集
proc telldir(a1: ptr DIR): int {...}{.importc, header: "<dirent.h>".}
  ソース 編集
proc dlclose(a1: pointer): cint {...}{.importc, header: "<dlfcn.h>".}
  ソース 編集
proc dlerror(): cstring {...}{.importc, header: "<dlfcn.h>".}
  ソース 編集
proc dlopen(a1: cstring; a2: cint): pointer {...}{.importc, header: "<dlfcn.h>".}
  ソース 編集
proc dlsym(a1: pointer; a2: cstring): pointer {...}{.importc, header: "<dlfcn.h>".}
  ソース 編集
proc creat(a1: cstring; a2: Mode): cint {...}{.importc, header: "<fcntl.h>".}
  ソース 編集
proc fcntl(a1: cint | SocketHandle; a2: cint): cint {...}{.varargs, importc,
    header: "<fcntl.h>".}
  ソース 編集
proc open(a1: cstring; a2: cint): cint {...}{.varargs, importc, header: "<fcntl.h>".}
  ソース 編集
proc posix_fadvise(a1: cint; a2, a3: Off; a4: cint): cint {...}{.importc, header: "<fcntl.h>".}
  ソース 編集
proc posix_fallocate(a1: cint; a2, a3: Off): cint {...}{.importc, header: "<fcntl.h>".}
  ソース 編集
proc fmtmsg(a1: int; a2: cstring; a3: cint; a4, a5, a6: cstring): cint {...}{.importc,
    header: "<fmtmsg.h>".}
  ソース 編集
proc fnmatch(a1, a2: cstring; a3: cint): cint {...}{.importc, header: "<fnmatch.h>".}
  ソース 編集
proc ftw(a1: cstring;
        a2: proc (x1: cstring; x2: ptr Stat; x3: cint): cint {...}{.noconv.}; a3: cint): cint {...}{.
    importc, header: "<ftw.h>".}
  ソース 編集
proc nftw(a1: cstring; a2: proc (x1: cstring; x2: ptr Stat; x3: cint; x4: ptr FTW): cint {...}{.
    noconv.}; a3: cint; a4: cint): cint {...}{.importc, header: "<ftw.h>".}
  ソース 編集
proc glob(a1: cstring; a2: cint; a3: proc (x1: cstring; x2: cint): cint {...}{.noconv.};
         a4: ptr Glob): cint {...}{.importc, header: "<glob.h>".}
Filename globbing. Use os.walkPattern() and similar.   ソース 編集
proc globfree(a1: ptr Glob) {...}{.importc, header: "<glob.h>".}
  ソース 編集
proc getgrgid(a1: Gid): ptr Group {...}{.importc, header: "<grp.h>".}
  ソース 編集
proc getgrnam(a1: cstring): ptr Group {...}{.importc, header: "<grp.h>".}
  ソース 編集
proc getgrgid_r(a1: Gid; a2: ptr Group; a3: cstring; a4: int; a5: ptr ptr Group): cint {...}{.
    importc, header: "<grp.h>".}
  ソース 編集
proc getgrnam_r(a1: cstring; a2: ptr Group; a3: cstring; a4: int; a5: ptr ptr Group): cint {...}{.
    importc, header: "<grp.h>".}
  ソース 編集
proc getgrent(): ptr Group {...}{.importc, header: "<grp.h>".}
  ソース 編集
proc endgrent() {...}{.importc, header: "<grp.h>".}
  ソース 編集
proc setgrent() {...}{.importc, header: "<grp.h>".}
  ソース 編集
proc iconv_open(a1, a2: cstring): Iconv {...}{.importc, header: "<iconv.h>".}
  ソース 編集
proc iconv(a1: Iconv; a2: var cstring; a3: var int; a4: var cstring; a5: var int): int {...}{.
    importc, header: "<iconv.h>".}
  ソース 編集
proc iconv_close(a1: Iconv): cint {...}{.importc, header: "<iconv.h>".}
  ソース 編集
proc nl_langinfo(a1: Nl_item): cstring {...}{.importc, header: "<langinfo.h>".}
  ソース 編集
proc basename(a1: cstring): cstring {...}{.importc, header: "<libgen.h>".}
  ソース 編集
proc dirname(a1: cstring): cstring {...}{.importc, header: "<libgen.h>".}
  ソース 編集
proc localeconv(): ptr Lconv {...}{.importc, header: "<locale.h>".}
  ソース 編集
proc setlocale(a1: cint; a2: cstring): cstring {...}{.importc, header: "<locale.h>".}
  ソース 編集
proc strfmon(a1: cstring; a2: int; a3: cstring): int {...}{.varargs, importc,
    header: "<monetary.h>".}
  ソース 編集
proc mq_close(a1: Mqd): cint {...}{.importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_getattr(a1: Mqd; a2: ptr MqAttr): cint {...}{.importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_notify(a1: Mqd; a2: ptr SigEvent): cint {...}{.importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_open(a1: cstring; a2: cint): Mqd {...}{.varargs, importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_receive(a1: Mqd; a2: cstring; a3: int; a4: var int): int {...}{.importc,
    header: "<mqueue.h>".}
  ソース 編集
proc mq_send(a1: Mqd; a2: cstring; a3: int; a4: int): cint {...}{.importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_setattr(a1: Mqd; a2, a3: ptr MqAttr): cint {...}{.importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_timedreceive(a1: Mqd; a2: cstring; a3: int; a4: int; a5: ptr Timespec): int {...}{.
    importc, header: "<mqueue.h>".}
  ソース 編集
proc mq_timedsend(a1: Mqd; a2: cstring; a3: int; a4: int; a5: ptr Timespec): cint {...}{.importc,
    header: "<mqueue.h>".}
  ソース 編集
proc mq_unlink(a1: cstring): cint {...}{.importc, header: "<mqueue.h>".}
  ソース 編集
proc getpwnam(a1: cstring): ptr Passwd {...}{.importc, header: "<pwd.h>".}
  ソース 編集
proc getpwuid(a1: Uid): ptr Passwd {...}{.importc, header: "<pwd.h>".}
  ソース 編集
proc getpwnam_r(a1: cstring; a2: ptr Passwd; a3: cstring; a4: int; a5: ptr ptr Passwd): cint {...}{.
    importc, header: "<pwd.h>".}
  ソース 編集
proc getpwuid_r(a1: Uid; a2: ptr Passwd; a3: cstring; a4: int; a5: ptr ptr Passwd): cint {...}{.
    importc, header: "<pwd.h>".}
  ソース 編集
proc endpwent() {...}{.importc, header: "<pwd.h>".}
  ソース 編集
proc getpwent(): ptr Passwd {...}{.importc, header: "<pwd.h>".}
  ソース 編集
proc setpwent() {...}{.importc, header: "<pwd.h>".}
  ソース 編集
proc uname(a1: var Utsname): cint {...}{.importc, header: "<sys/utsname.h>".}
  ソース 編集
proc strerror(errnum: cint): cstring {...}{.importc, header: "<string.h>".}
  ソース 編集
proc pthread_atfork(a1, a2, a3: proc () {...}{.noconv.}): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_destroy(a1: ptr Pthread_attr): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getdetachstate(a1: ptr Pthread_attr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getguardsize(a1: ptr Pthread_attr; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getinheritsched(a1: ptr Pthread_attr; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getschedparam(a1: ptr Pthread_attr; a2: ptr Sched_param): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getschedpolicy(a1: ptr Pthread_attr; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getscope(a1: ptr Pthread_attr; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getstack(a1: ptr Pthread_attr; a2: var pointer; a3: var int): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getstackaddr(a1: ptr Pthread_attr; a2: var pointer): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_getstacksize(a1: ptr Pthread_attr; a2: var int): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_init(a1: ptr Pthread_attr): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setdetachstate(a1: ptr Pthread_attr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setguardsize(a1: ptr Pthread_attr; a2: int): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setinheritsched(a1: ptr Pthread_attr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setschedparam(a1: ptr Pthread_attr; a2: ptr Sched_param): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setschedpolicy(a1: ptr Pthread_attr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setscope(a1: ptr Pthread_attr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setstack(a1: ptr Pthread_attr; a2: pointer; a3: int): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setstackaddr(a1: ptr Pthread_attr; a2: pointer): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_attr_setstacksize(a1: ptr Pthread_attr; a2: int): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_barrier_destroy(a1: ptr Pthread_barrier): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_barrier_init(a1: ptr Pthread_barrier; a2: ptr Pthread_barrierattr;
                         a3: cint): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_barrier_wait(a1: ptr Pthread_barrier): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_barrierattr_destroy(a1: ptr Pthread_barrierattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_barrierattr_getpshared(a1: ptr Pthread_barrierattr; a2: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_barrierattr_init(a1: ptr Pthread_barrierattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_barrierattr_setpshared(a1: ptr Pthread_barrierattr; a2: cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_cancel(a1: Pthread): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_cleanup_push(a1: proc (x: pointer) {...}{.noconv.}; a2: pointer) {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_cleanup_pop(a1: cint) {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_cond_broadcast(a1: ptr Pthread_cond): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_cond_destroy(a1: ptr Pthread_cond): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_cond_init(a1: ptr Pthread_cond; a2: ptr Pthread_condattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_cond_signal(a1: ptr Pthread_cond): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_cond_timedwait(a1: ptr Pthread_cond; a2: ptr Pthread_mutex;
                           a3: ptr Timespec): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_cond_wait(a1: ptr Pthread_cond; a2: ptr Pthread_mutex): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_condattr_destroy(a1: ptr Pthread_condattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_condattr_getclock(a1: ptr Pthread_condattr; a2: var ClockId): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_condattr_getpshared(a1: ptr Pthread_condattr; a2: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_condattr_init(a1: ptr Pthread_condattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_condattr_setclock(a1: ptr Pthread_condattr; a2: ClockId): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_condattr_setpshared(a1: ptr Pthread_condattr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_create(a1: ptr Pthread; a2: ptr Pthread_attr;
                   a3: proc (x: pointer): pointer {...}{.noconv.}; a4: pointer): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_detach(a1: Pthread): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_equal(a1, a2: Pthread): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_exit(a1: pointer) {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_getconcurrency(): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_getcpuclockid(a1: Pthread; a2: var ClockId): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_getschedparam(a1: Pthread; a2: var cint; a3: ptr Sched_param): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_getspecific(a1: Pthread_key): pointer {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_join(a1: Pthread; a2: ptr pointer): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_key_create(a1: ptr Pthread_key; a2: proc (x: pointer) {...}{.noconv.}): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_key_delete(a1: Pthread_key): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_destroy(a1: ptr Pthread_mutex): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_getprioceiling(a1: ptr Pthread_mutex; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_init(a1: ptr Pthread_mutex; a2: ptr Pthread_mutexattr): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_lock(a1: ptr Pthread_mutex): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_setprioceiling(a1: ptr Pthread_mutex; a2: cint; a3: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_timedlock(a1: ptr Pthread_mutex; a2: ptr Timespec): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_trylock(a1: ptr Pthread_mutex): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutex_unlock(a1: ptr Pthread_mutex): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_destroy(a1: ptr Pthread_mutexattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_getprioceiling(a1: ptr Pthread_mutexattr; a2: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_getprotocol(a1: ptr Pthread_mutexattr; a2: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_getpshared(a1: ptr Pthread_mutexattr; a2: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_gettype(a1: ptr Pthread_mutexattr; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_init(a1: ptr Pthread_mutexattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_setprioceiling(a1: ptr Pthread_mutexattr; a2: cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_setprotocol(a1: ptr Pthread_mutexattr; a2: cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_setpshared(a1: ptr Pthread_mutexattr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_mutexattr_settype(a1: ptr Pthread_mutexattr; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_once(a1: ptr Pthread_once; a2: proc () {...}{.noconv.}): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_destroy(a1: ptr Pthread_rwlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_init(a1: ptr Pthread_rwlock; a2: ptr Pthread_rwlockattr): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_rdlock(a1: ptr Pthread_rwlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_timedrdlock(a1: ptr Pthread_rwlock; a2: ptr Timespec): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_timedwrlock(a1: ptr Pthread_rwlock; a2: ptr Timespec): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_tryrdlock(a1: ptr Pthread_rwlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_trywrlock(a1: ptr Pthread_rwlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_unlock(a1: ptr Pthread_rwlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlock_wrlock(a1: ptr Pthread_rwlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlockattr_destroy(a1: ptr Pthread_rwlockattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlockattr_getpshared(a1: ptr Pthread_rwlockattr; a2: var cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlockattr_init(a1: ptr Pthread_rwlockattr): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_rwlockattr_setpshared(a1: ptr Pthread_rwlockattr; a2: cint): cint {...}{.
    importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_self(): Pthread {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_setcancelstate(a1: cint; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_setcanceltype(a1: cint; a2: var cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_setconcurrency(a1: cint): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_setschedparam(a1: Pthread; a2: cint; a3: ptr Sched_param): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_setschedprio(a1: Pthread; a2: cint): cint {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc pthread_setspecific(a1: Pthread_key; a2: pointer): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_spin_destroy(a1: ptr Pthread_spinlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_spin_init(a1: ptr Pthread_spinlock; a2: cint): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_spin_lock(a1: ptr Pthread_spinlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_spin_trylock(a1: ptr Pthread_spinlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_spin_unlock(a1: ptr Pthread_spinlock): cint {...}{.importc,
    header: "<pthread.h>".}
  ソース 編集
proc pthread_testcancel() {...}{.importc, header: "<pthread.h>".}
  ソース 編集
proc exitnow(code: int): void {...}{.importc: "_exit", header: "<unistd.h>".}
  ソース 編集
proc access(a1: cstring; a2: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc alarm(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc chdir(a1: cstring): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc chown(a1: cstring; a2: Uid; a3: Gid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc close(a1: cint | SocketHandle): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc confstr(a1: cint; a2: cstring; a3: int): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc crypt(a1, a2: cstring): cstring {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc ctermid(a1: cstring): cstring {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc dup(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc dup2(a1, a2: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc encrypt(a1: array[0 .. 63, char]; a2: cint) {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc execl(a1, a2: cstring): cint {...}{.varargs, importc, header: "<unistd.h>".}
  ソース 編集
proc execle(a1, a2: cstring): cint {...}{.varargs, importc, header: "<unistd.h>".}
  ソース 編集
proc execlp(a1, a2: cstring): cint {...}{.varargs, importc, header: "<unistd.h>".}
  ソース 編集
proc execv(a1: cstring; a2: cstringArray): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc execve(a1: cstring; a2, a3: cstringArray): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc execvp(a1: cstring; a2: cstringArray): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc execvpe(a1: cstring; a2: cstringArray; a3: cstringArray): cint {...}{.importc,
    header: "<unistd.h>".}
  ソース 編集
proc fchown(a1: cint; a2: Uid; a3: Gid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc fchdir(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc fdatasync(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc fork(): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc fpathconf(a1, a2: cint): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc fsync(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
synchronize a file's buffer cache to the storage device   Source Edit
proc ftruncate(a1: cint; a2: Off): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getcwd(a1: cstring; a2: int): cstring {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getuid(): Uid {...}{.importc, header: "<unistd.h>".}
returns the real user ID of the calling process   Source Edit
proc geteuid(): Uid {...}{.importc, header: "<unistd.h>".}
returns the effective user ID of the calling process   Source Edit
proc getgid(): Gid {...}{.importc, header: "<unistd.h>".}
returns the real group ID of the calling process   Source Edit
proc getegid(): Gid {...}{.importc, header: "<unistd.h>".}
returns the effective group ID of the calling process   Source Edit
proc getgroups(a1: cint; a2: ptr array[0 .. 255, Gid]): cint {...}{.importc,
    header: "<unistd.h>".}
  ソース 編集
proc gethostid(): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc gethostname(a1: cstring; a2: int): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getlogin(): cstring {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getlogin_r(a1: cstring; a2: int): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getopt(a1: cint; a2: cstringArray; a3: cstring): cint {...}{.importc,
    header: "<unistd.h>".}
  ソース 編集
proc getpgid(a1: Pid): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getpgrp(): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc getpid(): Pid {...}{.importc, header: "<unistd.h>".}
returns the process ID (PID) of the calling process   Source Edit
proc getppid(): Pid {...}{.importc, header: "<unistd.h>".}
returns the process ID of the parent of the calling process   Source Edit
proc getsid(a1: Pid): Pid {...}{.importc, header: "<unistd.h>".}
returns the session ID of the calling process   Source Edit
proc getwd(a1: cstring): cstring {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc isatty(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc lchown(a1: cstring; a2: Uid; a3: Gid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc link(a1, a2: cstring): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc lockf(a1, a2: cint; a3: Off): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc lseek(a1: cint; a2: Off; a3: cint): Off {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc nice(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc pathconf(a1: cstring; a2: cint): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc pause(): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc pclose(a: File): cint {...}{.importc, header: "<stdio.h>".}
  ソース 編集
proc pipe(a: array[0 .. 1, cint]): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc popen(a1, a2: cstring): File {...}{.importc, header: "<stdio.h>".}
  ソース 編集
proc pread(a1: cint; a2: pointer; a3: int; a4: Off): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc pwrite(a1: cint; a2: pointer; a3: int; a4: Off): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc read(a1: cint; a2: pointer; a3: int): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc readlink(a1, a2: cstring; a3: int): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc ioctl(f: FileHandle; device: uint): int {...}{.importc: "ioctl",
    header: "<sys/ioctl.h>", varargs, tags: [WriteIOEffect].}
A system call for device-specific input/output operations and other operations which cannot be expressed by regular system calls   Source Edit
proc rmdir(a1: cstring): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setegid(a1: Gid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc seteuid(a1: Uid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setgid(a1: Gid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setpgid(a1, a2: Pid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setpgrp(): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setregid(a1, a2: Gid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setreuid(a1, a2: Uid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setsid(): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc setuid(a1: Uid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc sleep(a1: cint): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc swab(a1, a2: pointer; a3: int) {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc symlink(a1, a2: cstring): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc sync() {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc sysconf(a1: cint): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc tcgetpgrp(a1: cint): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc tcsetpgrp(a1: cint; a2: Pid): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc truncate(a1: cstring; a2: Off): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc ttyname(a1: cint): cstring {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc ttyname_r(a1: cint; a2: cstring; a3: int): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc ualarm(a1, a2: Useconds): Useconds {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc unlink(a1: cstring): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc usleep(a1: Useconds): cint {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc vfork(): Pid {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc write(a1: cint; a2: pointer; a3: int): int {...}{.importc, header: "<unistd.h>".}
  ソース 編集
proc sem_close(a1: ptr Sem): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_destroy(a1: ptr Sem): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_getvalue(a1: ptr Sem; a2: var cint): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_init(a1: ptr Sem; a2: cint; a3: cint): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_open(a1: cstring; a2: cint): ptr Sem {...}{.varargs, importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_post(a1: ptr Sem): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_timedwait(a1: ptr Sem; a2: ptr Timespec): cint {...}{.importc,
    header: "<semaphore.h>".}
  ソース 編集
proc sem_trywait(a1: ptr Sem): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_unlink(a1: cstring): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc sem_wait(a1: ptr Sem): cint {...}{.importc, header: "<semaphore.h>".}
  ソース 編集
proc ftok(a1: cstring; a2: cint): Key {...}{.importc, header: "<sys/ipc.h>".}
  ソース 編集
proc statvfs(a1: cstring; a2: var Statvfs): cint {...}{.importc, header: "<sys/statvfs.h>".}
  ソース 編集
proc fstatvfs(a1: cint; a2: var Statvfs): cint {...}{.importc, header: "<sys/statvfs.h>".}
  ソース 編集
proc chmod(a1: cstring; a2: Mode): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc fchmod(a1: cint; a2: Mode): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc fstat(a1: cint; a2: var Stat): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc lstat(a1: cstring; a2: var Stat): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc mkdir(a1: cstring; a2: Mode): cint {...}{.importc, header: "<sys/stat.h>".}
Use os.createDir() and similar.   ソース 編集
proc mkfifo(a1: cstring; a2: Mode): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc mknod(a1: cstring; a2: Mode; a3: Dev): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc stat(a1: cstring; a2: var Stat): cint {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc umask(a1: Mode): Mode {...}{.importc, header: "<sys/stat.h>".}
  ソース 編集
proc S_ISBLK(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a block special file.   ソース 編集
proc S_ISCHR(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a character special file.   ソース 編集
proc S_ISDIR(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a directory.   ソース 編集
proc S_ISFIFO(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a pipe or FIFO special file.   ソース 編集
proc S_ISREG(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a regular file.   ソース 編集
proc S_ISLNK(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a symbolic link.   ソース 編集
proc S_ISSOCK(m: Mode): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a socket.   ソース 編集
proc S_TYPEISMQ(buf: var Stat): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a message queue.   ソース 編集
proc S_TYPEISSEM(buf: var Stat): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a semaphore.   ソース 編集
proc S_TYPEISSHM(buf: var Stat): bool {...}{.importc, header: "<sys/stat.h>".}
Test for a shared memory object.   ソース 編集
proc S_TYPEISTMO(buf: var Stat): bool {...}{.importc, header: "<sys/stat.h>".}
Test macro for a typed memory object.   ソース 編集
proc mlock(a1: pointer; a2: int): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc mlockall(a1: cint): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc mmap(a1: pointer; a2: int; a3, a4, a5: cint; a6: Off): pointer {...}{.importc,
    header: "<sys/mman.h>".}
  ソース 編集
proc mprotect(a1: pointer; a2: int; a3: cint): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc msync(a1: pointer; a2: int; a3: cint): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc munlock(a1: pointer; a2: int): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc munlockall(): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc munmap(a1: pointer; a2: int): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc posix_madvise(a1: pointer; a2: int; a3: cint): cint {...}{.importc,
    header: "<sys/mman.h>".}
  ソース 編集
proc posix_mem_offset(a1: pointer; a2: int; a3: var Off; a4: var int; a5: var cint): cint {...}{.
    importc, header: "<sys/mman.h>".}
  ソース 編集
proc posix_typed_mem_get_info(a1: cint; a2: var Posix_typed_mem_info): cint {...}{.importc,
    header: "<sys/mman.h>".}
  ソース 編集
proc posix_typed_mem_open(a1: cstring; a2, a3: cint): cint {...}{.importc,
    header: "<sys/mman.h>".}
  ソース 編集
proc shm_open(a1: cstring; a2: cint; a3: Mode): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc shm_unlink(a1: cstring): cint {...}{.importc, header: "<sys/mman.h>".}
  ソース 編集
proc asctime(a1: var Tm): cstring {...}{.importc, header: "<time.h>".}
  ソース 編集
proc asctime_r(a1: var Tm; a2: cstring): cstring {...}{.importc, header: "<time.h>".}
  ソース 編集
proc clock(): Clock {...}{.importc, header: "<time.h>".}
  ソース 編集
proc clock_getcpuclockid(a1: Pid; a2: var ClockId): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc clock_getres(a1: ClockId; a2: var Timespec): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc clock_gettime(a1: ClockId; a2: var Timespec): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc clock_nanosleep(a1: ClockId; a2: cint; a3: var Timespec; a4: var Timespec): cint {...}{.
    importc, header: "<time.h>".}
  ソース 編集
proc clock_settime(a1: ClockId; a2: var Timespec): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc `==`(a, b: Time): bool {...}{.borrow.}
  ソース 編集
proc `-`(a, b: Time): Time {...}{.borrow.}
  ソース 編集
proc ctime(a1: var Time): cstring {...}{.importc, header: "<time.h>".}
  ソース 編集
proc ctime_r(a1: var Time; a2: cstring): cstring {...}{.importc, header: "<time.h>".}
  ソース 編集
proc difftime(a1, a2: Time): cdouble {...}{.importc, header: "<time.h>".}
  ソース 編集
proc getdate(a1: cstring): ptr Tm {...}{.importc, header: "<time.h>".}
  ソース 編集
proc gmtime(a1: var Time): ptr Tm {...}{.importc, header: "<time.h>".}
  ソース 編集
proc gmtime_r(a1: var Time; a2: var Tm): ptr Tm {...}{.importc, header: "<time.h>".}
  ソース 編集
proc localtime(a1: var Time): ptr Tm {...}{.importc, header: "<time.h>".}
  ソース 編集
proc localtime_r(a1: var Time; a2: var Tm): ptr Tm {...}{.importc, header: "<time.h>".}
  ソース 編集
proc mktime(a1: var Tm): Time {...}{.importc, header: "<time.h>".}
  ソース 編集
proc timegm(a1: var Tm): Time {...}{.importc, header: "<time.h>".}
  ソース 編集
proc nanosleep(a1, a2: var Timespec): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc strftime(a1: cstring; a2: int; a3: cstring; a4: var Tm): int {...}{.importc,
    header: "<time.h>".}
  ソース 編集
proc strptime(a1, a2: cstring; a3: var Tm): cstring {...}{.importc, header: "<time.h>".}
  ソース 編集
proc time(a1: var Time): Time {...}{.importc, header: "<time.h>".}
  ソース 編集
proc timer_create(a1: ClockId; a2: var SigEvent; a3: var Timer): cint {...}{.importc,
    header: "<time.h>".}
  ソース 編集
proc timer_delete(a1: Timer): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc timer_gettime(a1: Timer; a2: var Itimerspec): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc timer_getoverrun(a1: Timer): cint {...}{.importc, header: "<time.h>".}
  ソース 編集
proc timer_settime(a1: Timer; a2: cint; a3: var Itimerspec; a4: var Itimerspec): cint {...}{.
    importc, header: "<time.h>".}
  ソース 編集
proc tzset() {...}{.importc, header: "<time.h>".}
  ソース 編集
proc wait(a1: ptr cint): Pid {...}{.importc, discardable, header: "<sys/wait.h>".}
  ソース 編集
proc waitid(a1: cint; a2: Id; a3: var SigInfo; a4: cint): cint {...}{.importc,
    header: "<sys/wait.h>".}
  ソース 編集
proc waitpid(a1: Pid; a2: var cint; a3: cint): Pid {...}{.importc, header: "<sys/wait.h>".}
  ソース 編集
proc wait4(pid: Pid; status: ptr cint; options: cint; rusage: ptr Rusage): Pid {...}{.importc,
    header: "<sys/wait.h>".}
  ソース 編集
proc getrusage(who: cint; rusage: ptr Rusage): cint {...}{.importc,
    header: "<sys/resource.h>", discardable.}
  ソース 編集
proc bsd_signal(a1: cint; a2: proc (x: pointer) {...}{.noconv.}) {...}{.importc,
    header: "<signal.h>".}
  ソース 編集
proc kill(a1: Pid; a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc killpg(a1: Pid; a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc pthread_kill(a1: Pthread; a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc pthread_sigmask(a1: cint; a2, a3: var Sigset): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc `raise`(a1: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigaction(a1: cint; a2, a3: var Sigaction): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigaction(a1: cint; a2: var Sigaction; a3: ptr Sigaction = nil): cint {...}{.importc,
    header: "<signal.h>".}
  ソース 編集
proc sigaddset(a1: var Sigset; a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigaltstack(a1, a2: var Stack): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigdelset(a1: var Sigset; a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigemptyset(a1: var Sigset): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigfillset(a1: var Sigset): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sighold(a1: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigignore(a1: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc siginterrupt(a1, a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigismember(a1: var Sigset; a2: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc signal(a1: cint; a2: Sighandler) {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigpause(a1: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigpending(a1: var Sigset): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigprocmask(a1: cint; a2, a3: var Sigset): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigqueue(a1: Pid; a2: cint; a3: SigVal): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigrelse(a1: cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigset(a1: int; a2: proc (x: cint) {...}{.noconv.}) {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigsuspend(a1: var Sigset): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigtimedwait(a1: var Sigset; a2: var SigInfo; a3: var Timespec): cint {...}{.importc,
    header: "<signal.h>".}
  ソース 編集
proc sigwait(a1: var Sigset; a2: var cint): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc sigwaitinfo(a1: var Sigset; a2: var SigInfo): cint {...}{.importc, header: "<signal.h>".}
  ソース 編集
proc catclose(a1: Nl_catd): cint {...}{.importc, header: "<nl_types.h>".}
  ソース 編集
proc catgets(a1: Nl_catd; a2, a3: cint; a4: cstring): cstring {...}{.importc,
    header: "<nl_types.h>".}
  ソース 編集
proc catopen(a1: cstring; a2: cint): Nl_catd {...}{.importc, header: "<nl_types.h>".}
  ソース 編集
proc sched_get_priority_max(a1: cint): cint {...}{.importc, header: "<sched.h>".}
  ソース 編集
proc sched_get_priority_min(a1: cint): cint {...}{.importc, header: "<sched.h>".}
  ソース 編集
proc sched_getparam(a1: Pid; a2: var Sched_param): cint {...}{.importc, header: "<sched.h>".}
  ソース 編集
proc sched_getscheduler(a1: Pid): cint {...}{.importc, header: "<sched.h>".}
  ソース 編集
proc sched_rr_get_interval(a1: Pid; a2: var Timespec): cint {...}{.importc,
    header: "<sched.h>".}
  ソース 編集
proc sched_setparam(a1: Pid; a2: var Sched_param): cint {...}{.importc, header: "<sched.h>".}
  ソース 編集
proc sched_setscheduler(a1: Pid; a2: cint; a3: var Sched_param): cint {...}{.importc,
    header: "<sched.h>".}
  ソース 編集
proc sched_yield(): cint {...}{.importc, header: "<sched.h>".}
  ソース 編集
proc hstrerror(herrnum: cint): cstring {...}{.importc: "(char *)$1", header: "<netdb.h>".}
  ソース 編集
proc FD_CLR(a1: cint; a2: var TFdSet) {...}{.importc, header: "<sys/select.h>".}
  ソース 編集
proc FD_ISSET(a1: cint | SocketHandle; a2: var TFdSet): cint {...}{.importc,
    header: "<sys/select.h>".}
  ソース 編集
proc FD_SET(a1: cint | SocketHandle; a2: var TFdSet) {...}{.importc: "FD_SET",
    header: "<sys/select.h>".}
  ソース 編集
proc FD_ZERO(a1: var TFdSet) {...}{.importc, header: "<sys/select.h>".}
  ソース 編集
proc pselect(a1: cint; a2, a3, a4: ptr TFdSet; a5: ptr Timespec; a6: var Sigset): cint {...}{.
    importc, header: "<sys/select.h>".}
  ソース 編集
proc select(a1: cint | SocketHandle; a2, a3, a4: ptr TFdSet; a5: ptr Timeval): cint {...}{.importc,
    header: "<sys/select.h>".}
  ソース 編集
proc posix_spawn(a1: var Pid; a2: cstring; a3: var Tposix_spawn_file_actions;
                a4: var Tposix_spawnattr; a5, a6: cstringArray): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawn_file_actions_addclose(a1: var Tposix_spawn_file_actions; a2: cint): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawn_file_actions_adddup2(a1: var Tposix_spawn_file_actions;
                                     a2, a3: cint): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawn_file_actions_addopen(a1: var Tposix_spawn_file_actions; a2: cint;
                                     a3: cstring; a4: cint; a5: Mode): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawn_file_actions_destroy(a1: var Tposix_spawn_file_actions): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawn_file_actions_init(a1: var Tposix_spawn_file_actions): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_destroy(a1: var Tposix_spawnattr): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_getsigdefault(a1: var Tposix_spawnattr; a2: var Sigset): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_getflags(a1: var Tposix_spawnattr; a2: var cshort): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_getpgroup(a1: var Tposix_spawnattr; a2: var Pid): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_getschedparam(a1: var Tposix_spawnattr; a2: var Sched_param): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_getschedpolicy(a1: var Tposix_spawnattr; a2: var cint): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_getsigmask(a1: var Tposix_spawnattr; a2: var Sigset): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_init(a1: var Tposix_spawnattr): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_setsigdefault(a1: var Tposix_spawnattr; a2: var Sigset): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_setflags(a1: var Tposix_spawnattr; a2: cint): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_setpgroup(a1: var Tposix_spawnattr; a2: Pid): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_setschedparam(a1: var Tposix_spawnattr; a2: var Sched_param): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_setschedpolicy(a1: var Tposix_spawnattr; a2: cint): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnattr_setsigmask(a1: var Tposix_spawnattr; a2: var Sigset): cint {...}{.
    importc, header: "<spawn.h>".}
  ソース 編集
proc posix_spawnp(a1: var Pid; a2: cstring; a3: var Tposix_spawn_file_actions;
                 a4: var Tposix_spawnattr; a5, a6: cstringArray): cint {...}{.importc,
    header: "<spawn.h>".}
  ソース 編集
proc getcontext(a1: var Ucontext): cint {...}{.importc, header: "<ucontext.h>".}
  ソース 編集
proc makecontext(a1: var Ucontext; a4: proc () {...}{.noconv.}; a3: cint) {...}{.varargs, importc,
    header: "<ucontext.h>".}
  ソース 編集
proc setcontext(a1: var Ucontext): cint {...}{.importc, header: "<ucontext.h>".}
  ソース 編集
proc swapcontext(a1, a2: var Ucontext): cint {...}{.importc, header: "<ucontext.h>".}
  ソース 編集
proc readv(a1: cint; a2: ptr IOVec; a3: cint): int {...}{.importc, header: "<sys/uio.h>".}
  ソース 編集
proc writev(a1: cint; a2: ptr IOVec; a3: cint): int {...}{.importc, header: "<sys/uio.h>".}
  ソース 編集
proc CMSG_DATA(cmsg: ptr Tcmsghdr): cstring {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc CMSG_NXTHDR(mhdr: ptr Tmsghdr; cmsg: ptr Tcmsghdr): ptr Tcmsghdr {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc CMSG_FIRSTHDR(mhdr: ptr Tmsghdr): ptr Tcmsghdr {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc CMSG_SPACE(len: csize): csize {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc CMSG_LEN(len: csize): csize {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc `==`(x, y: SocketHandle): bool {...}{.borrow.}
  ソース 編集
proc accept(a1: SocketHandle; a2: ptr SockAddr; a3: ptr SockLen): SocketHandle {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
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 Edit
proc connect(a1: SocketHandle; a2: ptr SockAddr; a3: SockLen): cint {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc getpeername(a1: SocketHandle; a2: ptr SockAddr; a3: ptr SockLen): cint {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc getsockname(a1: SocketHandle; a2: ptr SockAddr; a3: ptr SockLen): cint {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc getsockopt(a1: SocketHandle; a2, a3: cint; a4: pointer; a5: ptr SockLen): cint {...}{.
    importc, header: "<sys/socket.h>".}
  ソース 編集
proc listen(a1: SocketHandle; a2: cint): cint {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc recv(a1: SocketHandle; a2: pointer; a3: int; a4: cint): int {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc recvfrom(a1: SocketHandle; a2: pointer; a3: int; a4: cint; a5: ptr SockAddr;
             a6: ptr SockLen): int {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc recvmsg(a1: SocketHandle; a2: ptr Tmsghdr; a3: cint): int {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc send(a1: SocketHandle; a2: pointer; a3: int; a4: cint): int {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc sendmsg(a1: SocketHandle; a2: ptr Tmsghdr; a3: cint): int {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc sendto(a1: SocketHandle; a2: pointer; a3: int; a4: cint; a5: ptr SockAddr; a6: SockLen): int {...}{.
    importc, header: "<sys/socket.h>".}
  ソース 編集
proc setsockopt(a1: SocketHandle; a2, a3: cint; a4: pointer; a5: SockLen): cint {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc shutdown(a1: SocketHandle; a2: cint): cint {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc socket(a1, a2, a3: cint): SocketHandle {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc sockatmark(a1: cint): cint {...}{.importc, header: "<sys/socket.h>".}
  ソース 編集
proc socketpair(a1, a2, a3: cint; a4: var array[0 .. 1, cint]): cint {...}{.importc,
    header: "<sys/socket.h>".}
  ソース 編集
proc if_nametoindex(a1: cstring): cint {...}{.importc, header: "<net/if.h>".}
  ソース 編集
proc if_indextoname(a1: cint; a2: cstring): cstring {...}{.importc, header: "<net/if.h>".}
  ソース 編集
proc if_nameindex(): ptr Tif_nameindex {...}{.importc, header: "<net/if.h>".}
  ソース 編集
proc if_freenameindex(a1: ptr Tif_nameindex) {...}{.importc, header: "<net/if.h>".}
  ソース 編集
proc IN6_IS_ADDR_UNSPECIFIED(a1: ptr In6Addr): cint {...}{.importc,
    header: "<netinet/in.h>".}
Unspecified address.   ソース 編集
proc IN6_IS_ADDR_LOOPBACK(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
Loopback address.   ソース 編集
proc IN6_IS_ADDR_MULTICAST(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
Multicast address.   ソース 編集
proc IN6_IS_ADDR_LINKLOCAL(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
Unicast link-local address.   ソース 編集
proc IN6_IS_ADDR_SITELOCAL(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
Unicast site-local address.   ソース 編集
proc IN6_IS_ADDR_V4MAPPED(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
IPv4 mapped address.   ソース 編集
proc IN6_IS_ADDR_V4COMPAT(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
IPv4-compatible address.   ソース 編集
proc IN6_IS_ADDR_MC_NODELOCAL(a1: ptr In6Addr): cint {...}{.importc,
    header: "<netinet/in.h>".}
Multicast node-local address.   ソース 編集
proc IN6_IS_ADDR_MC_LINKLOCAL(a1: ptr In6Addr): cint {...}{.importc,
    header: "<netinet/in.h>".}
Multicast link-local address.   ソース 編集
proc IN6_IS_ADDR_MC_SITELOCAL(a1: ptr In6Addr): cint {...}{.importc,
    header: "<netinet/in.h>".}
Multicast site-local address.   ソース 編集
proc IN6_IS_ADDR_MC_ORGLOCAL(a1: ptr In6Addr): cint {...}{.importc,
    header: "<netinet/in.h>".}
Multicast organization-local address.   ソース 編集
proc IN6_IS_ADDR_MC_GLOBAL(a1: ptr In6Addr): cint {...}{.importc, header: "<netinet/in.h>".}
Multicast global address.   ソース 編集
proc endhostent() {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc endnetent() {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc endprotoent() {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc endservent() {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc freeaddrinfo(a1: ptr AddrInfo) {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc gai_strerror(a1: cint): cstring {...}{.importc: "(char *)$1", header: "<netdb.h>".}
  ソース 編集
proc getaddrinfo(a1, a2: cstring; a3: ptr AddrInfo; a4: var ptr AddrInfo): cint {...}{.importc,
    header: "<netdb.h>".}
  ソース 編集
proc gethostbyaddr(a1: pointer; a2: SockLen; a3: cint): ptr Hostent {...}{.importc,
    header: "<netdb.h>".}
  ソース 編集
proc gethostbyname(a1: cstring): ptr Hostent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc gethostent(): ptr Hostent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getnameinfo(a1: ptr SockAddr; a2: SockLen; a3: cstring; a4: SockLen; a5: cstring;
                a6: SockLen; a7: cint): cint {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getnetbyaddr(a1: int32; a2: cint): ptr Tnetent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getnetbyname(a1: cstring): ptr Tnetent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getnetent(): ptr Tnetent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getprotobyname(a1: cstring): ptr Protoent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getprotobynumber(a1: cint): ptr Protoent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getprotoent(): ptr Protoent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getservbyname(a1, a2: cstring): ptr Servent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getservbyport(a1: cint; a2: cstring): ptr Servent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc getservent(): ptr Servent {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc sethostent(a1: cint) {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc setnetent(a1: cint) {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc setprotoent(a1: cint) {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc setservent(a1: cint) {...}{.importc, header: "<netdb.h>".}
  ソース 編集
proc poll(a1: ptr TPollfd; a2: Tnfds; a3: int): cint {...}{.importc, header: "<poll.h>".}
  ソース 編集
proc realpath(name, resolved: cstring): cstring {...}{.importc: "realpath",
    header: "<stdlib.h>".}
  ソース 編集
proc mkstemp(tmpl: cstring): cint {...}{.importc, header: "<stdlib.h>".}

Creates a unique temporary file.

Warning: The tmpl argument is written to by mkstemp and thus can't be a string literal. If in doubt copy the string before passing it.

  ソース 編集
proc mkdtemp(tmpl: cstring): pointer {...}{.importc, header: "<stdlib.h>".}
  ソース 編集
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/.

  ソース 編集
proc setrlimit(resource: cint; rlp: var RLimit): cint {...}{.importc: "setrlimit",
    header: "<sys/resource.h>".}
The setrlimit() system calls sets resource limits.   ソース 編集
proc getrlimit(resource: cint; rlp: var RLimit): cint {...}{.importc: "getrlimit",
    header: "<sys/resource.h>".}
The getrlimit() system call gets resource limits.   ソース 編集

テンプレート

template onSignal(signals: varargs[cint]; body: untyped)

Setup code to be executed when Unix signals are received. The currently handled signal is injected as sig into the calling scope.

用例:

from posix import SIGINT, SIGTERM, onSignal
onSignal(SIGINT, SIGTERM):
  echo "bye from signal ", sig
  ソース 編集