JMÉNO
getservent, getservbyname, getservbyport, setservent, endservent − funkce pro práci s databází služeb
SYNTAXE
#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);
POPIS
Funkce getservent() čte další řádek ze souboru /etc/services a vrací strukturu servent obsahující pole tohoto záznamu. Soubor /etc/services je otevřen, je-li potřeba.
Funkce getservbyname() vrací strukturu servent ze souboru /etc/services, která vyhovuje službě name používající protokol proto.
Funkce getservbyport() vrací ukazatel na strukturu servent pro záznam, který vyhovuje portu port zadanému v síťovém pořadí bajtů a protokolu proto.
Funkce setservent() otevře soubor /etc/services a nastaví ukazovátko na jeho začátek. Je-li stayopen nenulové (1), potom soubor nebude mezi voláními getservbyname() a getservbyport() uzavřen.
Funkce endservent() uzavře soubor /etc/services.
Struktura servent je definována v <netdb.h> následovně:
struct servent {
char |
|||
*s_name; |
/* official service name */ | ||
char |
|||
**s_aliases; |
/* alias list */ | ||
int |
|||
s_port; |
/* port number */ | ||
char |
|||
*s_proto; |
/* protocol to use */ |
}
Prvky struktury servent jsou:
s_name |
Oficiální jméno služby. |
s_aliases
Nulou ukončený seznam aliasů pro službu.
s_port |
Číslo portu pro tuto službu. Je reprezentováno v síťovém pořadí bajtů. |
s_proto
Jméno protokolu spojeného s touto službou.
NÁVRATOVÁ HODNOTA
Funkce getservent(), getservbyname() a getservbyport() vrací strukturu servent, nebo NULL, nastala-li chyba nebo konec souboru.
SOUBORY
/etc/services
databáze služeb
SPLŇUJE STANDARDY
BSD 4.3
DALŠÍ INFORMACE
getprotoent(3), getnetent(3), services(5)
VAROVÁNÍ
Překlad je pravděpodobně zastaralý. Pokud chcete pomoci s jeho aktualizací, zamiřte na http://man-pages-cs-wiki.homelinux.net/