NdisCmOpenAddressFamilyComplete, fonction (ndis.h)
NdisCmOpenAddressFamilyComplete retourne la status finale de l’ouverture d’un gestionnaire d’appels autonome d’un af donné pour un client particulier après que le gestionnaire d’appels a retourné NDIS_STATUS_PENDING en réponse à la demande open-AF d’origine de ce client.
Syntaxe
void NdisCmOpenAddressFamilyComplete(
[in] NDIS_STATUS Status,
[in] NDIS_HANDLE NdisAfHandle,
[in] NDIS_HANDLE CallMgrAfContext
);
Paramètres
[in] Status
Spécifie la status finale de l’opération open-AF, NDIS_STATUS_SUCCESS ou toute erreur déterminée par CM NDIS_STATUS_ XXX, sauf NDIS_STATUS_PENDING.
[in] NdisAfHandle
Spécifie le handle fourni par NDIS qui a été entré dans la fonction ProtocolCmOpenAf du gestionnaire d’appels, qui a retourné NDIS_STATUS_PENDING.
[in] CallMgrAfContext
Spécifie le handle d’une zone de contexte résident allouée par l’appelant dans laquelle le gestionnaire d’appels conserve l’état de l’ouverture de la famille d’adresses de ce client, y compris le NdisAfHandle, si l’ouverture a réussi. Si Status n’est pas NDIS_STATUS_SUCCESS, NDIS ignore ce paramètre.
Valeur de retour
None
Remarques
Un gestionnaire d’appels autonome doit appeler NdisCmOpenAddressFamilyComplete si sa fonction ProtocolCmOpenAf a précédemment renvoyé NDIS_STATUS_PENDING pour le NdisAfHandle donné. Le client, qui a lancé l’opération open-AF avec un appel à NdisClOpenAddressFamilyEx, ne peut pas effectuer d’autres opérations orientées connexion sur la même liaison tant que NdisCmOpenAddressFamilyComplete n’a pas provoqué un appel à ce client Fonction ProtocolClOpenAfCompleteEx .
Si l’appelant de NdisCmOpenAddressFamilyComplete définit Status sur NDIS_STATUS_SUCCESS, NDIS transmet ensuite le handle CallMgrAfContext donné en tant que paramètre d’entrée à toutes les fonctions ProtocolCmXxx et ProtocolCoXxx fournies par CM qui concernent l’ouverture du client de la famille d’adresses jusqu’à ce que le client ferme l’AF. Le gestionnaire d’appels doit libérer ou réutiliser toute zone de contexte AF qu’il a allouée avant de transmettre un échec status à NdisCmOpenAddressFamilyComplete.
Pour une ouverture réussie, le NdisAfHandle fourni par NDIS représente une association entre le gestionnaire d’appels et le client pour l’af ouvert sur un pilote miniport particulier auquel le gestionnaire d’appels et le client sont liés. Les deux pilotes de protocole doivent traiter NdisAfHandle comme une variable opaque à passer, sans modification et sans interprétation, dans les appels suivants aux fonctions NdisCl/Cm/CoXxx pour lesquelles ce handle est un paramètre obligatoire. En cas d’échec de l’ouverture, le gestionnaire d’appels doit considérer le NdisAfHandle non valide lorsque NdisMCmOpenAddressFamilyComplete retourne le contrôle.
Seuls les gestionnaires d’appels autonomes, qui s’inscrivent eux-mêmes auprès de NDIS en tant que pilotes de protocole, peuvent appeler NdisCmOpenAddressFamilyComplete. Les pilotes miniport orientés connexion qui fournissent une prise en charge intégrée de la gestion des appels doivent appeler NdisMCmOpenAddressFamilyComplete à la place.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir NdisCmOpenAddressFamilyComplete (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (voir NdisCmOpenAddressFamilyComplete (NDIS 5.1)) dans Windows XP. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | ndis.h (inclure Ndis.h) |
Bibliothèque | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Règles de conformité DDI | Irql_CallManager_Function(ndis) |