Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

protocols(5)

GETPROTOENT(3N)                      BSD                       GETPROTOENT(3N)



NAME
     getprotoent, getprotobynumber, getprotobyname, setprotoent, endprotoent -
     get protocol entry

SYNOPSIS
     #include <netdb.h>

     struct protoent *getprotoent()

     struct protoent *getprotobyname(name)
     char *name;

     struct protoent *getprotobynumber(proto)
     int proto;

     setprotoent(stayopen)
     int stayopen

     endprotoent()

DESCRIPTION
     getprotoent, getprotobyname, and getprotobynumber each return a pointer
     to an object with the following structure containing the broken-out
     fields of a line in the network protocol database, /etc/protocols.

          struct    protoent {
               char *p_name;  /* official name of protocol */
               char **p_aliases;   /* alias list */
               int  p_proto;  /* protocol number */
          };

     The members of this structure are

     p_name     The official name of the protocol.

     p_aliases  A zero terminated list of alternate names for the protocol.

     p_proto    The protocol number.

     getprotoent reads the  next  line  of  the  file,  opening  the  file  if
     necessary.

     setprotoent opens and rewinds the file.  If the stayopen flag is nonzero,
     the  net database will not be closed after each call to getprotobyname or
     getprotobynumber.

     endprotoent closes the file.

     getprotobyname  and  getprotobynumber  sequentially   search   from   the
     beginning  of  the file until a matching protocol name or protocol number
     is found, or until EOF is encountered.

FILES
     /etc/protocols

SEE ALSO
     protocols(5)

DIAGNOSTICS
     A NULL pointer (0) 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.  Only the Internet protocols are currently understood.

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