次の方法で共有


FWPS_VSWITCH_PORT_EVENT_CALLBACK0コールバック関数 (fwpsk.h)

フィルター エンジンは、vSwitchPortEventNotifyFn (FWPS_VSWITCH_PORT_EVENT_CALLBACK0) 吹き出し関数を呼び出して、仮想スイッチ (vSwitch) ポートに関連付けられているイベントについてコールアウト ドライバーに通知します。

注意FWPS_VSWITCH_PORT_EVENT_CALLBACK0 は、FWPS_VSWITCH_PORT_EVENT_CALLBACKの特定のバージョンです。 詳細については、「WFP Version-Independent 名の と Windows の特定のバージョンを対象とする」を参照してください。

 

構文

FWPS_VSWITCH_PORT_EVENT_CALLBACK0 FwpsVswitchPortEventCallback0;

NTSTATUS FwpsVswitchPortEventCallback0(
  [in, optional] void *notifyContext,
  [in]           void *completionContext,
  [in]           FWPS_VSWITCH_EVENT_TYPE eventType,
  [in]           const NDIS_SWITCH_PARAMETERS *vSwitch,
  [in]           const NDIS_SWITCH_PORT_PARAMETERS *vSwitchPort
)
{...}

パラメーター

[in, optional] notifyContext

引き出しドライバーによって提供されるコンテキストへのポインター。 ドライバーは、FwpsvSwitchEventsSubscribe0 関数の notifyContext パラメーターにこのポインターを渡しました。 このパラメーターは省略可能であり、NULL にすることができます。

[in] completionContext

コールアウト ドライバーによって提供される完了コンテキストへのポインター。 このパラメーターは省略可能であり、NULL にすることができます。

[in] eventType

FWPS_VSWITCH_EVENT_TYPE 列挙値の 1 つとして指定された仮想スイッチ vSwitch イベントの種類。 詳細については、「解説」を参照してください。

[in] vSwitch

仮想スイッチに関する情報を含む NDIS_SWITCH_PARAMETERS 構造体へのポインター。

NDIS_SWITCH_PARAMETERS 構造体の情報は仮想スイッチの初期状態を反映しますが、必ずしも現在の状態であるとは限りません。 特に、NumSwitchPorts および IsActive メンバーの初期値は、仮想スイッチ PnP イベントがトリガーされていない限り、引き続きゼロになる可能性があります。 現在の状態情報は、このコールバック関数の他のパラメーターにあります。
 

[in] vSwitchPort

vSwitch 上のポートのパラメーターを含む NDIS_SWITCH_PORT_PARAMETERS 構造体へのポインター。

戻り値

吹き出しの

FWPS_VSWITCH_PORT_EVENT_CALLBACK0 関数は、次のいずれかの NTSTATUS コードを返します。

リターン コード 形容
STATUS_SUCCESS
吹き出しドライバーは、フィルター エンジンからの通知を受け入れます。
STATUS_PENDING
操作は保留中であり、後で完了します。 コールアウト ドライバーは、FwpsvSwitchNotifyComplete0 関数を呼び出して、保留中の操作を完了します。
その他の状態コードの
エラーが発生しました。

備考

コールアウト ドライバーは、FwpsvSwitchEventsSubscribe0 関数を呼び出すことによって、vSwitchPortEventNotifyFn 関数を登録します。

vSwitchPortEventNotifyFn コールバックが登録されている場合、コールアウト ドライバーはポートの作成と削除の通知を受け取ります。

eventType パラメーターが FWPS_VSWITCH_EVENT_PORT_CREATE に設定されている場合は、vSwitch ポートが作成されました。 この場合、vSwitch パラメーターは、仮想スイッチ (vSwitch) に関する情報を含む NDIS_SWITCH_PARAMETERS 構造体を識別し、NDIS_SWITCH_PORT_PARAMETERS パラメーターにはポートに関する情報が含まれています。

吹き出しは、vSwitchPortEventNotifyFnからSTATUS_PENDINGを返すことができます。 この場合、コールアウト ドライバーは、FwpsvSwitchNotifyComplete0 関数を呼び出して、保留中の操作を完了します。

ポートが削除されると、WFP フィルター ドライバーは、eventType パラメーターにFWPS_VSWITCH_EVENT_PORT_DELETEが設定された vSwitchPortEventNotifyFn 呼び出します。

必要条件

要件 価値
サポートされる最小クライアント Windows 8 以降で使用できます。
ターゲット プラットフォーム ウィンドウズ
ヘッダー fwpsk.h (Fwpsk.h を含む)
IRQL <= DISPATCH_LEVEL

関連項目

コールアウト ドライバーの吹き出し関数の

FWPS_VSWITCH_EVENT_TYPE

FwpsvSwitchEventsSubscribe0

FwpsvSwitchNotifyComplete0

NDIS_SWITCH_PARAMETERS

NDIS_SWITCH_PORT_PARAMETERS