Partager via


NdisClOpenAddressFamilyEx, fonction (ndis.h)

La fonction NdisClOpenAddressFamilyEx inscrit une famille d’adresses (AF) associée à un gestionnaire d’appels pour un client orienté connexion.

Syntaxe

NDIS_STATUS NdisClOpenAddressFamilyEx(
  [in]  NDIS_HANDLE        NdisBindingHandle,
  [in]  PCO_ADDRESS_FAMILY AddressFamily,
  [in]  NDIS_HANDLE        ClientAfContext,
  [out] PNDIS_HANDLE       NdisAfHandle
);

Paramètres

[in] NdisBindingHandle

Handle retourné par NdisOpenAdapterEx et qui identifie le carte d’interface réseau cible ou la carte virtuelle du pilote inférieur suivant auquel l’appelant est lié.

[in] AddressFamily

Pointeur vers une structure de CO_ADDRESS_FAMILY qui décrit le gestionnaire d’appels et af à ouvrir.

Ce pointeur est un paramètre d’entrée vers le client Fonction ProtocolCoAfRegisterNotify , qui appelle NdisClOpenAddressFamilyEx.

[in] ClientAfContext

Handle d’une zone de contexte résident fournie par l’appelant dans laquelle le client maintient l’état de cet AF après l’ouverture de l’AF. NDIS transmet ce handle au client dans tous les appels suivants concernant cet AF si l’appel à NdisClOpenAddressFamilyEx réussit.

[out] NdisAfHandle

Pointeur vers une variable fournie par l’appelant dans laquelle NdisClOpenAddressFamilyEx retourne un handle qui représente la famille d’adresses nouvellement ouverte.

Valeur retournée

Lorsque NdisClOpenAddressFamilyEx retourne autre chose que NDIS_STATUS_PENDING, le client doit effectuer un appel interne à son Fonction ProtocolClOpenAfCompleteEx . Sinon, NDIS appelle la fonction ProtocolClOpenAfCompleteEx du client lorsque cette opération est terminée.

Remarques

Un client CoNDIS appelle NdisClOpenAddressFamilyEx à partir de son Fonction ProtocolCoAfRegisterNotify , une fois que le client a vérifié la mémoire tampon d’entrée pointée par le paramètre AddressFamily pour déterminer si le client reconnaît le gestionnaire d’appels et les adresses inscrites. NDIS transfère l’appel du client de NdisClOpenAddressFamilyEx à la fonction ProtocolCmOpenAf du gestionnaire d’appels, qui garantit que le client a passé une structure AF valide.

Un appel réussi à NdisClOpenAddressFamilyEx configure la communication entre le client et un gestionnaire d’appels. Le client peut ensuite se préparer à recevoir des appels entrants en appelant la fonction NdisClRegisterSap . Le client peut également configurer une connexion virtuelle (VC) en appelant la fonction NdisCoCreateVc afin qu’il puisse effectuer un appel sortant en appelant la fonction NdisClMakeCall .

Si l’appel du client à NdisClOpenAddressFamilyEx échoue, le client doit appeler la fonction NdisUnbindAdapter pour demander à NDIS de libérer sa liaison à l’adaptateur miniport sous-jacent. Sinon, le client doit enregistrer le handle retourné au niveau du paramètre NdisAfHandle . Ce handle identifie le gestionnaire d’appels vers lequel les demandes suivantes concernant la famille d’adresses donnée sont dirigées. Le client doit traiter ce handle retourné comme une variable opaque, en le passant sans modification et non interprété dans les appels de fonction NdisXxx suivants.

NDIS transmet le pointeur du paramètre ClientAfContext aux fonctions ProtocolClXxx inscrites du client dans tous les appels suivants qui concernent af jusqu’à ce que le client appelle NdisClCloseAddressFamily avec le même NdisAfHandle . Une fois l’af-af fermé, le client peut libérer ou réutiliser le stockage qu’il a alloué dans ClientAfContext .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
Plateforme cible Desktop (Expérience utilisateur)
En-tête ndis.h (inclure Ndis.h)
Bibliothèque Ndis.lib
IRQL PASSIVE_LEVEL
Règles de conformité DDI Irql_Protocol_Driver_Function(ndis)

Voir aussi

CO_ADDRESS_FAMILY

NdisAllocateFromNPagedLookasideList

NdisClCloseAddressFamily

NdisClMakeCall

NdisClRegisterSap

NdisCoCreateVc

NdisOpenAdapterEx

NdisUnbindAdapter

ProtocolClOpenAfCompleteEx

ProtocolCmOpenAf

ProtocolCoAfRegisterNotify