Функция FwpmCalloutAdd0 (fwpmk.h)

Функция FwpmCalloutAdd0 добавляет выноску в подсистему фильтрации.

ПримечаниеFwpmCalloutAdd0 — это определенная версия FwpmCalloutAdd. Дополнительные сведения см. в разделах ИМЕНА 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
Не удалось добавить выноску в подсистему фильтрации. Выноска уже существует в механизме фильтрации с идентификатором, идентичным идентификатору GUID, указанному в элементе calloutKeyструктуры FWPM_CALLOUT0 , на которую указывает параметр выноски .
Другие коды состояния
Произошла ошибка.

Комментарии

Драйвер выноски вызывает функцию FwpmCalloutAdd0 , чтобы добавить выноску в подсистему фильтрации.

Драйверы выносок обычно не добавляют выноски в подсистему фильтрации. В большинстве случаев это обрабатывается приложением управления платформой фильтрации Windows в пользовательском режиме.

Выноска и фильтры, указывающие выноску для действия фильтра, можно добавить в подсистему фильтров до того, как драйвер выноски зарегистрирует выноску в обработчике фильтров. В этом случае фильтры с типом действия FWP_ACTION_CALLOUT_TERMINATING или FWP_ACTION_CALLOUT_UNKNOWN обрабатываются как FWP_ACTION_BLOCK , а фильтры с типом действия FWP_ACTION_CALLOUT_INSPECTION игнорируются до тех пор, пока выноска не будет зарегистрирована в обработчике фильтров.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows Vista.
Целевая платформа Универсальное
Верхняя часть fwpmk.h (включая Fwpmk.h)
Библиотека Fwpkclnt.lib
IRQL PASSIVE_LEVEL

См. также раздел

FWPM_CALLOUT0

FwpmCalloutDeleteById0

FwpmCalloutDeleteByKey0

FwpmEngineOpen0

Типы выносок