Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getservent(3n) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

getprotoent(3N)

services(4)



getservent(3N)          LIBRARY FUNCTIONS          getservent(3N)



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

SYNOPSIS
     #include <netdb.h>
     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 *sname;  /* official name of service */
               char **saliases;   /* alias list */
               int  sport;        /* port service resides at */
               char *sproto; /* 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  ser-
                              vice  resides.   Port  numbers  are
                              returned  in  network  short   byte
                              order.

          s_proto             The name of  the  protocol  to  use
                              when contacting the service.
     getservent() reads the next line of the  file,  opening  the
     file if necessary.  setservent() opens and rewinds the file.
     If the stayopen flag is non-zero, the net data base will not
     be  closed after each call to getservent() (either directly,
     or indirectly through one of  the  other  "getserv"  calls).
     endservent()  closes  the  file.   getservbyname()  and get-
     servbyport() 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 also match the protocol.




                                                                1





getservent(3N)          LIBRARY FUNCTIONS          getservent(3N)



FILES
     /etc/services

SEE ALSO
     getprotoent(3N), services(4)

DIAGNOSTICS
     A NULL pointer is returned on EOF 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.










































                                                                2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026