getrpcent, getrpcbyname, getrpcbynumber, setrpcent, endrpcent - odczytanie wpisu
dotyczącego RPC
Standardowa biblioteka C (
libc,
-lc)
#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).
Interfejs |
Atrybut |
Wartość |
getrpcent(), getrpcbyname(), getrpcbynumber() |
Bezpieczeństwo wątkowe |
MT-Unsafe |
setrpcent(), endrpcent() |
Bezpieczeństwo wątkowe |
MT-Safe locale |
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)
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Andrzej Krzysztofowicz <
[email protected]>, Robert
Luberda <
[email protected]> i Michał Kułach
<
[email protected]>
Niniejsze tłumaczenie jest wolną dokumentacją.
Bliższe informacje o warunkach licencji można uzyskać
zapoznając się z
GNU
General Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy
zgłaszać na adres listy dyskusyjnej
[email protected]