isfdtype(3) проверяет тип файла файлового дескриптора

ОБЗОР

#include <sys/stat.h>
#include <sys/socket.h>
int isfdtype(int fd, int fdtype);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

isfdtype():

Начиная с glibc 2.20:
_DEFAULT_SOURCE
До glibc 2.20:
_BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ

Функция isfdtype() проверяет ссылается ли файловый дескриптор fd на файл с типом fdtype. В аргументе fdtype указывается одна из констант S_IF*, определённых в <sys/stat.h> и описанных в stat(2) (например, S_IFREG).

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

Функция isfdtype() возвращает 1, если файловый дескриптор fd ссылается на файл с типом fdtype и 0, если нет. При ошибке возвращается -1 и в errno содержится код ошибки.

ОШИБКИ

Функция isfdtype() может завершаться с теми же ошибками что и fstat(3).

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

Функция isfdtype() отсутствует в каком-либо стандарте, но появлялась в черновике POSIX.1g. Она есть в OpenBSD и Tru64 UNIX (требуется заголовочный файл <sys/stat.h>, согласно черновику POSIX.1g), и, возможно, в других системах.

ЗАМЕЧАНИЯ

В переносимых программах следует использовать fstat(3).