summaryrefslogtreecommitdiff
path: root/manual/filesys.texi
diff options
context:
space:
mode:
authorsandra <sandra>1991-08-09 17:10:27 +0000
committersandra <sandra>1991-08-09 17:10:27 +0000
commitf9258abcfec9745f3ac7b5b791c052e129ff8636 (patch)
tree0f2aa66a1d3c361c59165e5f6d14fa87d227224e /manual/filesys.texi
parent24549aa12a1a99e956cfc48f5f9b8701d17b1bc3 (diff)
Move configuration stuff to new chapter.
Diffstat (limited to 'manual/filesys.texi')
-rw-r--r--manual/filesys.texi326
1 files changed, 0 insertions, 326 deletions
diff --git a/manual/filesys.texi b/manual/filesys.texi
index 7d41af187c..c7cf1eb30c 100644
--- a/manual/filesys.texi
+++ b/manual/filesys.texi
@@ -22,8 +22,6 @@ setting file attributes, such as access modes and modification times.
the directories themselves.
* File Attributes:: Attributes of individual files.
* Making Special Files:: How to create special files.
-* File System Parameters:: Constants and functions that describe
- various file system limits.
@end menu
@node Working Directory
@@ -1578,327 +1576,3 @@ this file, you must remove the old file explicitly first.
@end table
@end deftypefun
-
-@node File System Parameters
-@section File System Parameters
-
-The POSIX.1 standard specifies a number of symbolic constants that
-represent the values for certain limits related to the file system, such
-as the maximum length of a file name component. However, some of these
-limits might not really be constants in a given implementation. For
-example, in a nonhomogeneous networked environment, files mounted from
-different hosts might be subject to different sets of limitations.
-
-In order to deal with the problem of variable limits, for most of these
-parameters there is one symbolic constant that defines the most
-restrictive limit permissible by the POSIX standard. If the actual
-limit placed by a particular implementation for that parameter is a
-constant, then it defines another constant to represent it. Otherwise,
-the actual limit that applies to a particular file can be requested at
-runtime by calling @code{pathconf} or @code{fpathconf}.
-
-Except for @code{FILENAME_MAX}, which is defined in @file{<stdio.h>},
-definitions for the following symbolic constants appear in the header
-file @file{<limits.h>}. All of these macros expand into integer
-constant values.
-
-@strong{Incomplete:} What does the GNU system do?
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _POSIX_LINK_MAX
-This macro represents the most restrictive limit permitted by POSIX
-for the maximum value of a file's link count. The value of this
-constant is @code{8}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro LINK_MAX
-This is the actual implementation limit corresponding to
-@code{_POSIX_LINK_MAX}, but is defined only if the limit for the
-particular implementation is constant for all files.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _POSIX_MAX_CANON
-This macro represents the most restrictive limit permitted by POSIX
-for the maximum number of bytes in a canonical input line from a
-terminal device. The value of this constant is @code{255}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro MAX_CANON
-This is the actual implementation limit corresponding to
-@code{_POSIX_MAX_CANON}, but is defined only if the limit for the
-particular implementation is constant for all files.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _POSIX_MAX_INPUT
-This macro represents the most restrictive limit permitted by POSIX for
-the maximum number of bytes in a terminal device input queue (or
-typeahead buffer). @xref{Input Modes}. The value of this constant is
-@code{255}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro MAX_INPUT
-This is the actual implementation limit corresponding to
-@code{_POSIX_MAX_INPUT}, but is defined only if the limit for the
-particular implementation is a constant for all files.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _POSIX_NAME_MAX
-This macro represents the most restrictive limit permitted by POSIX for
-the maximum number of bytes in a file name component. The value of this
-constant is @code{14}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro NAME_MAX
-This is the actual implementation limit corresponding to
-@code{_POSIX_NAME_MAX}, but is defined only if the limit for the
-particular implementation is a constant for all files.
-@end defvr
-
-@comment dirent.h
-@comment BSD, GNU
-@defvr Macro MAXNAMLEN
-This is the BSD name for @code{NAME_MAX}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _POSIX_PATH_MAX
-This macro represents the most restrictive limit permitted by POSIX for
-the maximum number of bytes in a file name. The value of this constant
-is @code{255}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro PATH_MAX
-This is the actual implementation limit corresponding to
-@code{_POSIX_PATH_MAX}, but is defined only if the limit for the
-particular implementation is a constant for all files.
-@end defvr
-
-@comment stdio.h
-@comment ANSI
-@defvr {Macro} FILENAME_MAX
-The value of this macro is an integer constant expression that
-represents the maximum length of a file name string.
-
-Unlike @code{PATH_MAX}, this macro is defined even if there is no actual
-limit imposed. In such a case, its value is typically a very large
-number. Don't try to use @code{FILENAME_MAX} as the size of an
-array in which to store a file name! Use dynamic allocation
-(@pxref{Memory Allocation}) instead.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _POSIX_PIPE_BUF
-This macro represents the most restrictive limit permitted by POSIX for
-the maximum number of bytes that can be written atomically to a pipe.
-If multiple processes are writing to the same pipe simultaneously,
-output from different processes might appear in interleaved chunks of
-this size. The value of this constant is @code{512}.
-@end defvr
-
-@comment limits.h
-@comment POSIX.1
-@defvr Macro _PIPE_BUF
-This is the actual implementation limit corresponding to
-@code{_POSIX_PIPE_BUF}, but is defined only if the limit for the
-particular implementation is a constant for all pipes and FIFO files.
-@end defvr
-
-
-There are also these macros which may be defined in @file{<unistd.h>} to
-describe additional characteristics of the file system. If any of these
-macros are not defined at all, then the corresponding parameter depends
-on the file to which it is applied, and you must use the @code{pathconf}
-function at runtime to determine the parameter value. If the value is
-defined to be @code{-1}, then the option does not apply to any file.
-Otherwise, the option applies to all files.
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _POSIX_CHOWN_RESTRICTED
-If this option is enabled, the @code{chown} function is restricted so
-that the only changes permitted to nonprivileged processes is to change
-the group owner of a file to either be the effective group ID of the
-process, or one of its supplementary group IDs. @xref{File Ownership}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _POSIX_NO_TRUNC
-If this option is enabled, file name components longer than @code{NAME_MAX}
-generate an @code{ENAMETOOLONG} error. Otherwise, file name components
-that are too long are silently truncated.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _POSIX_VDISABLE
-This option is only meaningful for files that are terminal devices.
-If it is enabled, then handling for special control characters can
-be disabled individually. @xref{Special Characters}.
-@end defvr
-
-For each of the above parameters, if the value is not a constant
-for all files, you can request the value that applies to a particular
-file using the @code{pathconf} or @code{fpathconf}. These functions
-and the associated @var{parameter} constants are declared in the
-header file @file{<unistd.h>}.
-
-@comment unistd.h
-@comment POSIX.1
-@deftypefun long pathconf (const char *@var{filename}, int @var{parameter})
-This function is used to inquire about the limits that apply to
-the file named @var{filename}.
-
-The @var{parameter} argument can be one of the following:
-
-@table @code
-@item _PC_LINK_MAX
-Return the value corresponding to @code{LINK_MAX}.
-
-@item _PC_MAX_CANON
-Return the value corresponding to @code{MAX_CANON}. The file must be a
-terminal device.
-
-@item _PC_MAX_INPUT
-Return the value corresponding to @code{MAX_INPUT}. The file must be a
-terminal device.
-
-@item _PC_NAME_MAX
-Return the value corresponding to @code{NAME_MAX}. The file must be a
-directory, and the value applies to all files in the directory.
-
-@item _PC_PATH_MAX
-Return the value corresponding to @code{PATH_MAX}. The file must be a
-directory, and the value returned reflects the maximum length of a
-relative file name with that file name as the working directory.
-
-@item _PC_PIPE_BUF
-Return the value corresponding to @code{PIPE_BUF}. If the file is
-a pipe or FIFO special file, the value refers to the file itself; otherwise,
-it must be a directory, and the value refers to any FIFO files in that
-directory.
-
-@item _PC_CHOWN_RESTRICTED
-Return the value corresponding to @code{_POSIX_CHOWN_RESTRICTED}.
-If the file is a directory, the value is for any files entered in that
-directory, not the directory itself.
-
-@item _PC_NO_TRUNC
-Return the value corresponding to @code{_POSIX_NO_TRUNC}. The file
-must be a directory and the value applies to all files in the directory.
-
-@item _PC_VDISABLE
-Return the value corresponding to @code{_POSIX_VDISABLE}. The file
-must be a terminal device.
-@end table
-
-The normal return value from @code{pathconf} is the value you requested.
-A value of @code{-1} is returned both if the implementation does not
-impose a limit, and in case of an error. In the former case, @code{errno}
-is not set, while in the latter case, @code{errno} is set to indicate
-the cause of the problem. Besides the usual file name syntax errors
-(@pxref{File Name Errors}), the following error conditions are defined
-for this function:
-
-@table @code
-@item EINVAL
-The value of @var{parameter} is invalid, or the implementation doesn't
-support the @var{parameter} for the specific file.
-@end table
-@end deftypefun
-
-@comment unistd.h
-@comment POSIX.1
-@deftypefun long fpathconf (int @var{filedes}, int @var{parameter})
-This is just like @code{pathconf} except that an open file descriptor
-is used to specify the file for which information is requested, instead
-of a file name.
-
-The following @code{errno} error conditions are defined for this function:
-
-@table @code
-@item EBADF
-The @var{filedes} argument is not a valid file descriptor.
-
-@item EINVAL
-The value of @var{parameter} is invalid, or the implementation doesn't
-support the @var{parameter} for the specific file.
-@end table
-@end deftypefun
-
-These symbolic constants are defined for use as the @var{parameter}
-argument to @code{pathconf} and @code{fpathconf}. The values are
-all integer constants.
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_LINK_MAX
-Inquire about the parameter corresponding to @code{LINK_MAX}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_MAX_CANON
-Inquire about the parameter corresponding to @code{MAX_CANON}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_MAX_INPUT
-Inquire about the parameter corresponding to @code{MAX_INPUT}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_NAME_MAX
-Inquire about the parameter corresponding to @code{NAME_MAX}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_PATH_MAX
-Inquire about the parameter corresponding to @code{PATH_MAX}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_PIPE_BUF
-Inquire about the parameter corresponding to @code{PIPE_BUF}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_CHOWN_RESTRICTED
-Inquire about the parameter corresponding to @code{_POSIX_CHOWN_RESTRICTED}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_NO_TRUNC
-Inquire about the parameter corresponding to @code{_POSIX_NO_TRUNC}.
-@end defvr
-
-@comment unistd.h
-@comment POSIX.1
-@defvr Macro _PC_VDISABLE
-Inquire about the parameter corresponding to @code{_POSIX_VDISABLE}.
-@end defvr