getprotoent(3n)getprotoent(3n)Name
getprotoent, getprotobynumber, getprotobyname, setprotoent, endprotoent
- get protocols entry
Syntax
#include <netdb.h>
struct protoent *getprotoent()
struct protoent *getprotobyname(name)
char *name;
struct protoent *getprotobynumber(proto)
int proto;
void setprotoent(stayopen)
int stayopen;
void endprotoent()Description
The and subroutines each return a pointer to an object with the follow‐
ing structure containing the broken-out fields of a line in the data‐
base.
struct protoent {
char *p_name; /* official name of protocol */
char **p_aliases; /* alias list */
long 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.
If the stayopen flag on a subroutine is NULL, the protocols database is
opened. Otherwise the has the effect of rewinding the protocols data‐
base. The may be called to close the protocols database when process‐
ing is complete.
The subroutine simply reads the next line while and search until a
matching name or proto number is found (or until EOF is encountered).
The subroutine keeps a pointer in the database, allowing successive
calls to be used to search the entire file.
A call to must be made before a loop using in order to perform initial‐
ization and an must be used after the loop. Both and make calls to and
Restrictions
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 under‐
stood.
If YP is running, does not return the entries in any particular order.
See the Guide to the Yellow Pages Service for setup information.
The services database may also be distributed using the BIND/Hesiod
naming service. See the Guide to the BIND/Hesiod Service for more
information.
Return Values
Null pointer (0) returned on EOF or error.
FilesSee Alsoprotocols(5), svc.conf(5)
Guide to the BIND/Hesiod Service
Guide to the Yellow Pages Service
getprotoent(3n)