GETSERVENT(3) Linux Programmer's Manual GETSERVENT(3) NAME getservent, getservbyname, getservbyport, setservent, end- servent - get service entry SYNOPSIS #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); DESCRIPTION The getservent() function reads the next line from the file /etc/services and returns a structure servent con- taining the broken out fields from the line. The /etc/services file is opened if necessary. The getservbyname() function returns a servent structure for the line from /etc/services that matches the service name using protocol proto. The getservbyport() function returns a servent structure for the line that matches the port port given in network byte order using protocol proto. The setservent() function opens and rewinds the /etc/ser- vices file. If stayopen is true (1), then the file will not be closed between calls to getservbyname() and get- servbyport(). The endservent() function closes /etc/services. The servent structure is defined in <netdb.h> as follows: struct servent { char *s_name; /* official service name */ char **s_aliases; /* alias list */ int s_port; /* port number */ char *s_proto; /* protocol to use */ } The members of the servent structure are: s_name The official name of the service. s_aliases A zero terminated list of alternative names for the service. s_port The port number for the service given in network byte order. s_proto The name of the protocol to use with this service. RETURN VALUE The getservent(), getservbyname() and getservbyport() functions return the servent structure, or a NULL pointer if an error occurs or the end of the file is reached. FILES /etc/services services database file CONFORMING TO BSD 4.3 SEE ALSO getprotoent(3), getnetent(3), services(5) BSD 22 April 1996 1