GETSERVENT(3) Linux Programmer s Manual GETSERVENT(3)
NAME getservent, getservbyname, getservbyport, setservent, endservent - 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 entry from the services database (see services(5)) and returns a servent structure containing the broken-out fields from the entry. A connection is opened to the database if necessary.
The getservbyname() function returns a servent structure for the entry from the database that matches the service name using protocol proto. If proto is NULL, any protocol will be matched. A connection is opened to the database if necessary.
The getservbyport() function returns a servent structure for the entry from the database that matches the port port (given in network byte order) using protocol proto. If proto is NULL, any protocol will be matched. A connection is opened to the database if necessary.
The setservent() function opens a connection to the database, and sets the next entry to the first entry. If stayopen is non-zero, then the connection to the database will not be closed between calls to one of the getserv*() functions.
The endservent() function closes the connection to the database.
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 NULL-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 a pointer to a statically allocated 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 4.3BSD, POSIX.1-2001.
SEE ALSO getnetent(3), getprotoent(3), getservent_r(3), services(5)
COLOPHON This page is part of release 3.22 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.
GNU 2008-08-19 GETSERVENT(3)