Compartir a través de


Función RtmGetLessSpecificDestination (rtmv2.h)

La función RtmGetLessSpecificDestination busca en la tabla de enrutamiento un destino con el prefijo de siguiente mejor coincidencia (más largo), dado un prefijo de destino. Se devuelve la información de destino solicitada.

Sintaxis

DWORD RtmGetLessSpecificDestination(
  [in]  RTM_ENTITY_HANDLE RtmRegHandle,
  [in]  RTM_DEST_HANDLE   DestHandle,
  [in]  ULONG             ProtocolId,
  [in]  RTM_VIEW_SET      TargetViews,
  [out] PRTM_DEST_INFO    DestInfo
);

Parámetros

[in] RtmRegHandle

Identificador para el cliente obtenido de una llamada anterior a RtmRegisterEntity.

[in] DestHandle

Identificador del destino.

[in] ProtocolId

Especifica el identificador de protocolo. ProtocolID no forma parte de los criterios de búsqueda. El administrador de tablas de enrutamiento usa este identificador para determinar qué información de ruta se va a devolver. Por ejemplo, si un cliente especifica el identificador del protocolo RIP, se devuelve la mejor ruta RIP, incluso si una ruta que no es RIP es la mejor ruta al destino.

Especifique RTM_BEST_PROTOCOL para devolver una ruta independientemente del protocolo que lo posee. Especifique RTM_THIS_PROTOCOL para devolver la mejor ruta para el protocolo de llamada.

[in] TargetViews

Especifica las vistas desde las que se va a devolver información. Si el cliente especifica RTM_VIEW_MASK_ANY, la información de destino se devuelve de todas las vistas; sin embargo, no se devuelve información específica de la vista.

[out] DestInfo

En la entrada, DestInfo es un puntero a una estructura de RTM_DEST_INFO .

En la salida, DestInfo se rellena con la información de destino solicitada.

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 Significado
ERROR_INVALID_PARAMETER
Un parámetro contiene información incorrecta.
ERROR_NOT_FOUND
No se encuentra el siguiente mejor destino.
 
 

Comentarios

El parámetro DestInfo es una estructura de RTM_DEST_INFO de tamaño variable. Si el cliente especifica más de una vista mediante TargetViews, el tamaño de DestInfo aumenta para cada vista. Use la macro RTM_SIZE_OF_DEST_INFO para determinar la cantidad de memoria que se va a asignar a la estructura DestInfo antes de llamar a esta función. Use el valor especificado para TargetViews como parámetro para RTM_SIZE_OF_DEST_INFO.

La función RtmGetLessSpecificDestination se usa después de una llamada a RtmGetMostSpecificDestination para devolver la siguiente coincidencia mejor para un destino. Esta llamada también se usa después de una llamada anterior a RtmGetLessSpecificDestination para devolver la siguiente coincidencia menos específica sucesiva. Los clientes pueden usar esta función para "subir" el árbol de prefijos de un destino.

Esta llamada también se usa después de las llamadas a funciones que devuelven una estructura de RTM_DEST_INFO , como RtmGetDestInfo y RtmGetChangedDests.

La función RtmGetLessSpecificDestination devuelve coincidencias hasta que alcanza la ruta predeterminada, si existe. Una vez que se encuentra la ruta predeterminada, RtmGetLessSpecificDestination devuelve ERROR_NOT_FOUND.

Un uso común para las funciones RtmGetLessSpecificDestination y RtmGetMostSpecificDestination es recuperar cada uno de los destinos coincidentes.

Para obtener código de ejemplo con esta función, consulte Buscar rutas mediante un árbol de prefijos.

Requisitos

   
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado rtmv2.h
Library Rtm.lib
Archivo DLL Rtm.dll

Consulte también

RTM_DEST_INFO

RtmGetExactMatchDestination

RtmGetExactMatchRoute

RtmGetMostSpecificDestination

RtmIsBestRoute