Share via


PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE fonction de rappel (ndis.h)

La fonction ProtocolCmNotifyCloseAfComplete indique qu’un client a terminé la fermeture d’une famille d’adresses (AF) qu’un gestionnaire d’appels autonome ou un gestionnaire d’appels miniport (MCM) a commencé en appelant le NdisCmNotifyCloseAddressFamily ou Fonction NdisMCmNotifyCloseAddressFamily , respectivement.

Note Vous devez déclarer la fonction à l’aide du type PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE . Pour plus d’informations, consultez la section Exemples suivante.
 

Syntaxe

PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE ProtocolCmNotifyCloseAfComplete;

void ProtocolCmNotifyCloseAfComplete(
  [in] NDIS_HANDLE CallMgrAfContext,
  [in] NDIS_STATUS Status
)
{...}

Paramètres

[in] CallMgrAfContext

Handle de la zone de contexte AF du gestionnaire d’appels que le gestionnaire d’appels a fourni à NDIS dans la fonction ProtocolCmOpenAf .

[in] Status

Les clients status finaux pour la notification de fermeture AF. L’état peut être l’un des éléments suivants :

NDIS_STATUS_SUCCESS

Le client a correctement fermé sa famille d’adresses.

NDIS_STATUS_XXX

Le client a échoué à la demande pour une raison déterminée par le pilote.

Valeur de retour

None

Remarques

La fonction ProtocolCmNotifyCloseAfComplete est requise pour les gestionnaires d’appels CoNDIS.

Si un gestionnaire d’appels autonome est dissocié d’un adaptateur miniport sous-jacent, le gestionnaire d’appels doit appeler le Fonction NdisCmNotifyCloseAddressFamily avant la dissociation. Lorsqu’un gestionnaire d’appels miniport (MCM) arrête un adaptateur miniport, le MCM doit appeler le Fonction NdisMCmNotifyCloseAddressFamily .

Si NdisCmNotifyCloseAddressFamily ou NdisMCmNotifyCloseAddressFamily retourne NDIS_STATUS_PENDING, NDIS appelle ProtocolCmNotifyCloseAfComplete une fois que le client a terminé l’opération de fermeture AF.

NDIS appelle ProtocolCmNotifyCloseAfComplete à l’adresse IRQL <= DISPATCH_LEVEL.

Exemples

Pour définir une fonction ProtocolCmNotifyCloseAfComplete , vous devez d’abord fournir une déclaration de fonction qui identifie le type de fonction que vous définissez. Windows fournit un ensemble de types de fonctions pour les pilotes. La déclaration d’une fonction à l’aide des types de fonction permet à l’analyse du code pour les pilotes, au vérificateur de pilotes statiques (SDV) et à d’autres outils de vérification de trouver des erreurs. Il s’agit d’une exigence pour l’écriture de pilotes pour le système d’exploitation Windows.

Par exemple, pour définir une fonction ProtocolCmNotifyCloseAfComplete nommée « MyCmNotifyCloseAfComplete », utilisez le type PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE comme indiqué dans cet exemple de code :

PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE MyCmNotifyCloseAfComplete;

Ensuite, implémentez votre fonction comme suit :

_Use_decl_annotations_
VOID
 MyCmNotifyCloseAfComplete(
    NDIS_HANDLE  CallMgrAfContext,
    NDIS_STATUS  Status
    )
  {...}

Le type de fonction PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE est défini dans le fichier d’en-tête Ndis.h. Pour identifier plus précisément les erreurs lors de l’exécution des outils d’analyse du code, veillez à ajouter l’annotation Use_decl_annotations à votre définition de fonction. L’annotation Use_decl_annotations garantit que les annotations appliquées au type de fonction PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE dans le fichier d’en-tête sont utilisées. Pour plus d’informations sur la configuration requise pour les déclarations de fonction, consultez Déclaration de fonctions à l’aide de types de rôles de fonction pour les pilotes NDIS.

Pour plus d’informations sur Use_decl_annotations, consultez Annotating Function Behavior.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
Plateforme cible Windows
En-tête ndis.h (inclure Ndis.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

NdisCmNotifyCloseAddressFamily NdisMCmNotifyCloseAddressFamily

ProtocolCmOpenAf