pathconf(3)


NAME

   fpathconf, pathconf - get configuration values for files

SYNOPSIS

   #include <unistd.h>

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

DESCRIPTION

   fpathconf() gets a value for the configuration option name for the open
   file descriptor fd.

   pathconf() gets a value for configuration option name for the  filename
   path.

   The  corresponding  macros defined in <unistd.h> are minimum values; if
   an application wants to take advantage of values which  may  change,  a
   call  to  fpathconf()  or  pathconf() can be made, which may yield more
   liberal results.

   Setting name equal to  one  of  the  following  constants  returns  the
   following configuration options:

   _PC_LINK_MAX
          returns  the maximum number of links to the file.  If fd or path
          refer to a directory,  then  the  value  applies  to  the  whole
          directory.  The corresponding macro is _POSIX_LINK_MAX.

   _PC_MAX_CANON
          returns  the  maximum length of a formatted input line, where fd
          or path must refer to a terminal.  The  corresponding  macro  is
          _POSIX_MAX_CANON.

   _PC_MAX_INPUT
          returns  the  maximum  length of an input line, where fd or path
          must  refer  to  a  terminal.   The   corresponding   macro   is
          _POSIX_MAX_INPUT.

   _PC_NAME_MAX
          returns  the  maximum length of a filename in the directory path
          or fd that the process is allowed to create.  The  corresponding
          macro is _POSIX_NAME_MAX.

   _PC_PATH_MAX
          returns  the  maximum length of a relative pathname when path or
          fd is the current working directory.  The corresponding macro is
          _POSIX_PATH_MAX.

   _PC_PIPE_BUF
          returns  the  size  of the pipe buffer, where fd must refer to a
          pipe or FIFO and path must refer to a FIFO.   The  corresponding
          macro is _POSIX_PIPE_BUF.

   _PC_CHOWN_RESTRICTED
          returns  nonzero  if  the  chown(2) call may not be used on this
          file.  If fd or path refer to a directory, then this applies  to
          all  files  in  that  directory.   The  corresponding  macro  is
          _POSIX_CHOWN_RESTRICTED.

   _PC_NO_TRUNC
          returns   nonzero   if   accessing   filenames    longer    than
          _POSIX_NAME_MAX  generates an error.  The corresponding macro is
          _POSIX_NO_TRUNC.

   _PC_VDISABLE
          returns nonzero if special character processing can be disabled,
          where fd or path must refer to a terminal.

RETURN VALUE

   The  limit  is  returned, if one exists.  If the system does not have a
   limit for  the  requested  resource,  -1  is  returned,  and  errno  is
   unchanged.   If  there is an error, -1 is returned, and errno is set to
   reflect the nature of the error.

ATTRIBUTES

   For  an  explanation  of  the  terms  used   in   this   section,   see
   attributes(7).

   ┌────────────────────────┬───────────────┬─────────┐
   │InterfaceAttributeValue   │
   ├────────────────────────┼───────────────┼─────────┤
   │fpathconf(), pathconf() │ Thread safety │ MT-Safe │
   └────────────────────────┴───────────────┴─────────┘

CONFORMING TO

   POSIX.1-2001, POSIX.1-2008.

NOTES

   Files  with  name lengths longer than the value returned for name equal
   to _PC_NAME_MAX may exist in the given directory.

   Some returned values may be huge; they are not suitable for  allocating
   memory.

SEE ALSO

   getconf(1), open(2), statfs(2), confstr(3), sysconf(3)

COLOPHON

   This  page  is  part of release 4.09 of the Linux man-pages project.  A
   description of the project, information about reporting bugs,  and  the
   latest     version     of     this    page,    can    be    found    at
   https://www.kernel.org/doc/man-pages/.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.