Node:Networks Database, Previous:Socket Options, Up:Sockets
Many systems come with a database that records a list of networks known
to the system developer. This is usually kept either in the file
/etc/networks or in an equivalent from a name server. This data
base is useful for routing programs such as route, but it is not
useful for programs that simply communicate over the network. We
provide functions to access this database, which are declared in
netdb.h.
| struct netent | Data Type |
This data type is used to represent information about entries in the
networks database. It has the following members:
|
Use the getnetbyname or getnetbyaddr functions to search
the networks database for information about a specific network. The
information is returned in a statically-allocated structure; you must
copy the information if you need to save it.
| struct netent * getnetbyname (const char *name) | Function |
The getnetbyname function returns information about the network
named name. It returns a null pointer if there is no such
network.
|
| struct netent * getnetbyaddr (unsigned long int net, int type) | Function |
The getnetbyaddr function returns information about the network
of type type with number net. You should specify a value of
AF_INET for the type argument for Internet networks.
|
You can also scan the networks database using setnetent,
getnetent and endnetent. Be careful when using these
functions because they are not reentrant.
| void setnetent (int stayopen) | Function |
|
This function opens and rewinds the networks database.
If the stayopen argument is nonzero, this sets a flag so that
subsequent calls to |
| struct netent * getnetent (void) | Function |
| This function returns the next entry in the networks database. It returns a null pointer if there are no more entries. |
| void endnetent (void) | Function |
| This function closes the networks database. |