FWPS_CALLOUT1 構造体 (fwpsk.h)
FWPS_CALLOUT1構造体は、吹き出しドライバーがフィルター エンジンに吹き出しを登録するために必要なデータを定義します。
構文
typedef struct FWPS_CALLOUT1_ {
GUID calloutKey;
UINT32 flags;
FWPS_CALLOUT_CLASSIFY_FN1 classifyFn;
FWPS_CALLOUT_NOTIFY_FN1 notifyFn;
FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 flowDeleteFn;
} FWPS_CALLOUT1;
メンバー
calloutKey
引き出し線を一意に識別する引き出しドライバー定義 GUID 。
flags
吹き出し固有のパラメーターを指定するフラグ。 使用可能なフラグは次のとおりです。
値 | 意味 |
---|---|
|
コールアウト ドライバーは、データ フローをサポートするレイヤーに追加される吹き出しを登録するときに、このフラグを指定できます。 このフラグが指定されている場合、フィルター エンジンは、データ フローに関連付けられているコンテキストがある場合にのみ、引き出しドライバーの classifyFn1 吹き出し関数を呼び出します。 コールアウト ドライバーは 、FwpsFlowAssociateContext0 関数を呼び出すことによって、コンテキストをデータ フローに関連付けます。 |
|
コールアウト ドライバーは、このフラグを指定して、コールアウト ドライバーの classifyFn1 吹き出し関数が、ネットワーク データ処理をオフロード対応のネットワーク インターフェイス カード (NIC) にオフロードしても影響を受けないように指定します。 このフラグが指定されていない場合、フィルターのアクションの吹き出しを指定するフィルターによって処理されるすべてのトラフィックに対して、ネットワーク データ処理のオフロードが無効になります。 |
|
コールアウト ドライバーは、トランザクション内に追加されたオブジェクトとフィルターに関する通知を受け取ることができることを示すために、このフラグを指定します。 フィルター エンジンは、トランザクションがコミットされた後に通知を送信します。 |
|
吹き出しドライバーは、ストリーム レベルでデータ フローの動的ストリーム検査を実行できることを示すために、このフラグを指定します。 「Stream検査」を参照してください。 |
|
コールアウト ドライバーは、既存のソケット操作が再分類されるときに呼び出される自体を登録するために、このフラグを指定します。 |
classifyFn
引き出しドライバーの classifyFn1 吹き出し関数へのポインター。 フィルター エンジンは、吹き出しによって処理されるネットワーク データがある場合は常に、この関数を呼び出します。
notifyFn
コールアウト ドライバーの notifyFn1 関数へのポインター。 フィルター エンジンはこの関数を呼び出して、吹き出しに関連付けられているイベントについてコールアウト ドライバーに通知します。
flowDeleteFn
引き出しドライバーの flowDeleteFn 吹き出し関数へのポインター。 フィルター エンジンは、吹き出しによって処理されているデータ フローが終了するたびに、この関数を呼び出します。
吹き出しドライバーが、引き出し線が処理するデータ フローにコンテキストを関連付けなかった場合、このメンバーを NULL に設定する必要があります。
注釈
コールアウト ドライバーは、フィルター エンジンに吹き出しを登録するときに、初期化された FWPS_CALLOUT1 構造体へのポインターを FwpsCalloutRegister1 関数に渡します。
コールアウトでは、ドライバーがストリーム検査の実行に関心がある接続に対してのみ、 FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW フラグを設定できます。 この吹き出しは、他のすべての接続では無視されます。 パフォーマンスが向上し、ドライバーが不要な状態データを維持する必要はありません。
この構造は、基本的に以前のバージョンの FWPS_CALLOUT0と同じです。 唯一の違いは、このバージョンのメンバーは、吹き出し関数ポインターの更新されたバージョンを格納し、コールアウト ドライバーが設定するための追加のフラグを使用できる点です。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 以降で使用できます。 |
Header | fwpsk.h (Fwpsk.h を含む) |