Index Index for
Section 3
Index Alphabetical
listing for G
Bottom of page Bottom of
page

getprotobynumber(3)

NAME

getprotobynumber, getprotobynumber_r - Get a protocol entry by number

SYNOPSIS

#include <netdb.h> struct protoent *getprotobynumber( int num ); [Tru64 UNIX] The following obsolete function is supported in order to maintain backward compatibility with previous versions of the operating system. You should not use it in new designs. int getprotobynumber_r( int num, struct protoent *proto, struct protoent_data *proto_data );

LIBRARY

Standard C Library (libc)

STANDARDS

Interfaces documented on this reference page conform to industry standards as follows: getprotobyname(): XNS4.0, XNS5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags.

PARAMETERS

num Specifies the protocol number. proto [Tru64 UNIX] For getprotobynumber_r() only, this points to the protoent structure. The netdb.h header file defines the protoent structure. proto_data [Tru64 UNIX] For getprotobynumber_r() only, this is data for the protocols database. The netdb.h header file defines the protoent_data structure.

DESCRIPTION

The getprotobynumber() function returns a pointer to a structure of type protoent. Its members specify data in fields from a record line in either the local /etc/protocols file or NIS distributed network protocols database file. To determine which file or files to search, and in which order, the system uses the switches in the /etc/svc.conf file. The netdb.h header file defines the protoent structure. The getprotobynumber() function searches the network protocols database file sequentially until a match with the num parameter occurs. The num parameter must specify the official protocol number. When EOF (End-Of-File) is reached without a match, a null pointer is returned by this function. When using the getprotobynumber() function, use the endprotoent() function to close the protocols file.

NOTES

The getprotobynumber() function returns a pointer to thread-specific data. Subsequent calls to this or a related function from the same thread overwrite this data. [Tru64 UNIX] The getprotobynumber_r() function is an obsolete reentrant version of the getprotobynumber() function. It is supported in order to maintain backward compatibility with previous versions of the operating system and should not be used in new designs. Note that you must zero-fill the proto_data structure before its first access by either the setprotoent_r() or getprotobynumber_r() functions.

RETURN VALUES

Upon successful completion, the getprotobynumber() function returns a pointer to a protoent structure. If it fails or reaches the end of the network protocols database file, it returns a null pointer. [Tru64 UNIX] Upon successful completion, the getprotobynumber_r() function stores the protoent structure in the location pointed to by proto, and returns a value of 0 (zero). Upon failure, it returns a value of -1.

ERRORS

Current industry standards do not define error values for the getprotobynumber() function. [Tru64 UNIX] If any of the following conditions occurs, the getprotobynumber_r() function sets errno to the corresponding value: [EINVAL] The proto_data or proto parameter is invalid. [ESRCH] The search failed. In addition, if the getprotobynumber() or getprotobynumber_r() function fails to open the file, it sets errno to indicate the cause of the failure.

FILES

/etc/protocols The Internet network protocols name database file. Each record in the file occupies a single line and has three fields: the official protocol name, the protocol number, and protocol aliases. /etc/svc.conf The database service selection configuration file.

SEE ALSO

Functions: getprotobyname(3), getprotoent(3), setprotoent(3), endprotoent(3). Files: protocols(4), svc.conf(4). Networks: nis_intro(7). Standards: standards(5). Network Programmer's Guide

Index Index for
Section 3
Index Alphabetical
listing for G
Top of page Top of
page