Condividi tramite


Funzione NdisClOpenAddressFamilyEx (ndis.h)

La funzione NdisClOpenAddressFamilyEx registra una famiglia di indirizzi (AF) associata a un gestore chiamate per un client orientato alla connessione.

Sintassi

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

Parametri

[in] NdisBindingHandle

Handle restituito da NdisOpenAdapterEx e che identifica la scheda di interfaccia di rete di destinazione o la scheda virtuale del driver inferiore successivo a cui è associato il chiamante.

[in] AddressFamily

Puntatore a una struttura di CO_ADDRESS_FAMILY che descrive il gestore chiamate e l'afta da aprire.

Questo puntatore è un parametro di input per il client Funzione ProtocolCoAfRegisterNotify , che chiama NdisClOpenAddressFamilyEx.

[in] ClientAfContext

Handle a un'area del contesto residente fornita dal chiamante in cui il client mantiene lo stato per questo afta dopo l'apertura dell'afta. NDIS passa di nuovo questo handle al client in tutte le chiamate successive relative a questo afta se la chiamata a NdisClOpenAddressFamilyEx ha esito positivo.

[out] NdisAfHandle

Puntatore a una variabile fornita dal chiamante in cui NdisClOpenAddressFamilyEx restituisce un handle che rappresenta la famiglia di indirizzi appena aperta.

Valore restituito

Quando NdisClOpenAddressFamilyEx restituisce qualsiasi valore diverso da NDIS_STATUS_PENDING, il client deve effettuare una chiamata interna al relativo Funzione ProtocolClOpenAfCompleteEx . In caso contrario, NDIS chiama la funzione ProtocolClOpenAfCompleteEx del client al termine di questa operazione.

Commenti

Un client CoNDIS chiama NdisClOpenAddressFamilyEx dal relativo ProtocolCoAfRegisterNotify funzione, dopo che il client controlla il buffer di input a cui punta il parametro AddressFamily per determinare se il client riconosce il gestore chiamate e gli indirizzi registrati. NDIS inoltra la chiamata del client di NdisClOpenAddressFamilyEx alla funzione ProtocolCmOpenAf del gestore chiamate, che garantisce che il client abbia passato una struttura AF valida.

Una chiamata riuscita a NdisClOpenAddressFamilyEx configura la comunicazione dal client a un gestore chiamate. Il client può quindi preparare la ricezione delle chiamate in ingresso chiamando la funzione NdisClRegisterSap . Il client può anche configurare una connessione virtuale chiamando la funzione NdisCoCreateVc in modo che possa effettuare una chiamata in uscita chiamando la funzione NdisClMakeCall .

Se la chiamata del client a NdisClOpenAddressFamilyEx ha esito negativo, il client deve chiamare la funzione NdisUnbindAdapter per richiedere a NDIS di rilasciare il binding all'adattatore miniport sottostante. In caso contrario, il client deve salvare l'handle restituito nel parametro NdisAfHandle . Questo handle identifica il gestore chiamate a cui vengono indirizzate le richieste successive relative alla famiglia di indirizzi specificata. Il client deve considerare questo handle restituito come variabile opaca, passandolo non modificato e non interpretato nelle successive chiamate di funzione NdisXxx .

NDIS passa il puntatore dal parametro ClientAfContext alle funzioni ProtocolClXxx registrate del client in tutte le chiamate successive che riguardano l'AF finché il client chiama NdisClCloseAddressFamily con lo stesso NdisAfHandle . Dopo la chiusura dell'afta, il client può rilasciare o riutilizzare lo spazio di archiviazione allocato in ClientAfContext .

Requisiti

Requisito Valore
Client minimo supportato Supportato in NDIS 6.0 e versioni successive.
Piattaforma di destinazione Desktop
Intestazione ndis.h (include Ndis.h)
Libreria Ndis.lib
IRQL PASSIVE_LEVEL
Regole di conformità DDI Irql_Protocol_Driver_Function(ndis)

Vedi anche

CO_ADDRESS_FAMILY

NdisAllocateFromNPagedLookasideList

NdisClCloseAddressFamily

NdisClMakeCall

NdisClRegisterSap

NdisCoCreateVc

NdisOpenAdapterEx

NdisUnbindAdapter

ProtocolClOpenAfCompleteEx

ProtocolCmOpenAf

ProtocolCoAfRegisterNotify