Share via


FWPM_PROVIDER_CONTEXT0 (Compact 2013)

3/26/2014

This structure stores the state that is associated with a provider context.

Syntax

typedef struct FWPM_PROVIDER_CONTEXT0_ {
  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_POLICY0* ikeQmTransportPolicy;
    IPSEC_TUNNEL_POLICY0* ikeQmTunnelPolicy;
    IPSEC_TRANSPORT_POLICY0* authipQmTransportPolicy;
    IPSEC_TUNNEL_POLICY0* authipQmTunnelPolicy;
    IKEEXT_POLICY0* ikeMmPolicy;
    IKEEXT_POLICY0* authIpMmPolicy;
    FWP_BYTE_BLOB* dataBuffer;
    FWPM_CLASSIFY_OPTIONS0* classifyOptions;
  };
  UINT64 providerContextId;
} FWPM_PROVIDER_CONTEXT0;

Members

  • providerContextKey
    Uniquely identifies the provider context. If the GUID is zero-initialized in the call to FwpmProviderContextAdd0, 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
    When the flag is set to FWPM_PROVIDER_CONTEXT_FLAG_PERSISTENT, then 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.
  • keyingPolicy
    Available when type is FWPM_IPSEC_KEYING_CONTEXT.

    See topic IPSEC_KEYING_POLICY0 for more information.

  • ikeQmTransportPolicy
    Available when type is FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT.

    See topic IPSEC_TRANSPORT_POLICY0 for more information.

  • ikeQmTunnelPolicy
    Available when type is FWPM_IPSEC_IKE_QM_TUNNEL_CONTEXT.

    See topic IPSEC_TUNNEL_POLICY0 for more information.

  • authipQmTransportPolicy
    Available when type is FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT.

    See topic IPSEC_TRANSPORT_POLICY0 for more information.

  • authipQmTunnelPolicy
    Available when type is FWPM_IPSEC_AUTHIP_QM_TUNNEL_CONTEXT.

    See topic IPSEC_TUNNEL_POLICY0 for more information.

  • ikeMmPolicy
    Available when type is FWPM_IPSEC_IKE_MM_CONTEXT.

    See topic IKEEXT_POLICY0 for more information.

  • authIpMmPolicy
    Available when type is FWPM_IPSEC_AUTHIP_MM_CONTEXT.

    See topic IKEEXT_POLICY0 for more information.

  • dataBuffer
    Available when type is FWPM_GENERAL_CONTEXT.

    See topic FWP_BYTE_BLOB for more information.

  • classifyOptions
    Available when type is FWPM_CLASSIFY_OPTIONS_CONTEXT.

    See topic FWPM_CLASSIFY_OPTIONS0 for more information.

  • providerContextId
    LUID identifying the context. This is the context value stored in the FWPS_FILTER0 structure for filters that reference a provider context. The FWPS_FILTER0 structure is documented in the Windows Driver Kit.

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

Header

fwpmu.h

See Also

Reference

WFP Management Structures

Other Resources

Windows Filtering Platform