Compartir a través de


PGET_NEIGHBORS función de devolución de llamada (routprot.h)

El administrador de enrutadores llama a la función GetNeighbors para obtener el querier de la red conectada a través de la interfaz especificada.

El tipo PGET_NEIGHBORS define un puntero a esta función de devolución de llamada. GetNeighbors es un marcador de posición para el nombre de función definido por la aplicación.

Sintaxis

PGET_NEIGHBORS PgetNeighbors;

DWORD PgetNeighbors(
  [in]      DWORD InterfaceIndex,
  [in]      PDWORD NeighborList,
  [in, out] PDWORD NeighborListSize,
  [out]     PBYTE InterfaceFlags
)
{...}

Parámetros

[in] InterfaceIndex

Especifica el índice de la interfaz en la que el protocolo de enrutamiento debe proporcionar el querier.

[in] NeighborList

Puntero a una matriz de variables DWORD . El protocolo de enrutamiento debe rellenar esta matriz con la dirección del querier.

Si el equipo local es el querier de la red conectada a través de la interfaz especificada, el protocolo de enrutamiento no debe rellenar esta variable. En su lugar, el protocolo de enrutamiento debe establecer el valor al que apunta NeighborListSize en cero. Además, el protocolo de enrutamiento debe agregar MRINFO_QUERIER_FLAG a las marcas devueltas en el parámetro InterfaceFlags .

[in, out] NeighborListSize

En la entrada, puntero a una variable DWORD .

En la salida, el protocolo de enrutamiento rellena esta variable con la longitud, en bytes, de la dirección devuelta en el parámetro NeighborList .

[out] InterfaceFlags

Recibe una o varias de las marcas siguientes. Las marcas describen la relación del equipo local con otros equipos de la red conectada a través de la interfaz especificada.

MRINFO_TUNNEL_FLAGMRINFO_PIM_FLAGMRINFO_DOWN_FLAG MRINFO_DISABLED_FLAGMRINFO_QUERIER_FLAG MRINFO_LEAF_FLAG

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.

Valor Descripción
ERROR_CAN_NOT_COMPLETE
El protocolo de enrutamiento no pudo completar la solicitud.
ERROR_INSUFFICIENT_BUFFER
El tamaño del búfer al que apunta NeighborList no es lo suficientemente grande como para contener la dirección. El tamaño necesario se devuelve en la variable DWORD a la que apunta el parámetro NeighborListSize .
ERROR_INVALID_PARAMETER
El parámetro InterfaceIndex no es válido (por ejemplo, no existe ninguna interfaz con ese índice).

Comentarios

Solo se requieren protocolos de enrutamiento de multidifusión para implementar esta función. Los protocolos de enrutamiento sin multidifusión deben pasar NULL como valor de puntero para esta función en MPR_ROUTING_CHARACTERISTICS

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado routprot.h

Consulte también

GetMfeStatus