Freigeben über


CoNDIS MCM-OID-Anforderungen

Wie andere CoNDIS-Anruf-Manager können miniport Call Manager (MCMs) die Betriebsparameter von CoNDIS-Clienttreibern abfragen oder festlegen. CoNDIS-Clienttreiber können die Anruf-Manager-Parameter oder die Miniporttreiberparameter eines MCM abfragen oder festlegen.

Um eine OID-Anforderung an einen CoNDIS-Clienttreiber zu erstellen, ruft ein MCM die NdisMCmOidRequest-Funktion auf.

Die folgende Abbildung veranschaulicht eine OID-Anforderung, die von einem MCM stammt.

Diagramm zur Veranschaulichung einer oid-Anforderung, die von einem mcm stammt.

Nachdem ein MCM-Treiber die NdisMCmOidRequest-Funktion aufgerufen hat, ruft NDIS die ProtocolCoOidRequest-Funktion des Clienttreibers auf.

Um synchron abzuschließen, gibt NdisMCmOidRequest NDIS_STATUS_SUCCESS oder einen Fehler status zurück. Um asynchron abzuschließen, gibt NdisMCmOidRequest NDIS_STATUS_PENDING zurück.

Wenn NdisMCmOidRequest NDIS_STATUS_PENDING zurückgibt, ruft NDIS die ProtocolCoOidRequestComplete-Funktion des MCM auf, nachdem die Clienttreiber die OID-Anforderung durch Aufrufen der NdisCoOidRequestComplete-Funktion abgeschlossen haben. In diesem Fall übergibt NDIS die Ergebnisse der Anforderung am OidRequest-Parameter von ProtocolCoOidRequestComplete. NDIS übergibt die letzte status der Anforderung am Statusparameter von ProtocolCoOidRequestComplete.

Wenn NdisMCmOidRequest NDIS_STATUS_SUCCESS zurückgibt, werden die Ergebnisse einer Abfrageanforderung in der NDIS_OID_REQUEST-Struktur am OidRequest-Parameter zurückgegeben. In diesem Fall ruft NDIS die ProtocolCoOidRequestComplete-Funktion des MCM nicht auf.

CoNDIS-Clienttreiber können die Betriebsparameter des Anruf-Managers oder die Miniport-Betriebsparameter von MCMs abfragen oder festlegen. Um eine OID-Anforderung für MCM-Aufruf-Manager-Parameter zu erstellen, ruft ein Client die NdisCoOidRequest-Funktion auf und stellt ein gültiges Adressfamilienhandle -Handle (AF) am NdisAfHandle-Parameter bereit. Um eine OID-Anforderung für MCM-Miniportparameter zu erstellen, ruft ein Client die NdisCoOidRequest-Funktion auf und legt das AF-Handle auf NULL fest.

Nachdem ein Client die NdisCoOidRequest-Funktion aufgerufen hat, ruft NDIS entweder die MiniportCoOidRequest-Funktion oder die ProtocolCoOidRequest-Funktion des MCM-Treibers auf.

Die folgende Abbildung veranschaulicht eine OID-Anforderung für die Miniportparameter des MCM.

Diagramm, das eine OID-Anforderung für die Miniportparameter des mcm veranschaulicht.

Die folgende Abbildung veranschaulicht eine OID-Anforderung für die Anruf-Manager-Parameter des MCM.

Diagramm, das eine OID-Anforderung für die Aufruf-Manager-Parameter des mcm veranschaulicht.

Um synchron abzuschließen, gibt NdisCoOidRequest NDIS_STATUS_SUCCESS oder einen Fehler status zurück. Um asynchron abzuschließen, gibt ProtocolCoOidRequest oder MiniportCoOidRequest NDIS_STATUS_PENDING zurück.

Wenn ProtocolCoOidRequest oder MininportCoOidRequest NDIS_STATUS_PENDING zurückgibt, ruft NDIS die ProtocolCoOidRequestComplete-Funktion des Clients auf, nachdem der MCM die OID-Anforderung durch Aufrufen der NdisMCoOidRequestComplete - oder NdisMCmOidRequestComplete-Funktion abgeschlossen hat . In diesem Fall übergibt NDIS die Ergebnisse der Anforderung am OidRequest-Parameter von ProtocolCoOidRequestComplete. NDIS übergibt die letzte status der Anforderung am Statusparameter von ProtocolCoOidRequestComplete.

Wenn NdisCoOidRequest NDIS_STATUS_SUCCESS zurückgibt, werden die Ergebnisse einer Abfrageanforderung in der NDIS_OID_REQUEST-Struktur am OidRequest-Parameter zurückgegeben. In diesem Fall ruft NDIS die ProtocolCoOidRequestComplete-Funktion des Clients nicht auf.