Windows Dev Center

Expand Minimize

FWPM_PROVIDER_CONTEXT1 structure

The FWPM_PROVIDER_CONTEXT1 structure stores the state associated with a provider context.

Note  FWPM_PROVIDER_CONTEXT1 is the specific implementation of FWPM_PROVIDER_CONTEXT used in Windows 7. See WFP Version-Independent Names and Targeting Specific Versions of Windows for more information. For Windows 8, FWPM_PROVIDER_CONTEXT2 is available. For Windows Vista, FWPM_PROVIDER_CONTEXT0 is available.

Syntax


typedef struct FWPM_PROVIDER_CONTEXT1_ {
  GUID                       providerContextKey;
  FWPM_DISPLAY_DATA0         displayData;
  UINT32                     flags;
  GUID                       *providerKey;
  FWP_BYTE_BLOB              providerData;
  FWPM_PROVIDER_CONTEXT_TYPE type;
  union {
    IPSEC_KEYING_POLICY0    *keyingPolicy;
    IPSEC_TRANSPORT_POLICY1 *ikeQmTransportPolicy;
    IPSEC_TUNNEL_POLICY1    *ikeQmTunnelPolicy;
    IPSEC_TRANSPORT_POLICY1 *authipQmTransportPolicy;
    IPSEC_TUNNEL_POLICY1    *authipQmTunnelPolicy;
    IKEEXT_POLICY1          *ikeMmPolicy;
    IKEEXT_POLICY1          *authIpMmPolicy;
    FWP_BYTE_BLOB           *dataBuffer;
    FWPM_CLASSIFY_OPTIONS0  *classifyOptions;
    IPSEC_TUNNEL_POLICY1    *ikeV2QmTunnelPolicy;
    IKEEXT_POLICY1          *ikeV2MmPolicy;
    IPSEC_DOSP_OPTIONS0     *idpOptions;
  };
  UINT64                     providerContextId;
} FWPM_PROVIDER_CONTEXT1;

Members

providerContextKey

Uniquely identifies the provider context. If the GUID is zero-initialized in the call to FwpmProviderContextAdd1, Base Filtering Engine (BFE) will generate one.

displayData

Allows provider contexts to be annotated in a human-readable form. The name member of the FWPM_DISPLAY_DATA0 structure is required.

flags

Possible values:

Provider context flagMeaning
FWPM_PROVIDER_CONTEXT_FLAG_PERSISTENT

The object is persistent, that is, it survives across BFE stop/start.

 

providerKey

GUID of the policy provider that manages this object.

providerData

An FWP_BYTE_BLOB structure that contains optional provider-specific data that allows providers to store additional context info with the object.

type

A FWPM_PROVIDER_CONTEXT_TYPE value specifying the type of provider context..

keyingPolicy

Available when type is FWPM_IPSEC_KEYING_CONTEXT.

See IPSEC_KEYING_POLICY0 for more information.

ikeQmTransportPolicy

Available when type is FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT.

See IPSEC_TRANSPORT_POLICY1 for more information.

ikeQmTunnelPolicy

Available when type is FWPM_IPSEC_IKE_QM_TUNNEL_CONTEXT.

See IPSEC_TUNNEL_POLICY1 for more information.

authipQmTransportPolicy

Available when type is FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT.

See IPSEC_TRANSPORT_POLICY1 for more information.

authipQmTunnelPolicy

Available when type is FWPM_IPSEC_AUTHIP_QM_TUNNEL_CONTEXT.

See IPSEC_TUNNEL_POLICY1 for more information.

ikeMmPolicy

Available when type is FWPM_IPSEC_IKE_MM_CONTEXT.

See IKEEXT_POLICY1 for more information.

authIpMmPolicy

Available when type is FWPM_IPSEC_AUTHIP_MM_CONTEXT.

See IKEEXT_POLICY1 for more information.

dataBuffer

Available when type is FWPM_GENERAL_CONTEXT.

See FWP_BYTE_BLOB for more information.

classifyOptions

Available when type is FWPM_CLASSIFY_OPTIONS_CONTEXT.

See FWPM_CLASSIFY_OPTIONS0 for more information.

ikeV2QmTunnelPolicy

Available when type is FWPM_IPSEC_IKEV2_QM_TUNNEL_CONTEXT.

See IPSEC_TUNNEL_POLICY1 for more information.

ikeV2MmPolicy

Available when type is FWPM_IPSEC_IKEV2_MM_CONTEXT.

See IKEEXT_POLICY1 for more information.

idpOptions

Available when type is FWPM_IPSEC_DOSP_CONTEXT.

See IPSEC_DOSP_OPTIONS0 for more information.

providerContextId

LUID identifying the context. This is the context value stored in the FWPS_FILTER1 structure for filters that reference a provider context. The FWPS_FILTER1 structure is documented in the WDK.

Remarks

The first seven elements of the union are information supplied when adding objects.

The last element is additional information returned when getting/enumerating objects.

Requirements

Minimum supported client

Windows 7 [desktop apps only]

Minimum supported server

Windows Server 2008 R2 [desktop apps only]

Header

Fwpmtypes.h

IDL

Fwpmtypes.idl

See also

Windows Filtering Platform API Structures
FwpmProviderContextAdd1
FWPM_DISPLAY_DATA0
FWP_BYTE_BLOB
FWPM_PROVIDER_CONTEXT_TYPE
IPSEC_KEYING_POLICY0
IPSEC_TRANSPORT_POLICY1
IPSEC_TUNNEL_POLICY1
IKEEXT_POLICY1
IPSEC_DOSP_OPTIONS0

 

 

Community Additions

ADD
Show:
© 2015 Microsoft