unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-4.1.3)
Page:
Section:
Apropos / Subsearch:
optional field

GETSERVENT(3N)                                                  GETSERVENT(3N)



NAME
       getservent,  getservbyport, getservbyname, setservent, endservent - get
       service entry

SYNOPSIS
       #include <&lt;netdb.h>&gt;

       struct servent *getservent()

       struct servent *getservbyname(name, proto)
       char *name, *proto;

       struct servent *getservbyport(port, proto)
       int port; char *proto;

       setservent(stayopen)
       int stayopen;

       endservent()

DESCRIPTION
       getservent, getservbyname, and getservbyport each return a  pointer  to
       an object with the following structure containing the broken-out fields
       of a line in the network services data base, /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:
              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  net-
                                  work short byte order.
              s_proto             The  name  of  the protocol to use when con-
                                  tacting the service.

       getservent() reads the next line of the file, opening the file if  nec-
       essary.

       getservent()  opens and rewinds the file.  If the stayopen flag is non-
       zero, the net data base will not be closed after each call  to  getser-
       vent()  (either  directly, or indirectly through one of the other "get-
       serv" calls).

       endservent() closes the file.

       getservbyname() and getservbyport() sequentially search from the begin-
       ning  of  the  file  until  a  matching protocol name or port number is
       found, or until end-of-file is encountered.  If a protocol name is also
       supplied (non-NULL), searches must also match the protocol.

FILES
       /etc/services

SEE ALSO
       getprotoent(3N), services(5), ypserv(8)

DIAGNOSTICS
       A NULL pointer is returned on end-of-file or error.

BUGS
       All  information  is contained in a static area so it must be copied if
       it is to be saved.  Expecting port numbers to fit in a 32 bit  quantity
       is probably naive.



                               14 December 1987                 GETSERVENT(3N)