getprotobynumber

The getprotobynumber function retrieves protocol information corresponding to a protocol number.

Syntax

protoent* getprotobynumber(
         int number
)  

Parameters

number
Type: int 

[in] Protocol number, in host byte order.

Return value

Type: protoent *

If no error occurs, getprotobynumber returns a pointer to the protoent structure. Otherwise, it returns a null pointer and a specific error number can be retrieved by calling WSAGetLastError.

Return codes
Return code Description
WSANOTINITIALISED A successful WSAStartup call must occur before using this function.
WSAENETDOWN The network subsystem has failed.
WSAHOST_NOT_FOUND Authoritative answer protocol not found.
WSATRY_AGAIN A nonauthoritative Protocol not found, or server failure.
WSANO_RECOVERY Nonrecoverable errors, the protocols database is not accessible.
WSANO_DATA Valid name, no data record of requested type.
WSAEINPROGRESS A blocking Windows Sockets 1.1 call is in progress, or the service provider is still processing a callback function.
WSAEINTR A blocking Windows Socket 1.1 call was canceled through WSACancelBlockingCall.

Remarks

This getprotobynumber function returns a pointer to the protoent structure as previously described in getprotobyname. The contents of the structure correspond to the given protocol number.

The pointer that is returned points to the structure allocated by Windows Sockets. The application must never attempt to modify this structure or to free any of its components. Furthermore, only one copy of this structure is allocated per thread, so the application should copy any information that it needs before issuing any other Windows Sockets function calls.

Windows Phone 8: This API is supported.

Requirements

Header: Declared in winsock2.h.

Library: Use ws2_32.lib.