Partager via


Fonction RtmLockRoute (rtmv2.h)

La fonction RtmLockRoute verrouille ou déverrouille un itinéraire dans la table de routage. Cela protège l’itinéraire pendant qu’un client apporte les modifications nécessaires aux pointeurs de routage opaques appartenant au client.

Syntaxe

DWORD RtmLockRoute(
  [in]  RTM_ENTITY_HANDLE RtmRegHandle,
  [in]  RTM_ROUTE_HANDLE  RouteHandle,
  [in]  BOOL              Exclusive,
  [in]  BOOL              LockRoute,
  [out] PRTM_ROUTE_INFO   *RoutePointer
);

Paramètres

[in] RtmRegHandle

Gérez le client obtenu à partir d’un appel précédent à RtmRegisterEntity.

[in] RouteHandle

Handle vers l’itinéraire à verrouiller.

[in] Exclusive

Spécifie si l’itinéraire doit être verrouillé ou déverrouillé en mode exclusif (TRUE) ou partagé (FALSE).

[in] LockRoute

Spécifie s’il faut verrouiller ou déverrouiller l’itinéraire. Spécifiez TRUE pour verrouiller l’itinéraire ; spécifiez FALSE pour le déverrouiller.

[out] RoutePointer

Si un pointeur doit être retourné : Lors de l’entrée, RoutePointer est un pointeur vers NULL. Lors de la sortie, si le client est propriétaire de l’itinéraire, RoutePointer reçoit un pointeur vers le tronçon suivant ; sinon, RoutePointer reste inchangé.

Si un handle n’a pas besoin d’être retourné : Lors de l’entrée, RoutePointer a la valeur NULL.

Valeur retournée

Si la fonction réussit, la valeur de retour est NO_ERROR.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants.

Valeur Signification
ERROR_ACCESS_DENIED
Le client appelant n’est pas propriétaire de cet itinéraire.
ERROR_INVALID_HANDLE
Le handle n'est pas valide.
 
 

Remarques

N’appelez aucune autre fonction RTMv2 tant que l’itinéraire n’est pas déverrouillé par un appel à RtmLockRoute et que le paramètre LockRoute a la valeur FALSE ou un appel à RtmUpdateAndUnlockRoute.

Actuellement, cette fonction verrouille la destination entière, pas seulement l’itinéraire.

Les clients peuvent uniquement modifier les membres Neighbor, PrefInfo, BelongsToViews, EntitySpecificInfo et NextHopsList de la structure RTM_ROUTE_INFO .

Si l’une de ces valeurs est modifiée, le client doit appeler RtmUpdateAndUnlockRoute pour informer le gestionnaire de tables de routage des modifications.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête rtmv2.h
Bibliothèque Rtm.lib
DLL Rtm.dll

Voir aussi

RTM_ROUTE_INFO

RtmAddRouteToDest

RtmDeleteRouteToDest

RtmGetRoutePointer

RtmHoldDestination

RtmUpdateAndUnlockRoute