Directory Services

DsAddressToSiteNamesEx

The DsAddressToSiteNamesEx function obtains the site and subnet names corresponding to the addresses specified.

DWORD DsAddressToSiteNamesEx(
  LPCTSTR ComputerName,
  DWORD EntryCount,
  PSOCKET_ADDRESS SocketAddresses,
  LPTSTR** SiteNames,
  LPTSTR** SubnetNames
);

Parameters

ComputerName
[in, optional] Pointer to a null-terminated string that specifies the name of the remote server to process this function. This parameter must be the name of a domain controller. A non-domain controller can call this function by calling DsGetDcName to find the domain controller.
EntryCount
[in] Contains the number of elements in the SocketAddresses array.
SocketAddresses
[in] Contains an array of SOCKET_ADDRESS structures that contain the addresses to convert. Each address in this array must be of the type AF_INET. EntryCount contains the number of elements in this array.
SiteNames
[out] Receives an array of null-terminated string pointers that contain the site names for the addresses. Each element in this array corresponds to the same element in the SocketAddresses array. An element is NULL if the corresponding address does not map to any known site or if the address entry is not of the proper form. The caller must free this array when it is no longer required by calling NetApiBufferFree.
SubnetNames
[out] Receives an array of null-terminated string pointers that contain the subnet names used to perform the address to site name mappings. Each element in this array corresponds to the same element in the SocketAddresses array. An element is NULL if the corresponding address to site name mapping was not determined or if no subnet was used to perform the corresponding address to site mapping. The latter will be the case when there is exactly one site in the enterprise with no subnet objects mapped to it. The caller must free this array when it is no longer required by calling NetApiBufferFree.

Return Values

Returns NO_ERROR if successful or a Win32 or RPC error otherwise. The following are possible error codes.
Return Code Description
ERROR_INVALID_PARAMETER One or more parameters are invalid.
ERROR_NOT_ENOUGH_MEMORY A memory allocation failure occurred.

Requirements

Client: Included in Windows XP and Windows 2000 Professional.
Server: Included in Windows Server 2003 and Windows 2000 Server.
Unicode: Implemented as Unicode and ANSI versions.
Header: Declared in Dsgetdc.h.
Library: Use Netapi32.lib.

See Also

DsGetDcName, NetApiBufferFree, DsAddressToSiteNames, Directory Service Functions