Получить служебную запись по порту
#include <netdb.h>struct servent * getservbyport( int port,const char *proto );
NULL
, или протокол службы.libsocket
Функция getservbyport() получает запись для заданного порта из базы данных сетевых служб,, /etc/services. Данная функция возвращает указатель на struct servent, содержащую определенные поля строки в базе данных сетевых служб.
Функция setservent() открывает и перематывает файл. При передаче ненулевого аргумента stayopen в setservent(), база данных служб не закрывается после каждого вызова getservbyname() или getservbyport().
Функция getservbyport() последовательно производит поиск от начала файла до тех пор, пока не будет найдено подходящее имя протокола или номер порта, или пока не встретится EOF
. Если указано имя протокола (не NULL
), результаты поиска также должны соответствовать и протоколу.
Указатель не корректную структуру struct servent или NULL
в случае ошибки.
POSIX 1003.1
Данная функция использует статические данные; в случае, если данные будут необходимы для использования в будущем, необходимо скопировать их, прежде чем любые последующие вызовы перезапишут эти данные.
endservent(), getservbyname(), getservent(), struct servent, setservent()
/etc/services в Справочнике по Утилитам
Предыдущий раздел: Описание API сетевой библиотеки