FwpmCalloutAdd0 関数 (fwpmk.h)

FwpmCalloutAdd0 関数は、フィルター エンジンに吹き出しを追加します。

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

構文

NTSTATUS FwpmCalloutAdd0(
  [in]            HANDLE               engineHandle,
  [in]            const FWPM_CALLOUT0  *callout,
  [in, optional]  PSECURITY_DESCRIPTOR sd,
  [out, optional] UINT32               *id
);

パラメーター

[in] engineHandle

フィルター エンジンへの開いているセッションのハンドル。 コールアウト ドライバーは FwpmEngineOpen0 関数を呼び出して、フィルター エンジンへのセッションを開きます。

[in] callout

フィルター エンジンに引き出し線を追加するために必要なデータを含む定数 FWPM_CALLOUT0 構造体へのポインター。

[in, optional] sd

フィルター エンジンに追加される吹き出しのセキュリティ記述子を記述する定数 SECURITY_DESCRIPTOR 構造体へのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。

[out, optional] id

フィルター エンジン内の吹き出しを識別する実行時識別子を受け取る UINT32 型の変数へのポインター。 これは、引き出し線ドライバーが引き出しドライバーの引き出し関数をフィルター エンジンに登録するときに返されるのと同じ識別子です。 吹き出しドライバーは、フィルター エンジンから吹き出しを削除するときに 、FwpmCalloutDeleteById0 関数にこの識別子を渡します。 このパラメーターは省略可能であり、 NULL にすることができます。

戻り値

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

リターン コード 説明
STATUS_SUCCESS
吹き出しがフィルター エンジンに正常に追加されました。
STATUS_FWP_ALREADY_EXISTS
吹き出しをフィルター エンジンに追加できませんでした。 吹き出しは、吹き出しパラメーターが指すFWPM_CALLOUT0構造体の calloutKey メンバーで指定された GUID と同じ識別子を持つフィルター エンジンに既に存在します。
その他の状態コード
エラーが発生しました。

解説

吹き出しドライバーは 、FwpmCalloutAdd0 関数を呼び出して、フィルター エンジンに吹き出しを追加します。

吹き出しドライバーは、通常、フィルター エンジンに引き出し線を追加しません。 ほとんどの場合、これはユーザー モードの Windows フィルター プラットフォーム管理アプリケーションによって処理されます。

吹き出しドライバーが吹き出しをフィルター エンジンに登録する前に、フィルター エンジンにフィルター のアクションの吹き出しを指定する吹き出しとフィルターを追加できます。 このような状況では、アクションの種類 がFWP_ACTION_CALLOUT_TERMINATING または FWP_ACTION_CALLOUT_UNKNOWN のフィルターは FWP_ACTION_BLOCK として扱われ、吹き出しがフィルター エンジンに登録されるまで、アクションの種類 がFWP_ACTION_CALLOUT_INSPECTION のフィルターは無視されます。

要件

要件
サポートされている最小のクライアント Windows Vista 以降で使用できます。
対象プラットフォーム ユニバーサル
Header fwpmk.h (Fwpmk.h を含む)
Library Fwpkclnt.lib
IRQL PASSIVE_LEVEL

こちらもご覧ください

FWPM_CALLOUT0

FwpmCalloutDeleteById0

FwpmCalloutDeleteByKey0

FwpmEngineOpen0

コールアウトの種類