Función GetAnycastIpAddressTable
La función GetAnycastIpAddressTable recupera la tabla de direcciones IP de anycast en un equipo local.
Sintaxis
NETIOAPI_API GetAnycastIpAddressTable(
_In_ ADDRESS_FAMILY Family,
_Out_ PMIB_ANYCASTIPADDRESS_TABLE *Table
);
Parámetros
Familia [in]
Familia de direcciones que se va a recuperar.Los valores posibles para la familia de direcciones aparecen en el archivo de encabezado Winsock2.h. Tenga en cuenta que los valores de la familia de direcciones AF_ y las constantes de familia de protocolos PF_ son idénticos (por ejemplo, AF_INET y PF_INET), por lo que puede usar cualquiera de las constantes.
En Windows Vista y versiones posteriores de los sistemas operativos Windows, los valores posibles para el parámetro Family se definen en el archivo de encabezado Ws2def.h. Tenga en cuenta que el archivo de encabezado Ws2def.h se incluye automáticamente en Netioapi.h y nunca debe usar Ws2def.h directamente.
Actualmente se admiten los siguientes valores para la familia de direcciones:
AF_INET
Familia de direcciones IPv4. Cuando se especifica este valor, esta función devuelve la tabla de direcciones IP de difusión que contiene solo entradas IPv4.AF_INET6
Familia de direcciones IPv6. Cuando se especifica este valor, esta función devuelve la tabla de direcciones IP de difusión que contiene solo entradas IPv6.AF_UNSPEC
La familia de direcciones no está especificada. Cuando se especifica este valor, esta función devuelve la tabla de direcciones IP de difusión que contiene entradas IPv4 e IPv6.
Tabla [salida]
Puntero a una estructura de MIB_ANYCASTIPADDRESS_TABLE que contiene una tabla de entradas de dirección IP de difusión en el equipo local.
Valor devuelto
GetAnycastIpAddressTable devuelve STATUS_SUCCESS si la función se ejecuta correctamente.
Si se produce un error en la función, GetAnycastIpAddressTable devuelve uno de los siguientes códigos de error:
Código devuelto | Descripción |
---|---|
STATUS_INVALID_PARAMETER | Se ha transferido un parámetro no válido a la función. Este error se devuelve si se pasa un puntero NULL en el parámetro Table o el parámetro Family no se especificó como AF_INET, AF_INET6 o AF_UNSPEC. |
STATUS_NOT_ENOUGH_MEMORY | Los recursos de memoria insuficientes están disponibles para completar la operación. |
STATUS_NOT_FOUND | No se encontraron entradas de dirección IP de difusión, como se especifica en el parámetro Family . |
STATUS_NOT_SUPPORTED | No se admite la solicitud. Este error se devuelve si no hay ninguna pila IPv4 ubicada en el equipo local y AF_INET se especificó en el parámetro Family , o si no se encuentra ninguna pila IPv6 en el equipo local y AF_INET6 se especificó en el parámetro Family . Este error también se devuelve en versiones de Windows en las que no se admite esta función. |
Otros | Use la función FormatMessage para obtener la cadena de mensaje para el error devuelto. |
Comentarios
La función GetAnycastIpAddressTable enumera las direcciones IP de difusión en un equipo local y devuelve esta información en una estructura de MIB_ANYCASTIPADDRESS_TABLE.
Las entradas de dirección IP de difusión se devuelven en una estructura de MIB_ANYCASTIPADDRESS_TABLE en el búfer al que apunta el parámetro Table . La estructura MIB_ANYCASTIPADDRESS_TABLE contiene un recuento de entradas de direcciones IP de difusión y una matriz de estructuras de MIB_ANYCASTIPADDRESS_ROW para cada entrada de dirección IP de difusión. Cuando estas estructuras devueltas ya no son necesarias, el controlador debe liberar la memoria llamando a FreeMibTable.
El controlador debe inicializar el parámetro Family en AF_INET, AF_INET6 o AF_UNSPEC.
Tenga en cuenta que la estructura de MIB_ANYCASTIPADDRESS_TABLE devuelta a la que apunta el parámetro Table podría contener relleno para la alineación entre el miembro NumEntries y la primera entrada de matriz de MIB_ANYCASTIPADDRESS_ROW en el miembro Table de la estructura MIB_ANYCASTIPADDRESS_TABLE. El relleno para la alineación también puede estar presente entre las entradas de MIB_ANYCASTIPADDRESS_ROW matriz. Cualquier acceso a una entrada de matriz de MIB_ANYCASTIPADDRESS_ROW debe suponer que puede existir relleno.
Requisitos
Plataforma de destino |
Universal |
Versión |
Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows. |
Encabezado |
Netioapi.h (incluye Netioapi.h) |
Biblioteca |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |