Scroll to navigation

GETSERVENT(3) Podręcznik programisty Linuksa GETSERVENT(3)

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ą:

Oficjalna nazwa usługi.
Zakończona zarem lista alternatywnych nazw tej usługi.
Numer portu tej usługi podany w sieciowej kolejności bajtów.
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)

2001-07-25 BSD