fpathconf man page on Solaris

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
Solaris logo
[printable version]

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 directory. The variables in the following table come from
       <limits.h>  or  <unistd.h>  and	the  symbolic  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	      │
       ├────────────────────────────┼──────────────────────────┼──────────────┤
       │_POSIX_TIMESTAMP_RESOLUTION │ _PC_TIMESTAMP_RESOLUTION │ 1	      │
       └────────────────────────────┴──────────────────────────┴──────────────┘

       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 associa‐
		  tion of the variable name with the specified file.

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

	   4.	  If  path  or	fildes	does  not  refer to a directory, it is
		  unspecified whether an implementation supports  an  associa‐
		  tion 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 speci‐
		  fied 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 directory, 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 directory.

	   8.	  If  path  or fildes refers to a directory, it is unspecified
		  whether an implementation 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 num‐
		  ber 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, fpath‐
       conf() 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 argument.

       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 supported.

       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 resolu‐
		       tion of the path argument, the length  of  the  substi‐
		       tuted 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.10			  1 Apr 2005			  fpathconf(2)
[top]

List of man pages available for Solaris

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net