NAZWA¶
getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - odczytanie wpisu
dotyczącego sieci
SKŁADNIA¶
#include <netdb.h>
struct netent *getnetent(void);
struct netent *getnetbyname(const char *name);
struct netent *getnetbyaddr(uint32_t net, int type);
void setnetent(int stayopen);
void endnetent(void);
OPIS¶
Funkcja
getnetent() odczytuje następny wpis z bazy danych sieci i
zwraca strukturę
netent zawierającą pola
powstałe z rozłożenia pól wpisu.
Połączenie do bazy danych jest otwierane, jeśli jest to
potrzebne.
Funkcja
getnetbyname() zwraca strukturę
netent
zawierającą ten wpis z bazy danych, który odpowiada sieci
name.
Funkcja
getnetbyaddr() zwraca strukturę
netent
zawierającą ten wpis z bazy danych, który odpowiada sieci
o numerze
net rodzaju
type. Argument
net musi być
w porządku bajtów lokalnego komputera (host byte order).
Funkcja
setnetent() otwiera połączenie do bazy danych i
ustawia wskaźnik kolejnego wpisu na pierwszy wpis. Jeśli
stayopen jest niezerowy, to połączenie do bazy danych nie
będzie zamykane pomiędzy wywołaniami funkcji
getnet*().
Funkcja
endnetent() zamyka połączenie do bazy danych.
Struktura
netent jest zdefiniowana w
<netdb.h>
następująco:
struct netent {
char *n_name; /* oficjalna nazwa sieci */
char **n_aliases; /* lista aliasów */
int n_addrtype; /* rodzaj adresu sieci */
uint32_t n_net; /* numer sieci */
}
Polami struktury
netent są:
- n_name
- Oficjalna nazwa sieci.
- n_aliases
- Zakończona NULL-em lista alternatywnych nazw tej sieci.
- n_addrtype
- Rodzaj numeru sieci; zawsze AF_INET.
- n_net
- Numer sieci w porządku bajtów hosta.
WARTOŚĆ ZWRACANA¶
Funkcje
getnetent(),
getnetbyname() i
getnetbyaddr()
zwracają wskaźnik do statycznej struktury
netent lub
wskaźnik null, gdy wystąpi błąd lub napotkany
zostanie koniec pliku.
PLIKI¶
- /etc/networks
- plik bazy danych z sieciami
ZGODNE Z¶
4.3BSD, POSIX.1-2001.
UWAGI¶
W glibc aż do wersji 2.2 argument
net funkcji
getnetbyaddr() był typu
long.
ZOBACZ TAKŻE¶
getnetent_r(3),
getprotoent(3),
getservent(3)
RFC 1101
O STRONIE¶
Angielska wersja tej strony pochodzi z wydania 3.71 projektu Linux
man-pages. Opis projektu, informacje dotyczące zgłaszania
błędów, oraz najnowszą wersję
oryginału można znaleźć pod adresem
http://www.kernel.org/doc/man-pages/.
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika man
są: Andrzej Krzysztofowicz (PTM) <ankry@mif.pg.gda.pl> i Robert
Luberda <robert@debian.org>.
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ą
3.71 oryginału.