Функция FwpsQueryPacketInjectionState0 (fwpsk.h)

Функция FwpsQueryPacketInjectionState0 вызывается выноской для запроса состояния внедрения данных пакета.

ПримечаниеFwpsQueryPacketInjectionState0 — это определенная версия FwpsQueryPacketInjectionState. Дополнительные сведения см. в разделах Имена Version-Independent и Выбор конкретных версий Windows .
 

Синтаксис

FWPS_PACKET_INJECTION_STATE FwpsQueryPacketInjectionState0(
  [in]            HANDLE                injectionHandle,
  [in]            const NET_BUFFER_LIST *netBufferList,
  [out, optional] HANDLE                *injectionContext
);

Параметры

[in] injectionHandle

Дескриптор внедрения, созданный ранее при вызовеФункция FwpsInjectionHandleCreate0.

[in] netBufferList

Указатель на структуру NET_BUFFER_LIST , описывающую классифицированные данные пакетов. Пакет может поступать из сетевого стека или быть внедрен в сетевой стек с помощью драйвера выноски ВПП.

[out, optional] injectionContext

Необязательный дескриптор контекста внедрения. Если указан указатель и состояние внедрения пакета FWPS_PACKET_INJECTION_STATE , связанное с дескриптором внедрения, FWPS_PACKET_INJECTED_BY_SELF или FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF, возвращается контекст внедрения, предоставленный при внедрении пакета.

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

Функция FwpsQueryPacketInjectionState0 возвращает одно из значений константы перечисления FWPS_PACKET_INJECTION_STATE .

Комментарии

Так как внедренные данные пакета можно переклассифицировать по внедренной выноске, эта функция позволяет выноске проверять журнал внедрения данных пакетов при необходимости, тем самым избегая повторной проверки уже проверяемых данных пакетов.

Выноска может отслеживать другие сведения, относящиеся к выноске, задав необязательный дескриптор injectionContext в одной из функций внедрения пакетов во время внедрения данных пакета. Если функция FwpsQueryPacketInjectionState0 возвращает FWPS_PACKET_INJECTED_BY_SELF или FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF, предоставленный параметр injectionContext будет возвращен в качестве параметра completionContext функции, которая выполнила внедрение.

Если возвращаемое значение равно FWPS_PACKET_INJECTED_BY_SELF или FWPS_PACKET_PREVIOUSLY_INJECTED_BY_SELF, список сетевого буфера, на который указывает netBufferList , не следует дополнительно изменять или добавлять в процессе клонирования и внедрения. В этом случае выноска должна задать элемент actionTypeструктуры FWPS_CLASSIFY_OUT0 , на которую указывает параметр classifyOut функции classifyFn , как FWP_ACTION_CONTINUE или FWP_ACTION_PERMIT. Это позволяет пакету перейти к следующей выноске.

Требования

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

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

FWPS_CLASSIFY_OUT0

FWPS_PACKET_INJECTION_STATE

FwpsInjectionHandleCreate0

NET_BUFFER_LIST

classifyFn