Поделиться через


функция обратного вызова FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 (fwpsu.h)

Модуль фильтрации вызывает функцию выноски flowDeleteFn выноски, чтобы уведомить выноску о прекращении потока данных, обрабатываемого выноской.

Синтаксис

FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 FwpsCalloutFlowDeleteNotifyFn0;

void FwpsCalloutFlowDeleteNotifyFn0(
  UINT16 layerId,
  UINT32 calloutId,
  UINT64 flowContext
)
{...}

Параметры

layerId

Идентификатор времени выполнения для уровня фильтрации, на котором завершается поток данных. Дополнительные сведения см. в разделе Фильтрация идентификаторов слоев.

calloutId

Идентификатор времени выполнения для выноски в подсистеме фильтров. Это тот же идентификатор, который был возвращен, когда драйвер выноски вызывал функции FwpsCalloutRegister0 или FwpsCalloutRegister1 для регистрации выноски в обработчике фильтров.

flowContext

Последний контекст, связанный с потоком данных путем вызова функции FwpsFlowAssociateContext0 .

Возвращаемое значение

None

Remarks

Драйвер выноски регистрирует функции выноски в подсистеме фильтрации, вызывая функции FwpsCalloutRegister0 или FwpsCalloutRegister1 .

Подсистема фильтров вызывает функцию выноски flowDeleteFn, когда завершает поток данных, чтобы выноска удалялась в контексте, связанном с потоком данных. Например, эта функция выноски будет вызываться после резкой остановки из RST без первого вызова classifyFn . Подсистема фильтров вызывает эту функцию выноски, только если драйвер выноски связывает контекст с потоком данных. При завершении потока данных контекст будет автоматически удален из потока данных механизмом фильтрации.

Модуль фильтрации вызывает функцию выноски flowDeleteFn выноски только в том случае, если выноска была ранее добавлена в подсистему фильтрации на уровне фильтрации, поддерживающем потоки данных, а драйвер выноски связывает контекст с потоками данных, которые он обрабатывает. Если драйвер выноски не связывает контекст с потоками данных, которые обрабатывает выноска, он не должен реализовывать функцию выноски flowDeleteFn для выноски. В этом случае драйвер выноски должен задать элемент flowDeleteFn структуры FWPS_CALLOUT0значение NULL при регистрации выноски в подсистеме фильтрации.

Тип FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 определяется как указатель на функцию flowDeleteFn следующим образом.

typedef void (NTAPI *FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0) flowDeleteFn

Подсистема фильтров вызывает функцию выноски flowDeleteFn в irQL <= DISPATCH_LEVEL.

Требования

Требование Значение
Заголовок fwpsu.h