fpathconf, pathconf - obtiene valores de configuración para
ficheros
#include <unistd.h>
long fpathconf(int descf, int nombre);
long pathconf(const char *camino, int nombre);
fpathconf() obtiene un valor para la opción de
configuración nombre para el descriptor de fichero abierto
descf.
pathconf() obtiene un valor para la opción de
configuración nombre para el nombre de fichero
camino.
Las correspondientes macros definidas en <unistd.h>
son valores mínimos; si una aplicación quiere enterarse con
seguridad de valores que pueden cambiar, puede hacer una llamada a
fpathconf() o a pathconf() obteniendo así resultados
más liberales.
Hacer nombre igual a una de las siguientes constantes
devuelve las siguientes opciones de configuración:
- _PC_LINK_MAX
- devuelve el número máximo de enlaces al fichero. Si
descf o camino se refieren a un directorio, entonces el
valor se aplica al directorio entero. La macro correspondiente es
_POSIX_LINK_MAX.
- _PC_MAX_CANON
- devuelve la longitud máxima de una línea de entrada
formateada, donde descf o camino deben referirse a una
terminal. La macro correspondiente es _POSIX_MAX_CANON.
- _PC_MAX_INPUT
- devuelve la longitud máxima de una línea de entrada, donde
descf o camino deben referirse a una terminal. La macro
correspondiente es _POSIX_MAX_INPUT.
- _PC_NAME_MAX
- devuelve la máxima longitud de un nombre de fichero en el
directorio camino o descf que el proceso es capaz de crear.
La macro correspondiente es _POSIX_NAME_MAX.
- _PC_PATH_MAX
- devuelve la máxima longitud de un nombre de camino relativo donde
camino o descf es el directorio de trabajo. La macro
correspondiente es _POSIX_PATH_MAX.
- _PC_PIPE_BUF
- devuelve el tamaño del búfer de interconexión, donde
descf debe referirse a una interconexión o FIFO y
camino debe referirse a un fichero FIFO. La macro correspondiente
es _POSIX_PIPE_BUF.
- _PC_CHOWN_RESTRICTED
- devuelve no-cero si la llamada chown(2) no puede emplearse en este
fichero. Si descf o camino se refieren a un directorio,
entonces esto se aplica a todos los ficheros de dicho directorio. La macro
correspondiente es _POSIX_CHOWN_RESTRICTED.
- _PC_NO_TRUNC
- devuelve no-cero si acceder a nombres de ficheros de longitud mayor que
_POSIX_NAME_MAX genera un error. La macro correspondiente es
_POSIX_NO_TRUNC.
- _PC_VDISABLE
- devuelve no-cero si se puede inhabilitar el procesamiento de caracteres
especiales, donde descf o camino deben referirse a una
terminal.
Se devuelve el límite, si es que existe. Si el sistema no
tiene un límite para el recurso pedido, se devuelve -1 y errno
permanece inalterado. Si hay un error, se devuelve -1 y se pone un valor en
errno tal que refleje la naturaleza del error.
Pueden existir en el directorio dado ficheros cuyos nombres sean
de longitud mayor que el valor devuelto para nombre igual a
_PC_NAME_MAX.
Algunos valores devueltos pueden ser enormes; no son adecuados
para pedir memoria.