home | help
GETCONF(1)		     General Commands Manual		      GETCONF(1)

NAME
     getconf -- retrieve standard configuration variables

SYNOPSIS
     getconf [-v environment] path_var file
     getconf [-v environment] system_var

DESCRIPTION
     The  getconf  utility  prints the value of a POSIX or X/Open path or system
     configuration variable to the standard output.  If the  specified	variable
     is undefined, the string "undefined" is output.

     The  first  form  of  the	command, with two mandatory arguments, retrieves
     file- and file system-specific configuration variables  using  pathconf(2).
     The  second  form,  with  a single argument, retrieves system configuration
     variables using confstr(3) and sysconf(3), depending on the type  of  vari-
     able.   As  an  extension, the second form can also be used to query static
     limits from <limits.h>.

     All sysconf(3) and pathconf(2) variables use the same name as the	manifest
     constants	defined  in the relevant standard C-language bindings, including
     any leading underscore or prefix.	That is  to  say,  system_var  might  be
     ARG_MAX  or  _POSIX_VERSION, as opposed to the sysconf(3) names _SC_ARG_MAX
     or _SC_POSIX_VERSION.  Variables retrieved from confstr(3) have the leading
     `_CS_' stripped off; thus, _CS_PATH is queried by a system_var of "PATH".

   Programming Environments
     The -v environment option specifies a IEEE Std 1003.1-2001 ("POSIX.1") pro-
     gramming environment under which the values are to be queried.  This option
     currently does nothing, but may in the future be  used  to  select  between
     32-bit  and  64-bit execution environments on platforms which support both.
     Specifying an environment which is not supported on the  current  execution
     platform gives undefined results.

     The standard programming environments are as follows:

	   POSIX_V6_ILP32_OFF32   Exactly  32-bit  integer,  long,  pointer, and
				  file offset.	Supported platforms: None.

	   POSIX_V6_ILP32_OFFBIG  Exactly 32-bit integer, long, and pointer;  at
				  least    64-bit    file   offset.    Supported
				  platforms: IA32, PowerPC.

	   POSIX_V6_LP64_OFF64	  Exactly 32-bit integer; exactly  64-bit  long,
				  pointer,    and    file   offset.    Supported
				  platforms: Alpha, SPARC64.

	   POSIX_V6_LPBIG_OFFBIG  At least 32-bit integer; at least 64-bit long,
				  pointer,   and   file    offset.     Supported
				  platforms: None.

     The command:

	   getconf POSIX_V6_WIDTH_RESTRICTED_ENVS

     returns a newline-separated list of environments in which the width of cer-
     tain  fundamental	types  is no greater than the width of the native C type
     long.  At present, all programming environments supported by  FreeBSD  have
     this  property.  Several of the confstr(3) variables provide information on
     the necessary compiler and linker flags to use the standard programming en-
     vironments described above.

DIAGNOSTICS
     The getconf utility exits 0 on success, and >0 if an error occurs.  Use  of
     a	system_var or path_var which is completely unrecognized is considered an
     error, causing a diagnostic message to be written to standard  error.   One
     which is known but merely undefined does not result in an error indication.
     The  getconf  utility  recognizes all of the variables defined for IEEE Std
     1003.1-2001 ("POSIX.1"), including those which  are  not  currently  imple-
     mented.

EXAMPLES
     The command:

	   getconf PATH

     will display the system default setting for the PATH environment variable.

     The command:

	   getconf NAME_MAX /tmp

     will display the maximum length of a filename in the /tmp directory.

     The command:

	   getconf -v POSIX_V6_LPBIG_OFFBIG LONG_MAX

     will   display   the   maximum   value   of   the	 C   type  long  in  the
     POSIX_V6_LPBIG_OFFBIG programming environment, if the system supports  that
     environment.

SEE ALSO
     pathconf(2), confstr(3), sysconf(3)

STANDARDS
     The  getconf  utility is expected to be compliant with IEEE Std 1003.1-2001
     ("POSIX.1").

HISTORY
     The getconf utility first appeared in FreeBSD 5.0.

AUTHORS
     Garrett A. Wollman <wollman@lcs.mit.edu>

FreeBSD 4.8		       September 18, 2002		      GETCONF(1)

home | help