FwpsClassifyOptionSet0 (Compact 2013)

3/26/2014

This function is called by a callout filter's classifyFn function to specify additional information that affects the characteristics of permitted filtering operations.

Syntax

NTSTATUS NTAPI
  FwpsClassifyOptionSet0(
    IN const FWPS_INCOMING_METADATA_VALUES0  *inMetadataValues,
    IN const FWP_CLASSIFY_OPTION_TYPE  option,
    IN const FWP_VALUE0  *newValue
    );

Parameters

  • inMetadataValues
    A pointer to an FWPS_INCOMING_METADATA_VALUES0 structure. This structure contains the values for each metadata field at the filtering layer.
  • option
    An FWP_CLASSIFY_OPTION_TYPE enumeration constant that indicates whether the newValue parameter refers to unicast, multicast, or loose source mapping states, or to data time-out values.
  • newValue
    A pointer to an array of FWP_VALUE0 structures. Each structure in the array contains particular values for a given FWP_OPTION_VALUE_XXX constant.

Return Value

The FwpsClassifyOptionSet0 function returns one of the following NTSTATUS codes:

Value

Description

STATUS_SUCCESS

The function completed successfully.

STATUS_FWP_INVALID_ENUMERATOR

The option parameter does not match any value in the FWP_CLASSIFY_OPTION_TYPE enumeration.

STATUS_FWP_OUT_OF_BOUNDS

The option value specified by newValue->uint32 does not include one of the defined FWP_OPTION_VALUE_XXX constant values.

STATUS_OBJECT_TYPE_MISMATCH

The data type specified by newValue->type was not FWP_UINT32.

STATUS_UNSUCCESSFUL

A general error occurred.

Remarks

This function should be called by a callout filter's classifyFn function only.

The following table lists the allowed values of the option parameter, and members of the FWP_VALUE0 structure pointed to by the newValue parameter:

option

newValue‑>type

newValue‑>uint32

Description

FWP_CLASSIFY_OPTION_LOOSE_SOURCE_MAPPING

FWP_UINT32

FWP_OPTION_VALUE_ENABLE_LOOSE_SOURCE

FWP_OPTION_VALUE_DISABLE_LOOSE_SOURCE

Enable loose source mapping.

Disable loose source mapping

FWP_CLASSIFY_OPTION_MULTICAST_STATE

FWP_UINT32

FWP_OPTION_VALUE_ALLOW_MULTICAST_STATE

FWP_OPTION_VALUE_DENY_MULTICAST_STATE

FWP_OPTION_VALUE_ALLOW_NON_LINK_LOCAL_RESPONSE

Allow link-local multicast state creation on outgoing traffic.

Do not allow link-local multicast state creation on outgoing traffic.

Allow multicast state creation for outgoing traffic (permitting non-link-local responses).

FWP_CLASSIFY_OPTION_MCAST_BCAST_LIFETIME

FWP_UINT32 > 0

--

Specifies the multicast/broadcast state lifetime, in seconds.

FWP_CLASSIFY_OPTION_UNICAST_LIFETIME

FWP_UINT32 > 0

--

Specifies the unicast state lifetime, in seconds.

The first (highest weight) caller to set a particular option is granted that option. For example, if Callout A sets the multicast state option, Callout B cannot set the same option-but Callout B can set other options.

Requirements

Header

fwpsk.h

See Also

Reference

Functions Called by Callout Drivers
classifyFn
FWPS_INCOMING_METADATA_VALUES0
WFP Callout Driver Functions

Other Resources

FWP_CLASSIFY_OPTION_TYPE
FWP_VALUE0
FWPM_CLASSIFY_OPTION0
FWPM_CLASSIFY_OPTIONS0