PROTOCOL_CL_NOTIFY_CLOSE_AF fonction de rappel (ndis.h)

La fonction ProtocolClNotifyCloseAf avertit un client CoNDIS que le client doit fermer la famille d’adresses (AF) associée.

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

Syntaxe

PROTOCOL_CL_NOTIFY_CLOSE_AF ProtocolClNotifyCloseAf;

NDIS_STATUS ProtocolClNotifyCloseAf(
  [in] NDIS_HANDLE ClientAfContext
)
{...}

Paramètres

[in] ClientAfContext

Handle fourni par le client dans sa zone de contexte pour l’AF associé. Le client a alloué cette zone de contexte et a passé ce handle à NDIS dans son appel au Fonction NdisClOpenAddressFamilyEx .

Valeur retournée

ProtocolClNotifyCloseAf peut retourner l’un des éléments suivants :

Code de retour Description
NDIS_STATUS_SUCCESS
Le client a correctement fermé la famille d’adresses.
NDIS_STATUS_PENDING
Le client gère cette demande de manière asynchrone, et il appellera le Fonction NdisClNotifyCloseAddressFamilyComplete lorsque l’opération de fermeture est terminée.
NDIS_STATUS_XXX
Le client a échoué à la demande pour une raison déterminée par le pilote.

Remarques

The La fonction ProtocolClNotifyCloseAf est requise pour les clients CoNDIS. NDIS appelle ProtocolClNotifyCloseAf lorsqu’un gestionnaire d’appels avertit NDIS que la famille d’adresses (AF) spécifiée par le paramètre ProtocolAfContext doit être fermée. En réponse, le client doit :

  1. Appelez la fonction NdisClDropParty autant de fois que nécessaire jusqu’à ce qu’une seule partie reste active sur chaque connexion virtuelle multipoint (VC), si le client a des connexions multipoint actives.
  2. Appelez la fonction NdisClCloseCall autant de fois que nécessaire pour fermer tous les appels qui sont encore ouverts et associés à l’AF.
  3. Appelez la fonction NdisClDeregisterSap autant de fois que nécessaire pour annuler l’inscription de tous les points d’accès au service (SAP) que le client a inscrits auprès du gestionnaire d’appels.
  4. Appelez le Fonction NdisClCloseAddressFamily pour fermer l’AF.
Le client peut effectuer ces actions de manière asynchrone en retournant NDIS_STATUS_PENDING. Si le client termine l’appel de manière asynchrone, il doit ensuite appeler le Fonction NdisClNotifyCloseAddressFamilyComplete lorsque l’opération de fermeture est terminée. Si le client ne retourne pas NDIS_STATUS_PENDING, l’opération de fermeture est terminée lorsque ProtocolClNotifyCloseAf retourne.

NDIS appelle ProtocolClNotifyCloseAf à IRQL <= DISPATCH_LEVEL.

Le client peut utiliser le NdisAfHandle pendant que l’AF est ouvert ou pendant qu’un L’opération ProtocolClNotifyCloseAf est en attente. Si la La fonction ProtocolClNotifyCloseAf retourne NDIS_STATUS_PENDING, utilisez le handle dans le Appel NdisClNotifyCloseAddressFamilyComplete une fois l’opération de fermeture terminée.

Exemples

Pour définir une fonction ProtocolClNotifyCloseAf , 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, le vérificateur de pilotes statique (SDV) et d’autres outils de vérification de trouver les erreurs, et 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 ProtocolClNotifyCloseAf nommée « MyClNotifyCloseAf », utilisez le type PROTOCOL_CL_NOTIFY_CLOSE_AF comme indiqué dans cet exemple de code :

PROTOCOL_CL_NOTIFY_CLOSE_AF MyClNotifyCloseAf;

Ensuite, implémentez votre fonction comme suit :

_Use_decl_annotations_
NDIS_STATUS
 MyClNotifyCloseAf(
    NDIS_HANDLE  ProtocolAfContext
    )
  {...}

Le type de fonction PROTOCOL_CL_NOTIFY_CLOSE_AF 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_CL_NOTIFY_CLOSE_AF 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

NdisClCloseAddressFamily

NdisClCloseCall

NdisClDeregisterSap

NdisClDropParty

NdisClNotifyCloseAddressFamilyComplete

NdisClOpenAddressFamilyEx