.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993, David Metcalfe .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH getservent 3 "8 февраля 2026 г." "Linux man\-pages 6.18" .SH НАИМЕНОВАНИЕ getservent, getservbyname, getservbyport, setservent, endservent \- возвращают запись о службе .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP,\ \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .P \fBstruct servent *getservent(void);\fP .P \fBstruct servent *getservbyname(const char *\fP\fIname\fP\fB, const char *\fP\fIproto\fP\fB);\fP \fBstruct servent *getservbyport(int \fP\fIport\fP\fB, const char *\fP\fIproto\fP\fB);\fP .P \fBvoid setservent(int \fP\fIstayopen\fP\fB);\fP \fBvoid endservent(void);\fP .fi .SH ОПИСАНИЕ Функция \fBgetservent\fP() считывает следующую запись из файла, содержащего базу служб (смотрите \fBservices\fP(5)), и возвращает структуру \fIservent\fP, содержащую поля из этой записи. При необходимости будет открыто подключение к базе. .P Функция \fBgetservbyname\fP() возвращает структуру \fIservent\fP элемента из базы данных, который совпадает со службой \fIname\fP и использующей протокол \fIproto\fP. Если значение \fIproto\fP равно NULL, то подойдёт любой протокол. При необходимости будет открыто подключение к базе. .P Функция \fBgetservbyport\fP() возвращает структуру \fIservent\fP элемента из базы данных, который совпадает с портом \fIport\fP (значение имеет сетевой порядок байт) и использующей протокол \fIproto\fP. Если значение \fIproto\fP равно NULL, то подойдёт любой протокол. При необходимости будет открыто подключение к базе. .P Функция \fBsetservent\fP() открывает соединение к базе и устанавливает следующую запись к первой записи. Если \fIstayopen\fP не равен нулю, то подключение к базе между вызовами нескольких функций \fBgetserv*\fP() не будет закрыто. .P Функция \fBendservent\fP() закрывает подключение к базе. .P Структура \fIservent\fP определена в \fI\fP таким образом: .P .in +4n .EX struct servent { char *s_name; /* официальное имя службы */ char **s_aliases; /* список псевдонимов */ int s_port; /* номер порта */ char *s_proto; /* используемый протокол */ } .EE .in .P Члены структуры \fIservent\fP: .TP \fIs_name\fP Официальное название службы. .TP \fIs_aliases\fP Список альтернативных имён службы, завершающийся NULL. .TP \fIs_port\fP Номер порта службы, задаваемый в сетевом порядке байт. .TP \fIs_proto\fP Имя протокола, используемого с данной службой. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" The \fBgetservent\fP(), \fBgetservbyname\fP(), and \fBgetservbyport\fP() functions return a pointer to a statically allocated \fIservent\fP structure, or NULL if an error occurs or the end of the file is reached. .SH ФАЙЛЫ .TP \fI/etc/services\fP файл базы данных служб .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lb lb lbx l l l. Интерфейс Атрибут Значение T{ .na .nh \fBgetservent\fP() T} Безвредность в нитях T{ .na .nh MT\-Unsafe race:servent race:serventbuf locale T} T{ .na .nh \fBgetservbyname\fP() T} Безвредность в нитях T{ .na .nh MT\-Unsafe race:servbyname locale T} T{ .na .nh \fBgetservbyport\fP() T} Безвредность в нитях T{ .na .nh MT\-Unsafe race:servbyport locale T} T{ .na .nh \fBsetservent\fP(), \fBendservent\fP() T} Безвредность в нитях T{ .na .nh MT\-Unsafe race:servent locale T} .TE .P В приведённой выше таблице \fIservent\fP в \fIrace:servent\fP означает, что если в нескольких нитях программы одновременно используются функции \fBsetservent\fP(), \fBgetservent\fP() или \fBendservent\fP(), то может возникнуть состязательность по данным. .SH СТАНДАРТЫ POSIX.1\-2008. .SH ИСТОРИЯ POSIX.1\-2001, 4.3BSD. .SH "СМОТРИТЕ ТАКЖЕ" \fBgetnetent\fP(3), \fBgetprotoent\fP(3), \fBgetservent_r\fP(3), \fBservices\fP(5) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) Azamat Hackimov , Dmitry Bolkhovskikh , Vladislav , Yuri Kozlov и Иван Павлов . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT debian-l10n-russian@lists.debian.org списка рассылки русских переводчиков .ME .