pathconf(3) получают параметры настроек для файлов

Other Alias

fpathconf

ОБЗОР

#include <unistd.h>


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

ОПИСАНИЕ

fpathconf() получает значение параметра настроек name для открытого дескриптора файла fd.

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

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

При установке значения name в следующие константы возвращаются соответствующие им параметры настройки:

_PC_LINK_MAX
Возвращает максимальное количество ссылок на файл. Если fd или path указывают на каталог, то значение применяется ко всему каталогу. Соответствует макросу _POSIX_LINK_MAX.
_PC_MAX_CANON
Возвращает максимальную длину отформатированной строки ввода, причём, fd или path должны указывать на терминал. Соответствует макросу _POSIX_MAX_CANON.
_PC_MAX_INPUT
Возвращает максимальную длину строки ввода, причём, fd или path должны указывать на терминал. Соответствует макросу _POSIX_MAX_INPUT.
_PC_NAME_MAX
Возвращает максимальную длину имени файла в каталоге path или fd, которую разрешено использовать процессу при создании файла. Соответствует макросу _POSIX_NAME_MAX.
_PC_PATH_MAX
Возвращает максимальную длину относительного имени файла, где path или fd являются текущим рабочим каталогом. Соответствует макросу _POSIX_PATH_MAX.
_PC_PIPE_BUF
Возвращает размер буфера канала, где значение fd должно указывать на канал или FIFO, и path должно указывать на FIFO. Соответствует макросу _POSIX_PIPE_BUF.
_PC_CHOWN_RESTRICTED
Возвращает ненулевое значение, если для этого файла невозможен вызов chown(2). Если fd или path указывают на каталог, то это относится ко всем файлам в этом каталоге. Соответствует макросу _POSIX_CHOWN_RESTRICTED.
_PC_NO_TRUNC
Возвращает ненулевое значение, если при доступе к файловым именам длиннее, чем _POSIX_NAME_MAX, возникает ошибка. Соответствует макросу _POSIX_NO_TRUNC.
_PC_VDISABLE
Возвращает ненулевое значение, если обработка спецсимволов может быть отключена, при этом fd или path должны указывать на терминал.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

Возвращается ограничение, если таковое существует. Если система не имеет ограничения на запрашиваемый ресурс, то возвращается -1 и переменная errno не изменяется. Если есть ошибка, то возвращается -1, и в переменную errno записывается код ошибки.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).
ИнтерфейсАтрибутЗначение
fpathconf(), pathconf() безвредность в нитяхбезвредно (MT-Safe)

СООТВЕТСТВИЕ СТАНДАРТАМ

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

ЗАМЕЧАНИЯ

Файлы, имена которых длиннее, чем значение, возвращаемое для name и равны _PC_NAME_MAX, могут существовать в заданном каталоге.

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