getrpcent, getrpcbyname, getrpcbynumber, setrpcent, endrpcent − odczytanie wpisu dotyczącego RPC
#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);
Funkcje getrpcent(), getrpcbyname() i getrpcbynumber() zwracają wskaźnik do obiektu o podanej niżej strukturze, zawierającego pola otrzymane w wyniku rozłożenia wpisu bazy danych programów RPC.
struct rpcent {
char *r_name; /* nazwa serwera dla programu RPC */
char **r_aliases; /* lista aliasów */
long r_number; /* numer programu RPC */
};
Polami tej struktury są:
r_name |
Nazwa serwera dla danego programu RPC. |
||
r_aliases |
Zakończona NULL−em lista alternatywnych nazw tego programu RPC. |
||
r_number |
Numer programu RPC dla danej usługi. |
Funkcja getrpcent() odczytuje następny wpis z bazy danych. Połączenie do bazy danych jest otwierane, jeśli jest to potrzebne.
Funkcja setrpcent() otwiera połączenie do bazy danych i ustawia wskaźnik następnego wpisu na pierwszy wpis. Jeśli stayopen jest niezerowe, to połączenie do bazy danych nie będzie zamykane pomiędzy wywołaniami funkcji getrpc*().
Funkcja endrpcent() zamyka połączenie do bazy danych.
getrpcbyname() i getrpcbynumber() przeszukują sekwencyjnie plik, zaczynając od jego początku, aż do napotkania pasującej nazwy lub numeru programu RPC albo do napotkania końca pliku.
Jeśli zakończą się pomyślnie, funkcje getrpcent(), getrpcbyname() i getrpcbynumber() zwracają wskaźnik do statycznie alokowanego obiektu o strukturze rpcent. W razie napotkania końca pliku lub wystąpienia błędu zwracane jest NULL.
/etc/rpc
Baza numerów programów RPC.
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Nie występuje w POSIX.1. Obecna w systemach BSD, Solaris i wielu innych.
Wszystkie informacje są umieszczane w statycznym obszarze pamięci, zatem muszą zostać skopiowane, jeśli mają być zachowane.
getrpcent_r(3), rpc(5), rpcinfo(8), ypserv(8)
Angielska wersja tej strony pochodzi z wydania 4.07 projektu Linux man−pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man−pages/.
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Andrzej Krzysztofowicz <ankry AT mif DOT pg DOT gda DOT pl>, Robert Luberda <robert AT debian DOT org> i Michał Kułach <michal DOT kulach AT gmail DOT com>.
Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 4.07 oryginału.