Partager via


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 associée (AF).

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

Syntaxe

PROTOCOL_CL_NOTIFY_CLOSE_AF ProtocolClNotifyCloseAf;

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

Paramètres

[in] ClientAfContext

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

Valeur de retour

ProtocolClNotifyCloseAf pouvez retourner l’une des options suivantes :

Retourner le code Description
NDIS_STATUS_SUCCESS
Le client a correctement fermé la famille d’adresses.
NDIS_STATUS_PENDING
Le client gère cette requête de façon asynchrone et 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

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

  1. Appelez la NdisClDropParty fonction 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 toujours ouverts et associés à l’AF.
  3. Appelez la fonction NdisClDeregisterSap fonction autant de fois que nécessaire pour désinscrire tous les points d’accès au service (SAP) que le client a enregistrés auprès du gestionnaire d’appels.
  4. Appeler 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 façon 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 au <IRQL = DISPATCH_LEVEL.

Le client peut utiliser le NdisAfHandle pendant que l’af est ouvert ou pendant un 'opération protocolClNotifyCloseAf est en attente. Si le ProtocolClNotifyCloseAf fonction retourne NDIS_STATUS_PENDING, utilisez le handle dans le NdisClNotifyCloseAddressFamilyComplete appel une fois l’opération de fermeture terminée.

exemples de

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 fonctions permet d'Analyse du code pour les pilotes, de vérificateur de pilotes statiques (SDV) et d’autres outils de vérification recherchent des erreurs, et il est nécessaire d’écrire des 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 lorsque vous exécutez les 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 annoter le comportement de la fonction.

Exigences

Exigence Valeur
client minimum pris en charge Prise en charge dans NDIS 6.0 et versions ultérieures.
plateforme cible Windows
d’en-tête ndis.h (include Ndis.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

NdisClCloseAddressFamily

NdisClCloseCall

NdisClDeregisterSap

NdisClDropParty

NdisClNotifyCloseAddressFamilyComplete

NdisClOpenAddressFamilyEx