FPATHCONF(3)

НАЗВАНИЕ
fpathconf, pathconf - получают значения параметров настроек для файлов

СИНТАКСИС
#include <unistd.h>

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

ОПИСАНИЕ
fpathconf() получает значение параметра настроек name для открытого описателя файла filedes.

pathconf() получает значение параметра настроек name для имени файла path.

Соответствующий макрос, определенный в <unistd.h>, выдает минимальные значения; если приложение собирается использовать изменяющиеся значения, то необходимо вызывать функции fpathconf() или pathconf(), которые выдают результаты более гибким образом.

Если приравнивать name следующим константам, то выдаются, соответственно, их режимы работы:

_PC_LINK_MAX
    возвращает максимальное количество ссылок на файл. Если filedes или path обращаются к каталогу, то значение применяется ко всему каталогу. Соответствующий макрос - _POSIX_LINK_MAX.

_PC_MAX_CANON
    возвращает максимальную длину отформатированной строки ввода, причем, filedes или path должны обращаться к терминалу. Соответствующий макрос - _POSIX_MAX_CANON.

_PC_MAX_INPUT
    возвращает максимальную длину строки ввода, причем, filedes или path должны обращаться к терминалу. Соответствующий макрос - _POSIX_MAX_INPUT.

_PC_NAME_MAX
    возвращает максимальную длину имени файла в каталоге path или filedes, которую процесс разрешает создать. Соответствующий макрос - _POSIX_NAME_MAX.

_PC_PATH_MAX
    возвращает максимальную длину относительного имени файла, где path или filedes являются текущими рабочими каталогами. Соответствующий макрос - _POSIX_PATH_MAX.

_PC_PIPE_BUF
    возвращает размер буфера каналов, где filedes должно обращаться к каналу или к каналу FIFO, и path должно обращаться к каналу FIFO. Соответствующий макрос - _POSIX_PIPE_BUF.

_PC_CHOWN_RESTRICTED
    возвращает ненулевое значение, если для этого файла вызов chown(2) невозможен. Если filedes или path обращаются к каталогу, то это относится ко всем файлам в этом каталоге. Соответствующий макрос - _POSIX_CHOWN_RESTRICTED.

_PC_NO_TRUNC
    возвращает ненулевое значение, если команда доступа к файловым именам длиннее, чем _POSIX_NAME_MAX , это приводит к ошибке. Соответствующий макрос - _POSIX_NO_TRUNC.

_PC_VDISABLE
    возвращает ненулевое значение, если обработка спецсимволов может быть отключена, при этом filedes или path должны обращаться к терминалу.

ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Возвращаются ограничения, если таковые существуют. Если система не имеет ограничений для требуемого ресурса, то возвращается -1 и переменная errno не изменяется. Если есть ошибка, то возвращается -1, но в переменную errno записывается код ошибки.

СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1

ЗАМЕЧАНИЯ
Файлы, имена которых длиннее, чем значение, возвращаемое для name, и равны _PC_NAME_MAX , могут существовать в текущем каталоге.

Некоторые возвращаемые значения могут быть огромны; не рекомендуется размещать их в памяти.

СМ. ТАКЖЕ
getconf(1), statfs(2), open(2), sysconf(3)