getservent(3) CLIX getservent(3)
NAME
getservent, getservbyport, getservbyname, setservent, endservent - Gets a
service entry
LIBRARY
Berkeley Software Distribution Library (libbsd.a)
SYNOPSIS
#include <netdb.h>
struct servent *getservent(
void );
struct servent *getservbyname(
char *name ,
char *proto );
struct servent *getservbyport(
int port ,
char *proto );
void setservent(
int stayopen );
void endservent(
void );
DESCRIPTION
The getservent(), getservbyname(), and getservbyport() functions return a
pointer to an object with the following structure containing the broken-
down fields of a line in the network services database, /etc/services.
struct servent {
char *s_name; /* official name of service */
char **s_aliases; /* alias list */
int s_port; /* port service resides at */
char *s_proto; /* protocol to use */
};
The members of this structure are as follows:
s_name The official name of the service.
s_aliases A zero-terminated list of alternate names for the service.
s_port The port number at which the service resides. Port numbers
are returned in network byte order.
2/94 - Intergraph Corporation 1
getservent(3) CLIX getservent(3)
s_proto The name of the protocol to use when contacting the service.
The getservent() function reads the next line of the file, opening the
file if necessary.
The setservent() function opens and rewinds the file. If the stayopen
flag is nonzero, the network database will not be closed after each call
to getservbyname() or getservbyport().
The endservent() function closes the file.
The getservbyname() and getservbyport() functions sequentially search from
the beginning of the file until a matching protocol name or port number is
found or until EOF is encountered. If a protocol name is also supplied
(non-null), searches must match the protocol. Port numbers must be given
in network byte order.
All information is contained in a static area so it must be copied if it
is to be saved. It is expected that port numbers will fit in a 32-bit
quantity.
FILES
/etc/services
RETURN VALUES
A null pointer (0) is returned at EOF or when an error occurs.
RELATED INFORMATION
Functions: getprotoent(3)
Files: services(4)
2 Intergraph Corporation - 2/94