Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Модуль фильтрации вызывает функцию выноски 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 |