getnetent

Hurricane Electric Internet Services: Accounts starting at $9.95/month
Hurricane Electric Internet Services

NAME

       getnetent,  getnetbyaddr,  getnetbyname, setnetent, endne-
       tent - get networks entry


SYNTAX

       #include <netdb.h>

       struct netent *getnetent()

       struct netent *getnetbyname(name)
       char *name;

       struct netent *getnetbyaddr(net, type)
       long net; int type;

       void setnetent(stayopen)
       int stayopen;

       void endnetent()


DESCRIPTION

       The getnetent, getnetbyname, and getnetbyaddr  subroutines
       each  return  a  pointer  to  an object with the following
       structure containing the broken-out fields of  a  line  in
       the networks database.

              struct    netent {
                   char *n_name;  /* official name of net */
                   char **n_aliases;   /* alias list */
                   int  n_addrtype;    /* net number type */
                   long n_net;         /* net number */
              };

       The members of this structure are:

       n_name      The official name of the network.

       n_aliases   A  zero terminated list of alternate names for
                   the network.

       n_addrtype  The  type  of  the  network  number  returned:
                   AF_INET.

       n_net       The   network  number.   Network  numbers  are
                   returned in machine byte order.

       If the stayopen flag on a setnetent  subroutine  is  NULL,
       the  networks database is opened.  Otherwise the setnetent
       has the effect of rewinding the  networks  database.   The
       endnetent  may  be  called  to close the networks database
       when processing is complete.

       The getnetent subroutine simply reads the next line  while
       getnetbyname and getnetbyaddr search until a matching name
       or net number is found (or until EOF is encountered).  The
       type  must  be  AF_INET.  The getnetent subroutine keeps a
       pointer in the database, allowing successive calls  to  be
       used to search the entire file.

       A call to setnetent must be made before a while loop using
       getnetent in order to perform initialization and an endne-
       tent  must  be used after the loop.  Both getnetbyname and
       getnetbyaddr make calls to setnetent and endnetent .


FILES

       /etc/networks


DIAGNOSTICS

       Null pointer (0) returned on EOF or error.


SEE ALSO

       networks(5)
       RFC 1101


HISTORY

       The getnetent(),  getnetbyaddr(),  getnetbyname(),  setne-
       tent(), and endnetent() functions appeared in 4.2BSD.


BUGS

       The  data  space  used  by  these  functions is static; if
       future use requires the data, it should be  copied  before
       any  subsequent  calls  to  these  functions overwrite it.
       Only Internet network numbers  are  currently  understood.
       Expecting  network  numbers to fit in no more than 32 bits
       is probably naive.
Hurricane Electric Internet Services: Accounts starting at $9.95/month
Hurricane Electric Internet Services
Copyright (C) 1998 Hurricane Electric. All Rights Reserved.