endrpcent(3) возвращают

Other Alias

getrpcent, getrpcbyname, getrpcbynumber, setrpcent

ОБЗОР

#include <netdb.h>
struct rpcent *getrpcent(void);
struct rpcent *getrpcbyname(const char *name);
struct rpcent *getrpcbynumber(int number);
void setrpcent(int stayopen);
void endrpcent(void);

ОПИСАНИЕ

Функции getrpcent(), getrpcbyname() и getrpcbynumber() возвращают указатель на объект с описанной ниже структурой, содержащую разделённую на поля запись из базы данных номеров программы RPC.

struct rpcent {
    char  *r_name;     /* имя сервера для этой программы RPC */
    char **r_aliases;  /* список псевдонимов */
    long   r_number;   /* номер программы RPC */
};

Члены структуры:

r_name
Имя сервера для этой программы RPC.
r_aliases
Список альтернативных имён программы RPC, завершающийся NULL.
r_number
Номер программы RPC для этой службы.

Функция getrpcent() считывает следующую запись из базы данных. При необходимости будет открыто подключение к базе.

Функция setrpcent() открывает соединение к базе и устанавливает следующую запись к первой записи. Если stayopen не равен нулю, то подключение к базе между вызовами нескольких функций getrpc*() не будет закрыто.

Функция endrpcent() закрывает подключение к базе.

Функции getrpcbyname() и getrpcbynumber() выполняют последовательный поиск от начала файла до нахождения имени программы RPC, её номера или конца файла.

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

При успешном выполнении getrpcent(), getrpcbyname() и getrpcbynumber() возвращают указатель на статически выделенную структуру rpcent. При ошибке или EOF возвращается NULL.

ФАЙЛЫ

/etc/rpc
база данных программных номеров RPC

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).
ИнтерфейсАтрибутЗначение
getrpcent(), getrpcbyname(),
getrpcbynumber()
безвредность в нитяхнебезопасно (MT-Unsafe)
setrpcent(), endrpcent() безвредность в нитяхбезвредно (MT-Safe locale)

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

Нет в POSIX.1. Присутствует в BSD, Solaris и многих других системах.

ДЕФЕКТЫ

Вся информация располагается в статической области, поэтому для сохранения должна быть скопирована.