Condividi tramite


Richieste OID MCM CONDIS

Analogamente ad altri gestori di chiamate CoNDIS, i gestori di chiamate miniport possono eseguire query o impostare i parametri operativi dei driver client CoNDIS. I driver client CoNDIS possono eseguire query o impostare i parametri di gestione chiamate o i parametri del driver miniport di un MCM.

Per originare una richiesta OID a un driver client CoNDIS, un MCM chiama la funzione NdisMCmOidRequest .

La figura seguente illustra una richiesta OID originata da un MCM.

diagramma che illustra una richiesta oid originata da un mcm.

Dopo che un driver MCM chiama la funzione NdisMCmOidRequest, NDIS chiama la funzione ProtocolCoOidRequest del driver client.

Per completare in modo sincrono, NdisMCmOidRequest restituisce NDIS_STATUS_SUCCESS o uno stato di errore. Per completare in modo asincrono, NdisMCmOidRequest restituisce NDIS_STATUS_PENDING.

Se NdisMCmOidRequest restituisce NDIS_STATUS_PENDING, NDIS chiama la funzione ProtocolCoOidRequestComplete del MCM dopo che i driver client completano la richiesta OID chiamando la funzione NdisCoOidRequestComplete . In questo caso, NDIS passa i risultati della richiesta al parametro OidRequest di ProtocolCoOidRequestComplete. NDIS passa lo stato finale della richiesta al parametro Status di ProtocolCoOidRequestComplete.

Se NdisMCmOidRequest restituisce NDIS_STATUS_SUCCESS, restituisce i risultati di una richiesta di query nella struttura NDIS_OID_REQUEST nel parametro OidRequest . In questo caso, NDIS non chiama la funzione ProtocolCoOidRequestComplete del MCM.

I driver client CoNDIS possono eseguire query o impostare i parametri operativi del gestore chiamate o i parametri operativi miniport delle macchine virtuali. Per originare una richiesta OID per i parametri di gestione chiamate MCM, un client chiama la funzione NdisCoOidRequest e fornisce un handle della famiglia di indirizzi valido (AF) nel parametro NdisAfHandle . Per originare una richiesta OID per i parametri miniport MCM, un client chiama la funzione NdisCoOidRequest e imposta l'handle AF su NULL.

Dopo che un client chiama la funzione NdisCoOidRequest, NDIS chiama la funzione MiniportCoOidRequest o la funzione ProtocolCoOidRequest del driver MCM.

La figura seguente illustra una richiesta OID per i parametri miniport del MCM.

diagramma che illustra una richiesta oid per i parametri miniport del mcm.

Nella figura seguente viene illustrata una richiesta OID per i parametri di Gestione chiamate di MCM.

diagramma che illustra una richiesta oid per i parametri di gestione chiamate del mcm.

Per completare in modo sincrono, NdisCoOidRequest restituisce NDIS_STATUS_SUCCESS o uno stato di errore. Per completare in modo asincrono, ProtocolCoOidRequest o MiniportCoOidRequest restituisce NDIS_STATUS_PENDING.

Se ProtocolCoOidRequest o MininportCooidRequest restituisce NDIS_STATUS_PENDING, NDIS chiama la funzione ProtocolCoOidRequestComplete del client dopo il completamento della richiesta OID chiamando la funzione NdisMCoOidRequestComplete o NdisMCmOidRequestComplete. In questo caso, NDIS passa i risultati della richiesta al parametro OidRequest di ProtocolCoOidRequestComplete. NDIS passa lo stato finale della richiesta al parametro Status di ProtocolCoOidRequestComplete.

Se NdisCoOidRequest restituisce NDIS_STATUS_SUCCESS, restituisce i risultati di una richiesta di query nella struttura NDIS_OID_REQUEST nel parametro OidRequest . In questo caso, NDIS non chiama la funzione ProtocolCoOidRequestComplete del client.