getservent

Autres langues

Langue: pl

Autres versions - même langue

Version: 2001-07-25 (fedora - 25/11/07)

Section: 3 (Bibliothèques de fonctions)

NAZWA

getservent, getservbyname, getservbyport, setservent, endservent - odczytanie wpisu dotyczącego usługi

SKŁADNIA

 #include <netdb.h>
 
 struct servent *getservent(void);
 
 struct servent *getservbyname(const char *name, const char *proto);
 
 struct servent *getservbyport(int port, const char *proto);
 
 void setservent(int stayopen);
 
 void endservent(void);
 

OPIS

Funkcja getservent() odczytuje następną linię z pliku /etc/services i zwraca strukturę servent zawierającą pola powstałe z rozłożenia linii pliku. Plik /etc/services jest otwierany, jeśli jest to potrzebne.

Funkcja getservbyname() zwraca strukturę servent zawierającą wartości z tej linii pliku /etc/services, która odpowiada usłudze name korzystającej z protokołu proto. Jeśli proto jest równe NULL, to pasował będzie dowolny protokół.

Funkcja getservbyport() zwraca strukturę servent zawierającą wartości z tej linii pliku, która odpowiada portowi port, podanemu w sieciowej kolejności bajtów, dla protokołu proto. Jeśli proto jest równe NULL, to pasował będzie dowolny protokół.

Funkcja setservent() otwiera plik fI/etc/services i ustawia wskaźnik pliku na jego początku. Jeśli stayopen jest prawdziwe (1), to plik nie będzie zamykany pomiędzy wywołaniami getservbyname() i getservbyport().

Funkcja endservent() zamyka /etc/services.

Struktura servent jest zdefiniowana w <netdb.h> następująco:

 
 struct servent {
         char    *s_name;        /* oficjalna nazwa usługi */
         char    **s_aliases;    /* lista aliasów */
         int     s_port;         /* numer portu */
         char    *s_proto;       /* używany protokół */
 }
 
 

Polami struktury servent są:

s_name
Oficjalna nazwa usługi.
s_aliases
Zakończona zarem lista alternatywnych nazw tej usługi.
s_port
Numer portu tej usługi podany w sieciowej kolejności bajtów.
s_proto
Nazwa protokołu z którego korzysta dana usługa.

WARTOŚĆ ZWRACANA

Funkcje getservent(), getservbyname() i getservbyport() zwracają strukturę servent, lub wskaźnik NULL gdy wystąpi błąd lub napotkany zostanie koniec pliku.

PLIKI

/etc/services
plik bazy danych o usługach

ZGODNE Z

BSD 4.3

ZOBACZ TAKŻE

getprotoent(3), getnetent(3), services(5)