FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 コールバック関数 (fwpsk.h)
フィルター エンジンは、vSwitchLifetimeNotifyFn (FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0) 吹き出し関数を呼び出して、仮想スイッチの作成イベントと削除イベントについてコールアウト ドライバーに通知します。
構文
FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 FwpsVswitchLifetimeEventCallback0;
NTSTATUS FwpsVswitchLifetimeEventCallback0(
[in, optional] void *notifyContext,
[in] FWPS_VSWITCH_EVENT_TYPE eventType,
[in] const NDIS_SWITCH_PARAMETERS *vSwitch,
[in, optional] const NDIS_SWITCH_PORT_ARRAY *vSwitchPorts,
[in, optional] const NDIS_SWITCH_NIC_ARRAY *vSwitchInterfaces
)
{...}
パラメーター
[in, optional] notifyContext
引き出しドライバーによって提供されるコンテキストへのポインター。 ドライバーは、FwpsvSwitchEventsSubscribe0 関数の notifyContext パラメーターにこのポインターを渡しました。 このパラメーターは省略可能であり、NULL にすることができます。
[in] eventType
FWPS_VSWITCH_EVENT_TYPE 列挙値の 1 つとして指定された仮想スイッチ イベントの種類。 詳細については、「解説」を参照してください。
[in] vSwitch
仮想スイッチに関する情報を含む NDIS_SWITCH_PARAMETERS 構造体へのポインター。
[in, optional] vSwitchPorts
ポート構成パラメーターの配列を指定する NDIS_SWITCH_PORT_ARRAY 構造体へのポインター。 配列内の各要素は、仮想スイッチ上のポートのパラメーターを指定します。
[in, optional] vSwitchInterfaces
ミニポート アダプター構成パラメーターの配列を指定する NDIS_SWITCH_NIC_ARRAY 構造体へのポインター。 配列内の各要素は、仮想スイッチのポートに接続されている仮想または物理ミニポート アダプターのパラメーターを指定します。
戻り値
吹き出しの
FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 関数は、次のいずれかの NTSTATUS コードを返します。
リターン コード | 形容 |
---|---|
|
吹き出しドライバーは、フィルター エンジンからの通知を受け入れます。 |
|
エラーが発生しました。 |
備考
コールアウト ドライバーは、vSwitchLifetimeNotifyFn コールバック関数を登録します。
FwpsvSwitchEventsSubscribe0 関数。
vSwitchLifetimeNotifyFn コールバックが登録されている場合、WFP フィルター ドライバーは、仮想スイッチ インスタンスの作成時にコールアウト ドライバーに通知します。 仮想スイッチの複数のインスタンスは、Hyper-V ホスト内に同時に存在できます。
WFP フィルター ドライバーは、FilterRestart 関数の OID_SWITCH_PARAMETERS OID を照会して、仮想スイッチの現在のインスタンスに関連付けられている仮想スイッチ識別子を取得します。 WFP フィルター ドライバーでは、OID_SWITCH_NIC_ARRAY と OID_SWITCH_PORT_ARRAY OID のクエリを実行して、構成済みの仮想 NIC と仮想ポートの初期セットを取得します。 WFP フィルター ドライバーは、eventType パラメーターにFWPS_VSWITCH_EVENT_VSWITCH_CREATEが設定された vSwitchLifetimeNotifyFn に oid から NDIS_SWITCH_PORT_ARRAY および NDIS_SWITCH_NIC_ARRAY 構造体の情報を渡します。
WFP フィルター ドライバーの FilterDetachでは、eventTypevSwitchLifetimeNotifyFn パラメーターに設定FWPS_VSWITCH_EVENT_VSWITCH_DELETEを使用してフィルターが呼び出されます。
コールアウト ドライバーは、vSwitchLifetimeNotifyFnからSTATUS_PENDINGを返すことはできません。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 以降で使用できます。 |
ターゲット プラットフォーム の | ウィンドウズ |
ヘッダー | fwpsk.h (Fwpsk.h を含む) |
IRQL | <= DISPATCH_LEVEL |
関連項目
FWPS_VSWITCH_PORT_EVENT_CALLBACK0
NdisFRestartComplete の