NAME
getprotoent, getprotobyname, getprotobynumber, setprotoent,
endprotoent - get protocol entry
SYNOPSIS
#include <netdb.h>
struct protoent *getprotoent(void);
struct protoent *getprotobyname(const char *name));
struct protoent *getprotobynumber(int proto));
void setprotoent(int stayopen));
void endprotoent(void);
DESCRIPTION
The getprotoent() function reads the next line from the file
/etc/protocols and returns a structure protoent containing
the broken out fields from the line. The /etc/protocols
file is opened if necessary.
The getprotobyname() function returns a protoent structure
for the line from /etc/protocols that matches the protocol
name name.
The getprotobynumber() function returns a protoent structure
for the line that matches the protocol number number.
The setprotoent() function opens and rewinds the
/etc/protocols file. If stayopen is true (1), then the file
will not be closed between calls to getprotobyname() or get-
protobynumber().
The endprotoent() function closes /etc/protocols.
The protoent structure is defined in <netdb.h> as follows:
struct protoent {
char *p_name; /* official protocol name */
char **p_aliases; /* alias list */
int p_proto; /* protocol number */
}
The members of the protoent structure are:
p_name
The official name of the protocol.
p_aliases
A zero terminated list of alternative names for the
protocol.
p_proto
The protocol number.
RETURN VALUE
The getprotoent(), getprotobyname() and getprotobynumber()
functions return the protoent structure, or a NULL pointer
if an error occurs or the end of the file is reached.
FILES
/etc/protocols
protocol database file
CONFORMING TO
BSD 4.3
SEE ALSO
getservent(3), getnetent(3), protocols(5)