Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
unistd(3HEAD)			    Headers			 unistd(3HEAD)

NAME
       unistd -	standard symbolic constants and	types

SYNOPSIS
       #include	<unistd.h>

DESCRIPTION
       The  <unistd.h>	header	defines	 the symbolic constants	and structures
       which are not already defined or	declared in  some  other  header.  The
       contents	of this	header	are shown below.

   Version Test	Macros
       The following symbolic constants	are defined (with fixed	values):

       _POSIX_VERSION
	     Integer  value  indicating	 version of the	POSIX standard (C lan-
	     guage binding).  See standards(5).

       _POSIX2_VERSION
	     Integer value indicating version of the  POSIX.2  standard	 (Com-
	     mands). _POSIX2_C_VERSION Integer value indicating	version	of the
	     POSIX.2 standard (C language binding).

       _XOPEN_VERSION
	     Integer value indicating version of the XPG to which system  con-
	     forms.

       _XOPEN_XCU_VERSION
	     Integer  value indicating the version of the XCU specification to
	     which the implementation conforms.	If this	constant  is  not  de-
	     fined,  use  the sysconf(3C) function to determine	which features
	     are supported.

   Mandatory Symbolic Constants
       The following symbolic constants	are either undefined or	defined	with a
       value  other than -1. If	a constant is undefined, an application	should
       use the sysconf(3C), pathconf(2), or fpathconf(2) functions  to	deter-
       mine  which  features are present on the	system at that time or for the
       particular pathname in question.

       _POSIX_JOB_CONTROL
	     Implementation supports job control.

       _POSIX_SAVED_IDS
	     The exec functions	(see exec(2))  save  the  effective  user  and
	     group.

       _POSIX_THREADS
	     The implementation	supports the threads option.

       _POSIX_THREAD_ATTR_STACKADDR
	     The  implementation  supports  the	thread stack address attribute
	     option.

       _POSIX_THREAD_ATTR_STACKSIZE
	     The implementation	supports the thread stack size	attribute  op-
	     tion.

       _POSIX_THREAD_PROCESS_SHARED
	     The  implementation  supports  the	process-shared synchronization
	     option.

       _POSIX_THREAD_SAFE_FUNCTIONS
	     The implementation	supports the thread-safe functions option.

       _XOPEN_XPG3
	     X/Open Specification, February 1992, System Interfaces and	 Head-
	     ers,  Issue 3 (ISBN: 1-872630-37-5, C212);	this specification was
	     formerly X/Open Portability Guide,	Issue  3,  Volume  2,  January
	     1989,  XSI	 System	 Interface  and	 Headers (ISBN:	0-13-685843-0,
	     XO/XPG/89/003).

       _XOPEN_XPG4
	     X/Open CAE	Specification, July 1992, System Interfaces and	 Head-
	     ers, Issue	4 (ISBN: 1-872630-47-2,	C202).

       _XOPEN_UNIX
	     X/Open  CAE  Specification,  January  1997, System	Interfaces and
	     Headers, Issue 5 (ISBN: 1-85912-181-0, C606).

   Constants for Options and Feature Groups
       The following symbolic constants	are defined to have the	 value	-1  if
       the  implementation will	never provide the feature, and to have a value
       other than -1 if	the implementation always  provides  the  feature.  If
       these  are  undefined,  the sysconf() function can be used to determine
       whether the feature is provided for a particular	invocation of the  ap-
       plication.

       _POSIX2_C_BIND
	     Implementation supports the C Language Binding option.

       _POSIX2_C_DEV
	     Implementation  supports the C Language Development Utilities op-
	     tion.

       _POSIX2_CHAR_TERM
	     Implementation supports at	least one terminal type.

       _POSIX2_LOCALEDEF
	     Implementation supports  the  creation  of	 locales  by  the  lo-
	     caledef(1)	utility.

       _POSIX2_SW_DEV
	     Implementation  supports  the  Software Development Utilities op-
	     tion.

       _POSIX2_UPE
	     The implementation	supports the User  Portability	Utilities  op-
	     tion.

       _XOPEN_ENH_I18N
	     The  implementation  supports the Issue 4,	Version	2 Enhanced In-
	     ternationalization	Feature	Group.

       _XOPEN_LEGACY
	     The implementation	supports the Legacy Feature Group.

       _XOPEN_REALTIME
	     The implementation	supports the X/Open Realtime Feature Group.

       _XOPEN_SHM
	     The implementation	supports the Issue 4, Version 2	Shared	Memory
	     Feature Group.

       _XBS5_ILP32_OFF32
	     Implementation provides a C-language compilation environment with
	     32-bit int, long, pointer and off_t types.

       _XBS5_ILP32_OFFBIG
	     Implementation provides a C-language compilation environment with
	     32-bit  int,  long	 and  pointer types and	an off_t type using at
	     least 64 bits.

       _XBS5_LP64_OFF64
	     Implementation provides a C-language compilation environment with
	     32-bit int	and 64-bit long, pointer and off_t types.

       _XBS5_LPBIG_OFFBIG
	     Implementation provides a C-language compilation environment with
	     an	int type using at least	32 bits	and long,  pointer  and	 off_t
	     types using at least 64 bits.

       If  _XOPEN_REALTIME  is	defined	to have	a value	other than -1 then the
       following symbolic constants will be defined to an unspecified value to
       indicate	that the features are supported.

       _POSIX_ASYNCHRONOUS_IO
	     Implementation supports the Asynchronous Input and	Output option.

       _POSIX_MEMLOCK
	     Implementation supports the Process Memory	Locking	option.

       _POSIX_MEMLOCK_RANGE
	     Implementation supports the Range Memory Locking option.

       _POSIX_MESSAGE_PASSING
	     Implementation supports the Message Passing option.

       _POSIX_PRIORITY_SCHEDULING
	     Implementation supports the Process Scheduling option.

       _POSIX_REALTIME_SIGNALS
	     Implementation supports the Realtime Signals Extension option.

       _POSIX_SEMAPHORES
	     Implementation supports the Semaphores option.

       _POSIX_SHARED_MEMORY_OBJECTS
	     Implementation supports the Shared	Memory Objects option.

       _POSIX_SYNCHRONIZED_IO
	     Implementation supports the Synchronized Input and	Output option.

       _POSIX_TIMERS
	     Implementation supports the Timers	option.

       The following symbolic constants	are always defined to unspecified val-
       ues to indicate that the	functionality is always	present	on XSI-confor-
       mant systems.

       _POSIX_FSYNC
	     Implementation supports the File Synchronisation option.

       _POSIX_MAPPED_FILES
	     Implementation supports the Memory	Mapped Files option.

       _POSIX_MEMORY_PROTECTION
	     Implementation supports the Memory	Protection option.

   Execution-time Symbolic Constants
       If  any	of  the	 following  constants  are  not	 defined in the	header
       <unistd.h>, the value varies depending on the file to which it  is  ap-
       plied.

       If  any	of the following constants are defined to have value -1	in the
       header <unistd.h>, the implementation will not provide  the  option  on
       any  file;  if  any  are	 defined  to have a value other	than -1	in the
       header <unistd.h>, the implementation will provide the  option  on  all
       applicable files.

       All  of	the following constants, whether defined in <unistd.h> or not,
       may be queried with respect to a	specific file using the	pathconf()  or
       fpathconf() functions.

       _POSIX_ASYNC_IO
	     Asynchronous  input or output operations may be performed for the
	     associated	file.

       _POSIX_PRIO_IO
	     Prioritized input or output operations may	be performed  for  the
	     associated	file.

       _POSIX_SYNC_IO
	     Synchronized  input or output operations may be performed for the
	     associated	file.

   Constants for Functions
       The following constant is defined:

       NULL  Null pointer.

       The following symbolic constants	are defined for	 the  access(2)	 func-
       tion:

       R_OK  Test for read permission.

       W_OK  Test for write permission.

       X_OK  Test for execute (search) permission.

       F_OK  Test  for	existence of file. The constants F_OK, R_OK, W_OK, and
	     X_OK,   and   the	 expressions   R_OK|W_OK,    R_OK|X_OK,	   and
	     R_OK|W_OK|X_OK all	have distinct values.

       The  following  symbolic	constants are defined for the  lockf(3C) func-
       tion:

       F_ULOCK
	     Unlock a previously locked	region.

       F_LOCK
	     Lock a region for exclusive use.

       F_TLOCK
	     Test and lock a region for	exclusive use.

       F_TEST
	     Test a region for other processes locks.

       The following symbolic constants	are defined for	the  lseek(2) and  fc-
       ntl(2) functions	(they have distinct values):

       SEEK_SET
	     Set file offset to	offset.

       SEEK_CUR
	     Set file offset to	current	plus offset.

       SEEK_END
	     Set file offset to	EOF plus offset.

       The  following symbolic constants are defined for the confstr(3C) func-
       tion for	both SPARC and IA:

       _CS_LFS64_CFLAGS			 _CS_LFS64_LDFLAGS
       _CS_LFS64_LIBS			 _CS_LFS64_LINTFLAGS
       _CS_LFS_CFLAGS			 _CS_LFS_LDFLAGS
       _CS_LFS_LIBS			 _CS_LFS_LINTFLAGS
       _CS_PATH				 _CS_XBS5_ILP32_OFF32_CFLAGS
       _CS_XBS5_ILP32_OFF32_LDFLAGS	 _CS_XBS5_ILP32_OFF32_LIBS
       _CS_XBS5_ILP32_OFF32_LINTFLAGS	 _CS_XBS5_ILP32_OFFBIG_CFLAGS
       _CS_XBS5_ILP32_OFFBIG_LDFLAGS	 _CS_XBS5_ILP32_OFFBIG_LIBS
       _CS_XBS5_ILP32_OFFBIG_LINTFLAGS

       The followwing symbolic constants are defined for the  confstr()	 func-
       tion for	SPARC only:

       _CS_XBS5_LP64_OFF64_CFLAGS     _CS_XBS5_LP64_OFF64_LDFLAGS
       _CS_XBS5_LP64_OFF64_LIBS	      _CS_XBS5_LP64_OFF64_LINTFLAGS
       _CS_XBS5_LPBIG_OFFBIG_CFLAGS   _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
       _CS_XBS5_LPBIG_OFFBIG_LIBS     _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS

       The  following symbolic constants are defined for the sysconf(3C) func-
       tion:

       _SC_2_C_BIND		     _SC_2_C_DEV
       _SC_2_C_VERSION		     _SC_2_FORT_DEV
       _SC_2_FORT_RUN		     _SC_2_LOCALEDEF
       _SC_2_SW_DEV		     _SC_2_UPE
       _SC_2_VERSION		     _SC_AIO_LISTIO_MAX
       _SC_AIO_MAX		     _SC_AIO_PRIO_DELTA_MAX
       _SC_ARG_MAX		     _SC_ASYNCHRONOUS_IO
       _SC_ATEXIT_MAX		     _SC_AVPHYS_PAGES
       _SC_BC_BASE_MAX		     _SC_BC_DIM_MAX
       _SC_BC_SCALE_MAX		     _SC_BC_STRING_MAX
       _SC_CHILD_MAX		     _SC_CLK_TCK
       _SC_COLL_WEIGHTS_MAX	     _SC_DELAYTIMER_MAX
       _SC_EXPR_NEST_MAX	     _SC_FSYNC
	_SC_GETGR_R_SIZE_MAX	     _SC_GETPW_R_SIZE_MAX
       _SC_IOV_MAX		     _SC_JOB_CONTROL
       _SC_LINE_MAX		     _SC_LOGIN_NAME_MAX
       _SC_LOGNAME_MAX		     _SC_MAPPED_FILES
       _SC_MEMLOCK		     _SC_MEMLOCK_RANGE
       _SC_MEMORY_PROTECTION	     _SC_MESSAGE_PASSING
       _SC_MQ_OPEN_MAX		     _SC_MQ_PRIO_MAX
       _SC_NGROUPS_MAX		     _SC_NPROCESSORS_CONF
       _SC_NPROCESSORS_ONLN	     _SC_OPEN_MAX
       _SC_PAGESIZE		     _SC_PAGE_SIZE
       _SC_PASS_MAX		     _SC_PHYS_PAGES
       _SC_PRIORITIZED_IO	     _SC_PRIORITY_SCHEDULING
       _SC_REALTIME_SIGNALS	     _SC_RE_DUP_MAX
       _SC_RTSIG_MAX		     _SC_SAVED_IDS
       _SC_SEMAPHORES		     _SC_SEM_NSEMS_MAX
       _SC_SEM_VALUE_MAX	     _SC_SHARED_MEMORY_OBJECTS
       _SC_SIGQUEUE_MAX		     _SC_STREAM_MAX
       _SC_SYNCHRONIZED_IO	     _SC_THREAD_ATTR_STACKADDR
       _SC_THREAD_ATTR_STACKSIZE     _SC_THREAD_DESTRUCTOR_ITERATIONS
       _SC_THREAD_KEYS_MAX	     _SC_THREAD_PRIO_INHERIT
       _SC_THREAD_PRIO_PROTECT	     _SC_THREAD_PRIORITY_SCHEDULING
       _SC_THREAD_PROCESS_SHARED     _SC_THREADS
       _SC_THREAD_SAFE_FUNCTIONS     _SC_THREAD_STACK_MIN
       _SC_THREAD_THREADS_MAX	     _SC_TIMER_MAX

       _SC_TIMERS		     _SC_TTY_NAME_MAX
       _SC_TZNAME_MAX		     _SC_VERSION
       _SC_XBS5_ILP32_OFF32	     _SC_XBS5_ILP32_OFFBIG
       _SC_XBS5_LP64_OFF64	     _SC_XBS5_LPBIG_OFFBIG
       _SC_XOPEN_CRYPT		     _SC_XOPEN_ENH_I18N
       _SC_XOPEN_SHM		     _SC_XOPEN_UNIX
       _SC_XOPEN_VERSION	     _SC_XOPEN_XCU_VERSION

       The two constants _SC_PAGESIZE and _SC_PAGE_SIZE	may be defined to have
       the same	value.

       The following symbolic constants	are defined for	the fpathconf(2) func-
       tion:

       _PC_ASYNC_IO		     _PC_CHOWN_RESTRICTED
       _PC_FILESIZEBITS		     _PC_LINK_MAX
       _PC_MAX_CANON		     _PC_MAX_INPUT
       _PC_NAME_MAX		     _PC_NO_TRUNC
       _PC_PATH_MAX		     _PC_PIPE_BUF
       _PC_PRIO_IO		     _PC_SYNC_IO
       _PC_VDISABLE		     _PC_XATTR_ENABLED
       _PC_XATTR_EXISTS

       The following symbolic constants	are defined for	file streams:

       STDIN_FILENO
	     File number (0) of	stdin.

       STDOUT_FILENO
	     File number (1) of	stout.

       STDERR_FILENO
	     File number (2) of	stderr.	The following pathnames	are defined:

       GF_PATH
	     Pathname of the group file.

       PF_PATH
	     Pathname of the passwd file.

SEE ALSO
       access(2),  exec(2),  fcntl(2),	fpathconf(2),  lseek(2),  confstr(3C),
       lockf(3C), sysconf(3C), termios(3C), group(4), passwd(4), standards(5),
       termio(7I)

SunOS 5.9			  1 Aug	2001			 unistd(3HEAD)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=unistd&sektion=3head&manpath=SunOS+5.9>

home | help