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. If proto is NULL, any protocol
       will be matched.

       The getservbyport() function returns a  servent  structure
       for  the  line that matches the port port given in network
       byte order using protocol proto. If  proto  is  NULL,  any
       protocol will be matched.

       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.

              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)


Man(1) output converted with man2html