Получить запись протокола по имени
#include <netdb.h>struct protoent * getprotobyname( const char *name );
libsocket
Функция getprotobyname() получает запись для данного name из базы данных протоколов, /etc/protocols
. Данная функция возвращает указатель на структуру struct protoent, которая содержит определенные поля в строке из базы данных сетевых протоколов.
Функция setprotoent() открывает и перематывает файл. При передаче ненулевого аргумента stayopen в setprotoent(), база данных протоколов не закрывается после каждого вызова getprotobyname() или getprotobynumber().
Функции getprotobyname() и getprotobynumber() последовательно выполняют поиск от начала файла до тех пор, пока не будет найдено совпадающее имя протокола или номер протокола, или пока не будет обнаружен EOF
.
Указатель не корректную структуру struct protoent или NULL
в случае ошибки.
POSIX 1003.1
Данная функция использует статические данные; в случае, если данные будут необходимы для использования в будущем, необходимо скопировать их, прежде чем любые последующие вызовы перезапишут эти данные.
В настоящее время поддерживаются только Интернет-протоколы.
endprotoent(), getprotobynumber(), getprotoent(), struct protoent, setprotoent()
/etc/protocols в Справочнике по Утилитам
Предыдущий раздел: Описание API сетевой библиотеки