Microsoft Internet Security and
Acceleration Server 2000
IFWXSession::GetHostByAddr
Method
Retrieves host information corresponding to an address.
HRESULT GetHostByAddr(
const char*addr, int len, int type, char*buf, int*buflen);
Parameters
addr
[in] Pointer to the network address for the host. Host
addresses are stored in network byte order.
len
[in] Length of the address.
type
[in] Type of the address.
buf
[out] Pointer to the data area to receive the hostent
data. The data area must be larger than the size of a
hostent structure because the supplied data area is used by
Windows Sockets to contain a hostent structure and all of
the data referenced by members of the hostent structure. A
buffer of MAXGETHOSTSTRUCT bytes is recommended.
buflen
[in, out] On input, specifies the size of data area for the
buf parameter. If the buffer is too small, the error code
ERROR_INSUFFICIENT_BUFFER is returned and the buflen
parameter receives the size of the required buffer.
Return Values
S_OK
The method was successful. The buffer was filled with the host
information.
HRESULT_FROM_WIN32(WSAENOBUFS)
Insufficient buffer space is available. (The buffer pointed to
by buf is not large enough to contain the host
information.)
HRESULT_FROM_WIN32(WSAHOST_NOT_FOUND)
Authoritative answer host not found.
HRESULT_FROM_WIN32(WSATRY_AGAIN)
A nonauthoritative host not found, or SERVERFAIL.
HRESULT_FROM_WIN32(WSANO_DATA)
Valid name, no data record of requested type.
Remarks
Unlike the IFWXFirewall::GetHostByAddr
method, this method checks permissions, and site and content rules,
prior to providing the address. If there are no permissions, or if
the site and content rules do not allow access, the host
information will not be provided. This method also logs the name
resolution and can use autodial to dial out for the name
resolution.