WSANtohs

The WSANtohs function converts a u_short from network byte order to host byte order.

Syntax

int WSANtohs(
         SOCKET s,
         u_short netshort,
         u_short *lphostshort
)  

Parameters

s
Type: SOCKET 

[in]

A descriptor identifying a socket.

netshort
Type: u_short 

[in]

A 16-bit number in network byte order.

lphostshort
Type: u_short *

[out]

A pointer to a 16-bit number to receive the number in host byte order.

Return value

Type: int 

If no error occurs, WSANtohs returns zero. Otherwise, a value of SOCKET_ERROR is returned, and a specific error code 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.
WSAENOTSOCK The descriptor is not a socket.
WSAEFAULT The lphostshort parameter is NULL or the address pointed to is not completely contained in a valid part of the user address space.

Remarks

The WSANtohs function takes a 16-bit number in network byte order and returns a 16-bit number in host byte order in the 16-bit number pointed to by the lphostshort parameter. The socket passed in the s parameter is used to determine the network byte order required based on the Winsock catalog protocol entry associated with the socket. This feature supports Winsock providers that use different network byte orders.

If the socket is for the AF_INET or AF_INET6 address family, the WSANtohs function can be used to convert an IP port number in network byte order to the IP port number in host byte order.

The WSANtohs function requires that the Winsock DLL has previously been loaded with a successful call to the WSAStartup function. For use with the AF_INET OR AF_INET6 address family, the ntohs function does not require that the Winsock DLL be loaded.

Windows Phone 8: This API is supported.

Requirements

Header: Declared in winsock2.h.

Library: Use ws2_32.lib.