Получить значение размера буфера для канала
#include <unistd.h>long pathconf( const char *path,int name );
libc
Функция pathconf() возвращает значение размера буфера для канала, обозначенного в name, которое связано с именем файла, указанным в path.
Размеры буферов для каналов определены в <confname.h>
, и включают как минимум следующие значения:
-1
), то указывает, что использование функции chown(), а также операция изменения идентификатора группы файла на эффективный идентификатор группы процесса или один из его дополнительных идентификаторов группы ограничены процессом с привилегиями root. -1
) файловая система разрешает удаление ссылки на каталог. -1
) указывает на то, что использование компонентов пути длиннее, чем значение, заданное _PC_NAME_MAX
приведет к ошибке. -1
), то для файла поддерживается приоритетный ввод-вывод. -1
), то для файла поддерживается синхронный ввод-вывод. -1
), то указывает на символьное значение, которое можно использовать для индивидуального отключения специальных управляющих символов в управляющей структуре struct termios. Запрошенное значение размера буфера для канала
Если возникла ошибка функция возвращает -1
, код ошибки записывается в errno.
#include <stdio.h>#include <stdlib.h>#include <unistd.h>int main( void ){long value;value = pathconf( "/dev/con1", _PC_MAX_INPUT );printf( "Input buffer size is %ld bytes\n", value );return (EXIT_SUCCESS);}
POSIX 1003.1
chown(), confstr(), errno, fpathconf(), sysconf(), struct termios
getconf в Справочнике по утилитам
Предыдущий раздел: Описание API системной библиотеки