структура FWPM_PROVIDER_CONTEXT2 (fwpmtypes.h)

В структуре FWPM_PROVIDER_CONTEXT2 хранится состояние, связанное с контекстом поставщика. FWPM_PROVIDER_CONTEXT0 доступно.

Синтаксис

typedef struct FWPM_PROVIDER_CONTEXT2_ {
  GUID                       providerContextKey;
  FWPM_DISPLAY_DATA0         displayData;
  UINT32                     flags;
  GUID                       *providerKey;
  FWP_BYTE_BLOB              providerData;
  FWPM_PROVIDER_CONTEXT_TYPE type;
  union {
    IPSEC_KEYING_POLICY1    *keyingPolicy;
    IPSEC_TRANSPORT_POLICY2 *ikeQmTransportPolicy;
    IPSEC_TUNNEL_POLICY2    *ikeQmTunnelPolicy;
    IPSEC_TRANSPORT_POLICY2 *authipQmTransportPolicy;
    IPSEC_TUNNEL_POLICY2    *authipQmTunnelPolicy;
    IKEEXT_POLICY2          *ikeMmPolicy;
    IKEEXT_POLICY2          *authIpMmPolicy;
    FWP_BYTE_BLOB           *dataBuffer;
    FWPM_CLASSIFY_OPTIONS0  *classifyOptions;
    IPSEC_TUNNEL_POLICY2    *ikeV2QmTunnelPolicy;
    IPSEC_TRANSPORT_POLICY2 *ikeV2QmTransportPolicy;
    IKEEXT_POLICY2          *ikeV2MmPolicy;
    IPSEC_DOSP_OPTIONS0     *idpOptions;
  };
  UINT64                     providerContextId;
} FWPM_PROVIDER_CONTEXT2;

Члены

providerContextKey

Тип: GUID

Уникально идентифицирует контекст поставщика. Если GUID инициализирован с нуля в вызове FwpmProviderContextAdd2, то базовый механизм фильтрации (BFE) создаст его.

displayData

Тип: FWPM_DISPLAY_DATA0

Позволяет добавлять заметки к контекстам поставщика в удобочитаемой форме. Требуется структура FWPM_DISPLAY_DATA0 .

flags

Тип: UINT32

Возможные значения:

Флаг контекста поставщика Значение
FWPM_PROVIDER_CONTEXT_FLAG_PERSISTENT Объект является постоянным, то есть он сохраняется при остановке или запуске BFE.
FWPM_PROVIDER_CONTEXT_FLAG_DOWNLEVEL Зарезервировано для внутреннего использования.

providerKey

Тип: GUID*

GUID поставщика политики, управляющий этим объектом.

providerData

Тип: FWP_BYTE_BLOB

Необязательные данные поставщика, которые позволяют поставщикам хранить дополнительную контекстную информацию с объектом .

type

Тип: FWPM_PROVIDER_CONTEXT_TYPE

Тип контекста поставщика.

keyingPolicy

Тип: IPSEC_KEYING_POLICY1*

Доступно, если типFWPM_IPSEC_KEYING_CONTEXT.

ikeQmTransportPolicy

Тип: IPSEC_TRANSPORT_POLICY2*

Доступно, если типFWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT.

ikeQmTunnelPolicy

Тип: IPSEC_TUNNEL_POLICY2*

Доступно, если типFWPM_IPSEC_IKE_QM_TUNNEL_CONTEXT.

authipQmTransportPolicy

Тип: IPSEC_TRANSPORT_POLICY2*

[case()] [уникальный]

authipQmTunnelPolicy

Тип: IPSEC_TUNNEL_POLICY2*

Доступно, если типFWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT.

ikeMmPolicy

Тип: IKEEXT_POLICY2*

Доступно, если тип FWPM_IPSEC_IKE_MM_CONTEXT.

authIpMmPolicy

Тип: IKEEXT_POLICY2*

Доступно, если типFWPM_IPSEC_AUTHIP_MM_CONTEXT.

dataBuffer

Тип: FWP_BYTE_BLOB*

Доступно, если типFWPM_GENERAL_CONTEXT.

classifyOptions

Тип: FWPM_CLASSIFY_OPTIONS0*

Доступно, если типFWPM_CLASSIFY_OPTIONS_CONTEXT.

ikeV2QmTunnelPolicy

Тип: IPSEC_TUNNEL_POLICY2*

Доступно, если типFWPM_IPSEC_IKEV2_QM_TUNNEL_CONTEXT.

ikeV2QmTransportPolicy

Тип: IPSEC_TRANSPORT_POLICY2*

Доступно, если типFWPM_IPSEC_IKEV2_QM_TRANSPORT_CONTEXT.

ikeV2MmPolicy

Тип: IKEEXT_POLICY2*

Доступно, если типFWPM_IPSEC_IKEV2_MM_CONTEXT.

idpOptions

Тип: IPSEC_DOSP_OPTIONS0*

Доступно, если типFWPM_IPSEC_DOSP_CONTEXT.

providerContextId

Тип: UINT64

LUID, определяющий контекст. Это значение контекста, хранящееся в структуре FWPS_FILTER1 для фильтров, ссылающихся на контекст поставщика. Структура FWPS_FILTER1 задокументирована в WDK.

Комментарии

Первые семь элементов объединения — это информация, предоставляемая при добавлении объектов.

Последний элемент — это дополнительные сведения, возвращаемые при получении или перечислении объектов.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Верхняя часть fwpmtypes.h

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

FWPM_DISPLAY_DATA0

FWPM_PROVIDER_CONTEXT_TYPE

FWP_BYTE_BLOB

FwpmProviderContextAdd2

IKEEXT_POLICY2

IPSEC_DOSP_OPTIONS0

IPSEC_KEYING_POLICY0

IPSEC_TRANSPORT_POLICY2

IPSEC_TUNNEL_POLICY2

Структуры API платформы фильтрации Windows