.\" (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de) .\" This file can be distributed under the terms of the GNU General Public .\" License. .\" Modified Wed Jul 28 11:12:26 1993 by Rik Faith (faith@cs.unc.edu) .TH FPATHCONF 3 "April 4, 1993" "GNU" "Linux Programmer's Manual" .SH NAME fpathconf, pathconf \- get configuration values for files .SH SYNOPSIS .nf .B #include .sp .BI "long fpathconf(int " filedes ", int " name ");" .nl .BI "long pathconf(char *" path ", int " name ");" .fi .SH DESCRIPTION .B fpathconf() gets a value for the configuration option .I name for the open file descriptor .IR filedes . .PP .B pathconf() gets a value for configuration option .I name for the file name .IR path . .PP The corresponding macros defined in .B minimum values; if an application wants to take advantage of values which may change, a call to .B fpathconf() or .B pathconf() can be made, which may yield more liberal results. .PP Setting .I name equal to one of the following constants returns the following configuration options: .TP .B _PC_LINK_MAX returns the maximum number of links to the file. If .I filedes or .I path refer to a directory, then the value applies to the whole directory. The corresponding macro is .BR _POSIX_LINK_MAX . .TP .B _PC_MAX_CANON returns the maximum length of a formatted input line, where .I filedes or .I path must refer to a terminal. The corresponding macro is .BR _POSIX_MAX_CANON . .TP .B _PC_MAX_INPUT returns the maximum length of an input line, where .I filedes or .I path must refer to a terminal. The corresponding macro is .BR _POSIX_MAX_INPUT . .TP .B _PC_NAME_MAX returns the maximum length of a filename in the directory .I path or .IR filedes . the process is allowed to create. .BR _POSIX_MAX_ . .TP .B _PC_PATH_MAX returns the maximum length of a relative pathname when .I path or .I filedes is the current working directory. The corresponding macro is _POSIX_PATH_MAX. .TP .B _PC_PIPE_BUF returns the size of the pipe buffer, where .I filedes must refer to a pipe or FIFO and .I path must refer to a FIFO. The corresponding macro is .BR _POSIX_PIPE_BUF . .TP .B _PC_CHOWN_RESTRICTED returns nonzero if the .BR chown (2) call may not be used on this file. If .I filedes or .I path refer to a directory, then this applies to all files in that directory. The corresponding macro is .BR _POSIX_CHOWN_RESTRICTED . .TP .B _PC_NO_TRUNC returns nonzero if accessing filenames longer than .B _POSIX_NAME_MAX generates an error. The corresponding macro is .BR _POSIX_NO_TRUNC . .TP .B _PC_VDISABLE returns nonyero if special character processing can be disabled, where .I filedes or .I path must refer to a terminal. .SH "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 .I errno is unchanged. If there is an error, \-1 is returned, and .I errno is set to reflect the nature of the error. .SH "CONFORMS TO" POSIX.1 Files with name lengths longer than the value returned for .I name equal to .B _PC_NAME_MAX may exist in the given directory. .PP Some returned vaules may be huge; they are not suitable for allocating memory. .SH SEE ALSO .BR getconf "(1), " statfs "(2), " open "(2), " sysconf (3)