NdisClOpenAddressFamilyEx-Funktion (ndis.h)
Die NdisClOpenAddressFamilyEx-Funktion registriert eine Adressfamilie (AF), die einem Anrufmanager für einen verbindungsorientierten Client zugeordnet ist.
Syntax
NDIS_STATUS NdisClOpenAddressFamilyEx(
[in] NDIS_HANDLE NdisBindingHandle,
[in] PCO_ADDRESS_FAMILY AddressFamily,
[in] NDIS_HANDLE ClientAfContext,
[out] PNDIS_HANDLE NdisAfHandle
);
Parameter
[in] NdisBindingHandle
Das Handle, das NdisOpenAdapterEx zurückgibt und die die Zielnetzwerkschnittstellenkarte (NIC) oder den virtuellen Adapter des nächsten niedrigeren Treibers identifiziert, an den der Aufrufer gebunden ist.
[in] AddressFamily
Ein Zeiger auf eine CO_ADDRESS_FAMILY-Struktur, die den zu öffnenden Anrufmanager und AF beschreibt.
Dieser Zeiger ist ein Eingabeparameter für den Client ProtocolCoAfRegisterNotify Funktion, die NdisClOpenAddressFamilyExaufruft.
[in] ClientAfContext
Das Handle für einen vom Anrufer bereitgestellten Gebietskontextbereich, in dem der Client den Zustand für diesen AF verwaltet, nachdem der AF geöffnet wurde. NDIS übergibt dieses Handle in allen nachfolgenden Aufrufen dieses AF an den Client, wenn der Aufruf von NdisClOpenAddressFamilyEx erfolgreich ist.
[out] NdisAfHandle
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der NdisClOpenAddressFamilyEx ein Handle zurückgibt, das die neu geöffnete Adressfamilie darstellt.
Rückgabewert
Wenn NdisClOpenAddressFamilyEx alles andere als NDIS_STATUS_PENDING zurückgibt, sollte der Client einen internen Aufruf an seinen ProtocolClOpenAfCompleteEx--Funktion. Andernfalls ruft NDIS die ProtocolClOpenAfCompleteEx--Funktion des Clients auf, wenn dieser Vorgang abgeschlossen ist.
Bemerkungen
Ein CoNDIS-Client ruft NdisClOpenAddressFamilyEx- von seinem ProtocolCoAfRegisterNotify Funktion, nachdem der Client den Eingabepuffer überprüft hat, auf den der AddressFamily Parameter verweist, um zu bestimmen, ob der Client den Anruf-Manager und registrierte Adressen erkennt. NDIS leitet den Aufruf NdisClOpenAddressFamilyEx an die ProtocolCmOpenAf--Funktion des Anrufmanagers weiter, wodurch sichergestellt wird, dass der Client in einer gültigen AF-Struktur übergeben wurde.
Ein erfolgreicher Anruf an NdisClOpenAddressFamilyEx richtet die Kommunikation vom Client an einen Anrufmanager ein. Der Client kann sich dann darauf vorbereiten, eingehende Anrufe zu empfangen, indem er die NdisClRegisterSap--Funktion aufruft. Der Client kann auch eine virtuelle Verbindung (VC) einrichten, indem er die NdisCoCreateVc--Funktion aufruft, damit er einen ausgehenden Anruf tätigen kann, indem er die NdisClMakeCall--Funktion aufruft.
Wenn der Aufruf des Clients an NdisClOpenAddressFamilyEx fehlschlägt, sollte der Client den NdisUnbindAdapter-Funktion aufrufen, um NDIS anzufordern, seine Bindung an den zugrunde liegenden Miniportadapter freizugeben. Andernfalls muss der Client das Handle speichern, das an der NdisAfHandle Parameter zurückgegeben wird. Mit diesem Handle wird der Anrufmanager identifiziert, an den nachfolgende Anfragen bezüglich der angegebenen Adressfamilie weitergeleitet werden. Der Client muss dieses zurückgegebene Handle als undurchsichtige Variable behandeln und in nachfolgenden NdisXxx-funktionsaufrufen unverändert und uninterpretiert übergeben.
NDIS übergibt den Zeiger vom ClientAfContext Parameter an die registrierten ProtocolClXxx- Funktionen des Clients in allen nachfolgenden Aufrufen, die den AF betreffen, bis der Client NdisClCloseAddressFamily mit demselben NdisAfHandle aufruft. Nachdem der AF geschlossen wurde, kann der Client den speicher freigeben oder wiederverwenden, der bei ClientAfContext zugewiesen wurde.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.0 und höher. |
Zielplattform- | Desktop |
Header- | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | Irql_Protocol_Driver_Function(ndis) |