次の方法で共有


CoNDIS MCM OID 要求

他の CoNDIS コール マネージャーと同様に、ミニポート コール マネージャー (MCM) は、CoNDIS クライアント ドライバーの操作パラメーターを照会または設定できます。 CoNDIS クライアント ドライバーは、MCM のコール マネージャー パラメーターまたはミニポート ドライバー パラメーターを照会または設定できます。

CoNDIS クライアント ドライバーに OID 要求を送信するために、MCM は NdisMCmOidRequest 関数を呼び出します。

次の図は、MCM が発信した OID 要求を示しています。

diagram illustrating an oid request that an mcm originated.

MCM ドライバーが NdisMCmOidRequest 関数を呼び出した後、NDIS は、クライアント ドライバーの ProtocolCoOidRequest 関数を呼び出します。

同期的に完了するため、NdisMCmOidRequest は NDIS_STATUS_SUCCESS またはエラー状態を返します。 非同期的に完了するため、NdisMCmOidRequest は NDIS_STATUS_PENDING を返します。

NdisMCmOidRequest が NDIS_STATUS_PENDING を返す場合、NDIS はクライアント ドライバーが NdisCoOidRequestComplete 関数を呼び出すことによって OID 要求を完了した後、MCM の ProtocolCoOidRequestComplete 関数を呼び出します。 このケースでは、NDIS は ProtocolCoOidRequestCompleteOidRequest パラメーターで要求の結果を渡します。 NDIS は、ProtocolCoOidRequestCompleteStatus パラメーターで要求の最終的な状態を渡します。

NdisMCmOidRequest が NDIS_STATUS_SUCCESS を返す場合は、NDIS_OID_REQUEST 構造の OidRequest パラメーターにクエリ要求の結果を返します。 このケースでは、NDIS は MCMの ProtocolCoOidRequestComplete 関数を呼び出しません。

CoNDIS クライアント ドライバーは、MCM の操作パラメーターまたはミニポート操作パラメーターを照会または設定できます。 MCM コール マネージャー パラメーターの OID 要求を開始するため、クライアントは NdisCoOidRequest 関数を呼び出し、NdisAfHandle パラメーターで有効なアドレス ファミリ (AF) ハンドルを提供します。 MCM ミニポート パラメーターの OID 要求を開始するため、クライアントは NdisCoOidRequest 関数を呼び出し、AF ハンドルを NULL に設定します。

クライアントが NdisCoOidRequest 関数を呼び出した後、NDIS は、MiniportCoOidRequest 関数または MCM ドライバーの ProtocolCoOidRequest 関数を呼び出します。

次の図は、MCM のミニポート パラメーターの OID 要求を示しています。

diagram illustrating an oid request for the miniport parameters of the mcm.

次の図は、MCM のコール マネージャー パラメーターの OID 要求を示しています。

diagram illustrating an oid request for the call manager parameters of the mcm.

同期的に完了するため、NdisCoOidRequest は NDIS_STATUS_SUCCESS またはエラー状態を返します。 非同期的に完了するため、ProtocolCoOidRequest または MiniportCoOidRequest は NDIS_STATUS_PENDING を返します。

ProtocolCoOidRequest または MininportCoOidRequest が NDIS_STATUS_PENDING を返す場合、NDIS は、MCM が NdisMCoOidRequestComplete または NdisMCmOidRequestComplete 関数を呼び出して OID 要求を完了した後、クライアントの ProtocolCoOidRequestComplete 関数を呼び出します。 このケースでは、NDIS は ProtocolCoOidRequestCompleteOidRequest パラメーターで要求の結果を渡します。 NDIS は、ProtocolCoOidRequestCompleteStatus パラメーターで要求の最終的な状態を渡します。

NdisCoOidRequest が NDIS_STATUS_SUCCESS を返す場合は、NDIS_OID_REQUEST 構造体の OidRequest パラメーターにクエリ要求の結果を返します。 このケースでは、NDIS はクライアントの ProtocolCoOidRequestComplete 関数を呼び出しません。