Función CreateSortedAddressPairs (netioapi.h)

La función CreateSortedAddressPairs toma una lista proporcionada de posibles direcciones de destino IP, empareja las direcciones de destino con las direcciones IP locales del equipo host y ordena los pares según qué par de direcciones sea más adecuado para la comunicación entre los dos pares.

Sintaxis

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API CreateSortedAddressPairs(
  [in, optional] const PSOCKADDR_IN6 SourceAddressList,
  [in]           ULONG               SourceAddressCount,
  [in]           const PSOCKADDR_IN6 DestinationAddressList,
  [in]           ULONG               DestinationAddressCount,
  [in]           ULONG               AddressSortOptions,
  [out]          PSOCKADDR_IN6_PAIR  *SortedAddressPairList,
  [out]          ULONG               *SortedAddressPairCount
);

Parámetros

[in, optional] SourceAddressList

Debe ser NULL. Reservado para uso futuro.

[in] SourceAddressCount

Debe ser 0. Reservado para uso futuro.

[in] DestinationAddressList

Puntero a una matriz de estructuras de SOCKADDR_IN6 que contienen una lista de posibles direcciones de destino IPv6. Todas las direcciones IPv4 deben representarse en el formato de dirección IPv4 asignado A IPv6, lo que permite que una aplicación IPv6 solo se comunique con un nodo IPv4.

[in] DestinationAddressCount

Número de direcciones de destino a las que apunta el parámetro DestinationAddressList .

[in] AddressSortOptions

Reservado para uso futuro.

[out] SortedAddressPairList

Puntero para almacenar una matriz de estructuras de SOCKADDR_IN6_PAIR que contienen una lista de pares de direcciones IPv6 ordenadas en el orden preferido de comunicación, si la llamada a función es correcta.

[out] SortedAddressPairCount

Puntero para almacenar el número de pares de direcciones a los que apunta el parámetro SortedAddressPairList , si la llamada a la función es correcta.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es NO_ERROR.

Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error.

Código devuelto Descripción
ERROR_INVALID_PARAMETER
Se pasó un parámetro no válido a la función. Este error se devuelve si los parámetros DestinationAddressList, SortedAddressPairList o SortedAddressPairCountnull o DestinationAddressCount eran mayores que 500. Este error también se devuelve si SourceAddressList no es NULL o el parámetro SourceAddressPairCount no es cero.
ERROR_NOT_ENOUGH_MEMORY
No hay suficiente almacenamiento disponible para procesar este comando.
ERROR_NOT_SUPPORTED
No se admite la solicitud. Este error se devuelve si no hay ninguna pila IPv6 en el equipo local.
Otros
Use FormatMessage para obtener la cadena de mensaje para el error devuelto.

Comentarios

La función CreateSortedAddressPairs se define en Windows Vista y versiones posteriores.

La función CreateSortedAddressPairs toma una lista de direcciones IPv6 de origen y destino y devuelve una lista de pares de direcciones en orden ordenado. La lista se ordena por qué par de direcciones es más adecuado para la comunicación entre la dirección de origen y de destino.

La lista de direcciones de origen a las que apunta SourceAddressList está reservada actualmente para el futuro y debe ser un puntero NULL . SourceAddressCount está reservado actualmente para el futuro y debe ser cero. La función CreateSortedAddressPairs usa actualmente todas las direcciones locales de la máquina host para la lista de direcciones de origen.

El parámetro DestinationAddressList apunta a la lista de direcciones de destino. La lista de direcciones de destino es una matriz de estructuras de SOCKADDR_IN6 . Todas las direcciones IPv4 deben representarse en el formato de dirección IPv4 asignado A IPv6, lo que permite que una aplicación IPv6 solo se comunique con un nodo IPv4. Para obtener más información sobre el formato de dirección IPv4 asignado a IPv6, consulte Sockets de doble pila. El parámetro DestinationAddressCount contiene el número de direcciones de destino a las que apunta el parámetro DestinationAddressList . La función CreateSortedAddressPairs admite un máximo de 500 direcciones de destino.

Si la función CreateSortedAddressPairs se realiza correctamente, el parámetro SortedAddressPairList apunta a una matriz de estructuras de SOCKADDR_IN6_PAIR que contienen los pares de direcciones ordenadas. Cuando esta lista devuelta ya no es necesaria, libere la memoria usada por la lista llamando a la función FreeMibTable .

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado netioapi.h (include Iphlpapi.h)
Library Iphlpapi.lib
Archivo DLL Iphlpapi.dll

Consulte también

Sockets de doble pila

FreeMibTable

SOCKADDR_IN6_PAIR

Uso de SIO_ADDRESS_LIST_SORT

sockaddr