👤
Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:
Select Section of Man Page:
Select Man Page Repository:

OpenSolaris 2009.06 - man page for fpathconf (opensolaris section 2)

fpathconf(2)				   System Calls 			     fpathconf(2)

NAME
       fpathconf, pathconf - get configurable pathname variables

SYNOPSIS
       #include <unistd.h>

       long fpathconf(int fildes, int name);

       long pathconf(const char *path, int name);

DESCRIPTION
       The  fpathconf()  and  pathconf()  functions determine the current value of a configurable
       limit or option ( variable ) that is associated with a file or directory.

       For pathconf(), the path argument points to the pathname of a file or directory.

       For fpathconf(), the fildes argument is an open file descriptor.

       The name argument represents the variable to be queried relative to that  file  or  direc-
       tory. The variables in the following table come from <limits.h> or <unistd.h> and the sym-
       bolic constants, defined in <unistd.h>, are the corresponding values used for name:

       +---------------------------+------------------------+--------------+
       |	 Variable	   |	 Value of name	    |	 Notes	   |
       +---------------------------+------------------------+--------------+
       |{ACL_ENABLED}		   | _PC_ACL_ENABLED	    | 10	   |
       +---------------------------+------------------------+--------------+
       |{FILESIZEBITS}		   | _PC_FILESIZEBITS	    | 3,4	   |
       +---------------------------+------------------------+--------------+
       |{LINK_MAX}		   | _PC_LINK_MAX	    | 1 	   |
       +---------------------------+------------------------+--------------+
       |{MAX_CANON}		   | _PC_MAX_CANON	    | 2 	   |
       +---------------------------+------------------------+--------------+
       |{MAX_INPUT}		   | _PC_MAX_INPUT	    | 2 	   |
       +---------------------------+------------------------+--------------+
       |{MIN_HOLE_SIZE} 	   | _PC_MIN_HOLE_SIZE	    | 11	   |
       +---------------------------+------------------------+--------------+
       |{NAME_MAX}		   | _PC_NAME_MAX	    | 3, 4	   |
       +---------------------------+------------------------+--------------+
       |{PATH_MAX}		   | _PC_PATH_MAX	    | 4,5	   |
       +---------------------------+------------------------+--------------+
       |{PIPE_BUF}		   | _PC_PIPE_BUF	    | 6 	   |
       +---------------------------+------------------------+--------------+
       |{POSIX_ALLOC_SIZE_MIN}	   | _PC_ALLOC_SIZE_MIN     |		   |
       +---------------------------+------------------------+--------------+
       |{POSIX_REC_INCR_XFER_SIZE} | _PC_REC_INCR_XFER_SIZE |		   |
       +---------------------------+------------------------+--------------+
       |{POSIX_REC_MAX_XFER_SIZE}  | _PC_REC_MAX_XFER_SIZE  |		   |
       +---------------------------+------------------------+--------------+
       |{POSIX_REC_MIN_XFER_SIZE}  | _PC_REC_MIN_XFER_SIZE  |		   |
       +---------------------------+------------------------+--------------+
       |{POSIX_REC_XFER_ALIGN}	   | _PC_REC_XFER_ALIGN     |		   |
       +---------------------------+------------------------+--------------+
       |{SYMLINK_MAX}		   | _PC_SYMLINK_MAX	    | 4, 9	   |
       +---------------------------+------------------------+--------------+
       |{XATTR_ENABLED} 	   | _PC_XATTR_ENABLED	    | 1 	   |
       +---------------------------+------------------------+--------------+
       |{XATTR_EXISTS}		   | _PC_XATTR_EXISTS	    | 1 	   |
       +---------------------------+------------------------+--------------+
       |_POSIX_CHOWN_RESTRICTED    | _PC_CHOWN_RESTRICTED   | 7 	   |
       +---------------------------+------------------------+--------------+
       |_POSIX_NO_TRUNC 	   | _PC_NO_TRUNC	    | 3, 4	   |
       +---------------------------+------------------------+--------------+
       |_POSIX_VDISABLE 	   | _PC_VDISABLE	    | 2 	   |
       +---------------------------+------------------------+--------------+
       |_POSIX_ASYNC_IO 	   | _PC_ASYNC_IO	    | 8 	   |
       +---------------------------+------------------------+--------------+
       |_POSIX_PRIO_IO		   | _PC_PRIO_IO	    | 8 	   |
       +---------------------------+------------------------+--------------+
       |_POSIX_SYNC_IO		   | _PC_SYNC_IO	    | 8 	   |
       +---------------------------+------------------------+--------------+

       Notes:

	   1.	  If path or fildes refers to a directory, the	value  returned  applies  to  the
		  directory itself.

	   2.	  If  path or fildes does not refer to a terminal file, it is unspecified whether
		  an implementation supports an association of the variable name with the  speci-
		  fied file.

	   3.	  If  path  or	fildes refers to a directory, the value returned applies to file-
		  names within the directory.

	   4.	  If path or fildes does not refer to a directory, it is unspecified  whether  an
		  implementation  supports an association of the variable name with the specified
		  file.

	   5.	  If path or fildes refers to a directory, the	value  returned  is  the  maximum
		  length  of  a  relative  pathname  when  the specified directory is the working
		  directory.

	   6.	  If path refers to a FIFO, or fildes  refers  to  a  pipe  or	FIFO,  the  value
		  returned applies to the referenced object. If path or fildes refers to a direc-
		  tory, the value returned applies to any FIFO that  exists  or  can  be  created
		  within the directory. If path or fildes refers to any other type of file, it is
		  unspecified whether an implementation supports an association of  the  variable
		  name with the specified file.

	   7.	  If  path  or	fildes	refers	to a directory, the value returned applies to any
		  files, other than directories, that exist or can be created within  the  direc-
		  tory.

	   8.	  If path or fildes refers to a directory, it is unspecified whether an implemen-
		  tation supports an association of the variable name with the specified file.

	   9.	  If path or fildes refers to a directory, the	value  returned  is  the  maximum
		  length of the string that a symbolic link in that directory can contain.

	   10.	  If  path or fildes refers to a file or directory in a file system that supports
		  ACLs, the value returned is the bitwise inclusive OR	of  the  following  flags
		  associated  with  ACL  types	supported  by  the  file  system;  otherwise 0 is
		  returned.

		  _ACL_ACE_ENABLEDThe file system supports ACE ACLs.

	   _ACL_ACLENT_ENABLED	  The file system supports UFS aclent ACLs.

	   11.	  If a filesystem supports the reporting of holes (see lseek(2),  pathconf()  and
		  fpathconf()  return  a  positive  number  that represents the minimum hole size
		  returned in bytes. The offsets of holes returned will be aligned to  this  same
		  value.  A special value of 1 is returned if the filesystem does not specify the
		  minimum hole size but still reports holes.

RETURN VALUES
       If name is an invalid value, both pathconf() and fpathconf() return -1 and errno is set to
       indicate the error.

       If  the	variable corresponding to name has no limit for the path or file descriptor, both
       pathconf() and fpathconf() return -1 without changing errno. If pathconf()  needs  to  use
       path  to  determine  the  value of name and pathconf() does not support the association of
       name with the file specified by path, or if the process did not	have  appropriate  privi-
       leges  to  query the file specified by path, or path does not exist, pathconf() returns -1
       and errno is set to indicate the error.

       If fpathconf() needs to use fildes to determine the value of name and fpathconf() does not
       support	the  association  of  name  with the file specified by fildes, or if fildes is an
       invalid file descriptor, fpathconf() returns -1 and errno is set to indicate the error.

       Otherwise pathconf() or fpathconf() returns the current variable value  for  the  file  or
       directory without changing errno. The value returned will not be more restrictive than the
       corresponding value available to the application when it was compiled with  <limits.h>  or
       <unistd.h>.

ERRORS
       The pathconf() function will fail if:

       EINVAL	 The value of name is not valid.

       ELOOP	 A  loop exists in symbolic links encountered during resolution of the path argu-
		 ment.

       The fpathconf() function will fail if:

       EINVAL	 The value of name is not valid.

       The pathconf() function may fail if:

       EACCES	       Search permission is denied for a component of the path prefix.

       EINVAL	       An association of the variable name with the specified file  is	not  sup-
		       ported.

       ENAMETOOLONG    The length of the path argument exceeds {PATH_MAX} or a pathname component
		       is longer than {NAME_MAX}.

       ENAMETOOLONG    As a result of encountering a symbolic link  in	resolution  of	the  path
		       argument,   the	 length  of  the  substituted  pathname  string  exceeded
		       {PATH_MAX}.

       ENOENT	       A component of path does not name an existing file or  path  is	an  empty
		       string.

       ENOTDIR	       A component of the path prefix is not a directory.

       The fpathconf() function may fail if:

       EBADF	 The fildes argument is not a valid file descriptor.

       EINVAL	 An association of the variable name with the specified file is not supported.

USAGE
       The {SYMLINK_MAX} variable applies only to the fpathconf() function.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Interface Stability	     |Standard			   |
       +-----------------------------+-----------------------------+
       |MT-Level		     |Async-Signal-Safe 	   |
       +-----------------------------+-----------------------------+

SEE ALSO
       lseek(2), confstr(3C), limits.h(3HEAD), sysconf(3C), attributes(5), standards(5)

SunOS 5.11				    1 Apr 2005				     fpathconf(2)


All times are GMT -4. The time now is 12:11 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
×
UNIX.COM Login
Username:
Password:  
Show Password