次の方法で共有


OID_SWITCH_PORT_CREATE

Hyper-V 拡張可能スイッチのプロトコル エッジは、拡張可能スイッチ ポートの作成について拡張可能スイッチ拡張機能に通知するために、OID_SWITCH_PORT_CREATEのオブジェクト識別子 (OID) セット要求を発行します。

NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_SWITCH_PORT_PARAMETERS 構造体へのポインターが含まれています。

備考

NDIS_SWITCH_PORT_PARAMETERS 構造体の PortId メンバーは、作成通知を行うポートを指定します。

拡張可能スイッチ拡張機能は、OID_SWITCH_PORT_CREATEの OID セット要求を処理するために、次のガイドラインに従う必要があります。

  • 拡張機能は、OID 要求に関連付けられている NDIS_SWITCH_PORT_PARAMETERS 構造体を変更することはできません。

  • 拡張機能は、OID 要求のNDIS_STATUS_DATA_NOT_ACCEPTEDを返すことによって、作成通知を拒否できます。 たとえば、拡張機能が構成済みのポリシーをポートに適用するリソースを割り当てることができない場合、ドライバーは作成通知を拒否する必要があります。

    拡張機能が他のNDIS_STATUS_Xxx エラー状態コードを返した場合、作成通知も拒否されます。 ただし、NDIS_STATUS_RESOURCESの返しなど、一時的なシナリオの状態コードを返すと、作成通知が再試行される可能性があります。

    拡張機能が OID 要求を拒否しない場合は、要求が完了したときに状態を監視する必要があります。 拡張機能は、OID 要求が拡張可能スイッチ制御パスの基になる拡張機能によって拒否されたか、拡張可能スイッチ インターフェイスによって拒否されたかを判断するためにこれを行う必要があります。

    ポート ポリシーの詳細については、「拡張可能スイッチ ポリシーHyper-V 管理する」を参照してください。

  • 拡張機能が NdisFOidRequest呼び出してこの OID セット要求を転送する場合、拡張機能はこの OID 要求の完了状態を監視する必要があります。 拡張機能は、拡張可能スイッチ ドライバー スタック内の基になる拡張機能がポート作成通知を拒否したかどうかを検出するためにこれを行います。

  • OID 要求が転送され、正常に完了すると、拡張機能は、OID_SWITCH_PORT_TEARDOWN の OID 要求が発行されるまで、OID_SWITCH_PORT_PROPERTY_ENUMなどのポートの OID 要求を発行できます。 この OID 要求は、ポートが拡張可能スイッチからの削除プロセスを開始することを拡張機能に通知します。

  • 拡張機能は、OID_SWITCH_NIC_CONNECT の OID セット要求が発行され、正常に完了するまで、NDIS_SWITCH_PORT_PARAMETERS 構造体の指定されたポートにパケットを転送できません。

拡張機能は、OID_SWITCH_PORT_CREATEの OID セット要求を発行できません。

拡張可能スイッチ ポートとネットワーク アダプター接続の状態の詳細については、「Hyper-V 拡張可能スイッチ ポートとネットワーク アダプターの状態を参照してください。

戻り値の状態コード

拡張機能は、OID_SWITCH_PORT_CREATEの OID セット要求を完了すると、次のいずれかの状態コードを返します。

状態コード 形容

NDIS_STATUS_DATA_NOT_ACCEPTED

拡張機能は作成通知を拒否しました。

NDIS_STATUS_RESOURCES

リソース条件が低いため、拡張機能は作成通知を拒否しました。

NDIS_STATUS_xxx

拡張機能は、他の理由で作成通知を拒否しました。

拡張機能が OID セット要求を完了した場合、NDIS_STATUS_SUCCESSを返してはなりません。

拡張機能がOID_SWITCH_PORT_CREATEの OID セット要求を完了しない場合、要求は拡張可能スイッチの基になるミニポート エッジによって完了します。 基になるミニポート エッジは、この OID セット要求の次の状態コードを返します。

状態コード 形容

NDIS_STATUS_SUCCESS

OID 要求が正常に完了しました。

必要条件

バージョン

NDIS 6.30 以降でサポートされています。

ヘッダ

Ntddndis.h (Ndis.h を含む)

関連項目


NDIS_OID_REQUEST

NDIS_SWITCH_PORT_PARAMETERS

NdisFOidRequest

OID_SWITCH_NIC_CONNECT

OID_SWITCH_PORT_ARRAY

OID_SWITCH_PORT_PROPERTY_ENUM