Provided by: manpages-ru-dev_4.26.0-1_all 

НАИМЕНОВАНИЕ
getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - возвращают запись о протоколе
БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)
ОБЗОР
#include <netdb.h>
struct protoent *getprotoent(void);
struct protoent *getprotobyname(const char *name);
struct protoent *getprotobynumber(int proto);
void setprotoent(int stayopen);
void endprotoent(void);
ОПИСАНИЕ
Функция getprotoent() считывает следующую запись из файла, содержащего базу протоколов (смотрите
protocols(5)), и возвращает структуру protoent, содержащую поля из этой записи. При необходимости будет
открыто подключение к базе.
Функция getprotobyname() возвращает структуру protoent элемента из базы данных, который совпадает с
именем протокола name. При необходимости будет открыто подключение к базе.
Функция getprotobynumber() возвращает структуру protoent элемента из базы данных, который совпадает с
номером протокола number. При необходимости будет открыто подключение к базе.
Функция setprotoent() открывает соединение к базе и устанавливает следующую запись к первой записи. Если
stayopen не равен нулю, то подключение к базе между вызовами нескольких функций getproto*() не будет
закрыто.
Функция endprotoent() закрывает подключение к базе.
Структура protoent определена в <netdb.h> таким образом:
struct protoent {
char *p_name; /* официальное имя протокола */
char **p_aliases; /* список псевдонимов */
int p_proto; /* номер протокола */
}
Члены структуры protoent:
p_name Официальное название протокола.
p_aliases
Список альтернативных имён протокола, завершающийся NULL.
p_proto
Номер протокола.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
The getprotoent(), getprotobyname(), and getprotobynumber() functions return a pointer to a statically
allocated protoent structure, or a null pointer if an error occurs or the end of the file is reached.
ФАЙЛЫ
/etc/protocols
файл, содержащий базу протоколов
АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
┌──────────────────────────────┬──────────────────────┬─────────────────────────────────────────────────┐
│ Интерфейс │ Атрибут │ Значение │
├──────────────────────────────┼──────────────────────┼─────────────────────────────────────────────────┤
│ getprotoent() │ Безвредность в нитях │ MT-Unsafe race:protoent race:protoentbuf locale │
├──────────────────────────────┼──────────────────────┼─────────────────────────────────────────────────┤
│ getprotobyname() │ Безвредность в нитях │ MT-Unsafe race:protobyname locale │
├──────────────────────────────┼──────────────────────┼─────────────────────────────────────────────────┤
│ getprotobynumber() │ Безвредность в нитях │ MT-Unsafe race:protobynumber locale │
├──────────────────────────────┼──────────────────────┼─────────────────────────────────────────────────┤
│ setprotoent(), endprotoent() │ Безвредность в нитях │ MT-Unsafe race:protoent locale │
└──────────────────────────────┴──────────────────────┴─────────────────────────────────────────────────┘
В приведённой выше таблице protoent в race:protoent означает, что если в нескольких нитях программы
одновременно используются функции setprotoent(), getprotoent() или endprotoent(), то может возникнуть
состязательность по данным.
СТАНДАРТЫ
POSIX.1-2008.
ИСТОРИЯ
POSIX.1-2001, 4.3BSD.
СМОТРИТЕ ТАКЖЕ
getnetent(3), getprotoent_r(3), getservent(3), protocols(5)
ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>,
Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov
<yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>
Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной
лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.
Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом
разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских
переводчиков.
Справочные страницы Linux 6.9.1 2 мая 2024 г. getprotoent(3)