in network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.cpp [1695:3212]
PSTR KrnlHlprFwpValueGetStringForFwpsIncomingValue(_In_ UINT32 layerID,
_In_ UINT32 fieldID,
_Out_opt_ BOOLEAN* pFormat) /* 0 */
{
PSTR pString = 0;
if(pFormat)
*pFormat = FALSE;
switch(layerID)
{
case FWPS_LAYER_INBOUND_IPPACKET_V4:
case FWPS_LAYER_INBOUND_IPPACKET_V4_DISCARD:
case FWPS_LAYER_INBOUND_IPPACKET_V6:
case FWPS_LAYER_INBOUND_IPPACKET_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_IPPACKET_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
break;
}
case FWPS_LAYER_OUTBOUND_IPPACKET_V4:
case FWPS_LAYER_OUTBOUND_IPPACKET_V4_DISCARD:
case FWPS_LAYER_OUTBOUND_IPPACKET_V6:
case FWPS_LAYER_OUTBOUND_IPPACKET_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_IPPACKET_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
break;
}
case FWPS_LAYER_IPFORWARD_V4:
case FWPS_LAYER_IPFORWARD_V4_DISCARD:
case FWPS_LAYER_IPFORWARD_V6:
case FWPS_LAYER_IPFORWARD_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_SOURCE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_SOURCE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_DESTINATION_ADDRESS)
{
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_DESTINATION_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_FORWARD_INTERFACE)
pString = "FWPM_CONDITION_IP_FORWARD_INTERFACE";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_SOURCE_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SOURCE_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_SOURCE_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SOURCE_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_DESTINATION_INTERFACE_INDEX)
pString = "FWPM_CONDITION_DESTINATION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_DESTINATION_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_DESTINATION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_PHYSICAL_ARRIVAL_INTERFACE)
pString = "FWPM_CONDITION_IP_PHYSICAL_ARRIVAL_INTERFACE";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_ARRIVAL_INTERFACE_PROFILE_ID)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_PROFILE_ID";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_IP_PHYSICAL_NEXTHOP_INTERFACE)
pString = "FWPM_CONDITION_IP_PHYSICAL_NEXTHOP_INTERFACE";
else if(fieldID == FWPS_FIELD_IPFORWARD_V4_NEXTHOP_INTERFACE_PROFILE_ID)
pString = "FWPM_CONDITION_NEXTHOP_INTERFACE_PROFILE_ID";
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
break;
}
case FWPS_LAYER_INBOUND_TRANSPORT_V4:
case FWPS_LAYER_INBOUND_TRANSPORT_V4_DISCARD:
case FWPS_LAYER_INBOUND_TRANSPORT_V6:
case FWPS_LAYER_INBOUND_TRANSPORT_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_PROFILE_ID)
pString = "FWPM_CONDITION_PROFILE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_INBOUND_TRANSPORT_V4_IPSEC_SECURITY_REALM_ID)
pString = "FWPM_CONDITION_IPSEC_SECURITY_REALM_ID";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
break;
}
case FWPS_LAYER_OUTBOUND_TRANSPORT_V4:
case FWPS_LAYER_OUTBOUND_TRANSPORT_V4_DISCARD:
case FWPS_LAYER_OUTBOUND_TRANSPORT_V6:
case FWPS_LAYER_OUTBOUND_TRANSPORT_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IP_DESTINATION_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_PROFILE_ID)
pString = "FWPM_CONDITION_PROFILE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_OUTBOUND_TRANSPORT_V4_IPSEC_SECURITY_REALM_ID)
pString = "FWPM_CONDITION_IPSEC_SECURITY_REALM_ID";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
break;
}
case FWPS_LAYER_STREAM_V4:
case FWPS_LAYER_STREAM_V4_DISCARD:
case FWPS_LAYER_STREAM_V6:
case FWPS_LAYER_STREAM_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_STREAM_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_STREAM_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_STREAM_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_STREAM_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_STREAM_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_STREAM_V4_DIRECTION)
pString = "FWPM_CONDITION_DIRECTION";
#if(NTDDI_VERSION >= NTDDI_VISTASP1)
else if(fieldID == FWPS_FIELD_STREAM_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#endif /// (NTDDI_VERSION >= NTDDI_VISTASP1)
break;
}
case FWPS_LAYER_DATAGRAM_DATA_V4:
case FWPS_LAYER_DATAGRAM_DATA_V4_DISCARD:
case FWPS_LAYER_DATAGRAM_DATA_V6:
case FWPS_LAYER_DATAGRAM_DATA_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_DIRECTION)
pString = "FWPM_CONDITION_DIRECTION";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_DATAGRAM_DATA_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
break;
}
case FWPS_LAYER_INBOUND_ICMP_ERROR_V4:
case FWPS_LAYER_INBOUND_ICMP_ERROR_V4_DISCARD:
case FWPS_LAYER_INBOUND_ICMP_ERROR_V6:
case FWPS_LAYER_INBOUND_ICMP_ERROR_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_EMBEDDED_PROTOCOL)
pString = "FWPM_CONDITION_EMBEDDED_PROTOCOL";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_EMBEDDED_REMOTE_ADDRESS)
pString = "FWPM_CONDITION_EMBEDDED_REMOTE_ADDRESS";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_EMBEDDED_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_EMBEDDED_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_EMBEDDED_LOCAL_PORT)
pString = "FWPM_CONDITION_EMBEDDED_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_EMBEDDED_REMOTE_PORT)
pString = "FWPM_CONDITION_EMBEDDED_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_ICMP_TYPE)
pString = "FWPM_CONDITION_ICMP_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_ICMP_CODE)
pString = "FWPM_CONDITION_ICMP_CODE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_VISTASP1)
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_IP_ARRIVAL_INTERFACE)
pString = "FWPM_CONDITION_IP_ARRIVAL_INTERFACE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_ARRIVAL_INTERFACE_INDEX)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_ARRIVAL_INTERFACE_TYPE)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_ARRIVAL_TUNNEL_TYPE)
pString = "FWPM_CONDITION_ARRIVAL_TUNNEL_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_ARRIVAL_INTERFACE_PROFILE_ID)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_PROFILE_ID";
else if(fieldID == FWPS_FIELD_INBOUND_ICMP_ERROR_V4_INTERFACE_QUARANTINE_EPOCH)
pString = "FWPM_CONDITION_INTERFACE_QUARANTINE_EPOCH";
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
#endif /// (NTDDI_VERSION >= NTDDI_VISTASP1)
break;
}
case FWPS_LAYER_OUTBOUND_ICMP_ERROR_V4:
case FWPS_LAYER_OUTBOUND_ICMP_ERROR_V4_DISCARD:
case FWPS_LAYER_OUTBOUND_ICMP_ERROR_V6:
case FWPS_LAYER_OUTBOUND_ICMP_ERROR_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_ICMP_TYPE)
pString = "FWPM_CONDITION_ICMP_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_ICMP_CODE)
pString = "FWPM_CONDITION_ICMP_CODE";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_VISTASP1)
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_NEXTHOP_INTERFACE_PROFILE_ID)
pString = "FWPM_CONDITION_NEXTHOP_INTERFACE_PROFILE_ID";
else if(fieldID == FWPS_FIELD_OUTBOUND_ICMP_ERROR_V4_INTERFACE_QUARANTINE_EPOCH)
pString = "FWPM_CONDITION_INTERFACE_QUARANTINE_EPOCH";
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
#endif /// (NTDDI_VERSION >= NTDDI_VISTASP1)
break;
}
case FWPS_LAYER_ALE_RESOURCE_ASSIGNMENT_V4:
case FWPS_LAYER_ALE_RESOURCE_ASSIGNMENT_V4_DISCARD:
case FWPS_LAYER_ALE_RESOURCE_ASSIGNMENT_V6:
case FWPS_LAYER_ALE_RESOURCE_ASSIGNMENT_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_ALE_PROMISCUOUS_MODE)
pString = "FWPM_CONDITION_ALE_PROMISCUOUS_MODE";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_LOCAL_INTERFACE_PROFILE_ID)
pString = "FWPM_CONDITION_LOCAL_INTERFACE_PROFILE_ID";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_SIO_FIREWALL_SOCKET_PROPERTY)
pString = "FWPM_CONDITION_SIO_FIREWALL_SOCKET_PROPERTY";
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_ASSIGNMENT_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
break;
}
case FWPS_LAYER_ALE_AUTH_LISTEN_V4:
case FWPS_LAYER_ALE_AUTH_LISTEN_V4_DISCARD:
case FWPS_LAYER_ALE_AUTH_LISTEN_V6:
case FWPS_LAYER_ALE_AUTH_LISTEN_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_LOCAL_INTERFACE_PROFILE_ID)
pString = "FWPM_CONDITION_LOCAL_INTERFACE_PROFILE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_SIO_FIREWALL_SOCKET_PROPERTY)
pString = "FWPM_CONDITION_SIO_FIREWALL_SOCKET_PROPERTY";
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_AUTH_LISTEN_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
break;
}
case FWPS_LAYER_ALE_AUTH_RECV_ACCEPT_V4:
case FWPS_LAYER_ALE_AUTH_RECV_ACCEPT_V4_DISCARD:
case FWPS_LAYER_ALE_AUTH_RECV_ACCEPT_V6:
case FWPS_LAYER_ALE_AUTH_RECV_ACCEPT_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ALE_REMOTE_USER_ID)
pString = "FWPM_CONDITION_ALE_REMOTE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ALE_REMOTE_MACHINE_ID)
pString = "FWPM_CONDITION_ALE_REMOTE_MACHINE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_SIO_FIREWALL_SYSTEM_PORT)
pString = "FWPM_CONDITION_SIO_FIREWALL_SYSTEM_PORT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_NAP_CONTEXT)
pString = "FWPM_CONDITION_NAP_CONTEXT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
#if(NTDDI_VERSION >= NTDDI_VISTASP1)
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_ARRIVAL_INTERFACE)
pString = "FWPM_CONDITION_IP_ARRIVAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ARRIVAL_INTERFACE_TYPE)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ARRIVAL_TUNNEL_TYPE)
pString = "FWPM_CONDITION_ARRIVAL_TUNNEL_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ARRIVAL_INTERFACE_INDEX)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_INDEX";
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_NEXTHOP_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_NEXTHOP_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_IP_NEXTHOP_INTERFACE)
pString = "FWPM_CONDITION_IP_NEXTHOP_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_NEXTHOP_INTERFACE_TYPE)
pString = "FWPM_CONDITION_NEXTHOP_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_NEXTHOP_TUNNEL_TYPE)
pString = "FWPM_CONDITION_NEXTHOP_TUNNEL_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_NEXTHOP_INTERFACE_INDEX)
pString = "FWPM_CONDITION_NEXTHOP_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ORIGINAL_PROFILE_ID)
pString = "FWPM_CONDITION_ORIGINAL_PROFILE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_CURRENT_PROFILE_ID)
pString = "FWPM_CONDITION_CURRENT_PROFILE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_REAUTHORIZE_REASON)
pString = "FWPM_CONDITION_REAUTHORIZE_REASON";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ORIGINAL_ICMP_TYPE)
pString = "FWPM_CONDITION_ORIGINAL_ICMP_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_INTERFACE_QUARANTINE_EPOCH)
pString = "FWPM_CONDITION_INTERFACE_QUARANTINE_EPOCH";
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_AUTH_RECV_ACCEPT_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
#endif /// (NTDDI_VERSION >= NTDDI_VISTASP1)
break;
}
case FWPS_LAYER_ALE_AUTH_CONNECT_V4:
case FWPS_LAYER_ALE_AUTH_CONNECT_V4_DISCARD:
case FWPS_LAYER_ALE_AUTH_CONNECT_V6:
case FWPS_LAYER_ALE_AUTH_CONNECT_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_REMOTE_USER_ID)
pString = "FWPM_CONDITION_ALE_REMOTE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_REMOTE_MACHINE_ID)
pString = "FWPM_CONDITION_ALE_REMOTE_MACHINE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_DESTINATION_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_VISTASP1)
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
#if(NTDDI_VERSION >= NTDDI_WIN7)
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_ARRIVAL_INTERFACE)
pString = "FWPM_CONDITION_IP_ARRIVAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ARRIVAL_INTERFACE_TYPE)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ARRIVAL_TUNNEL_TYPE)
pString = "FWPM_CONDITION_ARRIVAL_TUNNEL_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ARRIVAL_INTERFACE_INDEX)
pString = "FWPM_CONDITION_ARRIVAL_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_NEXTHOP_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_NEXTHOP_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_IP_NEXTHOP_INTERFACE)
pString = "FWPM_CONDITION_IP_NEXTHOP_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_NEXTHOP_INTERFACE_TYPE)
pString = "FWPM_CONDITION_NEXTHOP_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_NEXTHOP_TUNNEL_TYPE)
pString = "FWPM_CONDITION_NEXTHOP_TUNNEL_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_NEXTHOP_INTERFACE_INDEX)
pString = "FWPM_CONDITION_NEXTHOP_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ORIGINAL_PROFILE_ID)
pString = "FWPM_CONDITION_ORIGINAL_PROFILE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_CURRENT_PROFILE_ID)
pString = "FWPM_CONDITION_CURRENT_PROFILE_ID";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_REAUTHORIZE_REASON)
pString = "FWPM_CONDITION_REAUTHORIZE_REASON";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_PEER_NAME)
pString = "FWPM_CONDITION_PEER_NAME";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ORIGINAL_ICMP_TYPE)
pString = "FWPM_CONDITION_ORIGINAL_ICMP_TYPE";
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_INTERFACE_QUARANTINE_EPOCH)
pString = "FWPM_CONDITION_INTERFACE_QUARANTINE_EPOCH";
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_ORIGINAL_APP_ID)
{
pString = "FWPM_CONDITION_ALE_ORIGINAL_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_AUTH_CONNECT_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
#endif /// (NTDDI_VERSION >= NTDDI_VISTASP1)
break;
}
case FWPS_LAYER_ALE_FLOW_ESTABLISHED_V4:
case FWPS_LAYER_ALE_FLOW_ESTABLISHED_V4_DISCARD:
case FWPS_LAYER_ALE_FLOW_ESTABLISHED_V6:
case FWPS_LAYER_ALE_FLOW_ESTABLISHED_V6_DISCARD:
{
if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_REMOTE_USER_ID)
pString = "FWPM_CONDITION_ALE_REMOTE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_REMOTE_MACHINE_ID)
pString = "FWPM_CONDITION_ALE_REMOTE_MACHINE_ID";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_DESTINATION_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_DIRECTION)
pString = "FWPM_CONDITION_DIRECTION";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
#if(NTDDI_VERSION >= NTDDI_VISTASP1)
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_ORIGINAL_APP_ID)
{
pString = "FWPM_CONDITION_ALE_ORIGINAL_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_FLOW_ESTABLISHED_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
#endif /// (NTDDI_VERSION >= NTDDI_VISTASP1)
break;
}
#if(NTDDI_VERSION >= NTDDI_WIN7)
case FWPS_LAYER_NAME_RESOLUTION_CACHE_V4:
case FWPS_LAYER_NAME_RESOLUTION_CACHE_V6:
{
if(fieldID == FWPS_FIELD_NAME_RESOLUTION_CACHE_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_NAME_RESOLUTION_CACHE_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_NAME_RESOLUTION_CACHE_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_NAME_RESOLUTION_CACHE_V4_PEER_NAME)
pString = "FWPM_CONDITION_PEER_NAME";
break;
}
case FWPS_LAYER_ALE_RESOURCE_RELEASE_V4:
case FWPS_LAYER_ALE_RESOURCE_RELEASE_V6:
{
if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_RESOURCE_RELEASE_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
break;
}
case FWPS_LAYER_ALE_ENDPOINT_CLOSURE_V4:
case FWPS_LAYER_ALE_ENDPOINT_CLOSURE_V6:
{
if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_ENDPOINT_CLOSURE_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
break;
}
case FWPS_LAYER_ALE_CONNECT_REDIRECT_V4:
case FWPS_LAYER_ALE_CONNECT_REDIRECT_V6:
{
if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_DESTINATION_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_ALE_ORIGINAL_APP_ID)
{
pString = "FWPM_CONDITION_ALE_ORIGINAL_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
break;
}
case FWPS_LAYER_ALE_BIND_REDIRECT_V4:
case FWPS_LAYER_ALE_BIND_REDIRECT_V6:
{
if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_ALE_APP_ID)
{
pString = "FWPM_CONDITION_ALE_APP_ID";
if(pFormat)
*pFormat = UNICODE_STRING_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_ALE_USER_ID)
pString = "FWPM_CONDITION_ALE_USER_ID";
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_IP_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
#if(NTDDI_VERSION >= NTDDI_WIN8)
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_ALE_PACKAGE_ID)
pString = "FWPM_CONDITION_ALE_PACKAGE_ID";
#if(NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
else if(fieldID == FWPS_FIELD_ALE_BIND_REDIRECT_V4_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE)
pString = "FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE";
#endif /// (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
break;
}
case FWPS_LAYER_STREAM_PACKET_V4:
case FWPS_LAYER_STREAM_PACKET_V6:
{
if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_IP_LOCAL_ADDRESS)
{
pString = "FWPM_CONDITION_IP_LOCAL_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_IP_REMOTE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_REMOTE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_IP_LOCAL_PORT)
pString = "FWPM_CONDITION_IP_LOCAL_PORT";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_IP_REMOTE_PORT)
pString = "FWPM_CONDITION_IP_REMOTE_PORT";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_IP_LOCAL_INTERFACE)
pString = "FWPM_CONDITION_IP_LOCAL_INTERFACE";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_SUB_INTERFACE_INDEX)
pString = "FWPM_CONDITION_SUB_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_DIRECTION)
pString = "FWPM_CONDITION_DIRECTION";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_FLAGS)
{
pString = "FWPM_CONDITION_FLAGS";
if(pFormat)
*pFormat = FLAGS_VALUE;
}
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_STREAM_PACKET_V4_TUNNEL_TYPE)
pString = "FWPM_CONDITION_TUNNEL_TYPE";
break;
}
#if(NTDDI_VERSION >= NTDDI_WIN8)
case FWPS_LAYER_INBOUND_MAC_FRAME_ETHERNET:
{
if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_INTERFACE_MAC_ADDRESS)
pString = "FWPM_CONDITION_INTERFACE_MAC_ADDRESS";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_MAC_LOCAL_ADDRESS)
pString = "FWPM_CONDITION_MAC_LOCAL_ADDRESS";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_MAC_REMOTE_ADDRESS)
pString = "FWPM_CONDITION_MAC_REMOTE_ADDRESS";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_MAC_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_MAC_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_MAC_REMOTE_ADDRESS_TYPE)
pString = "FWPM_CONDITION_MAC_REMOTE_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_ETHER_TYPE)
pString = "FWPM_CONDITION_ETHER_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_VLAN_ID)
pString = "FWPM_CONDITION_VLAN_ID";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_INTERFACE)
pString = "FWPM_CONDITION_INTERFACE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_NDIS_PORT)
pString = "FWPM_CONDITION_NDIS_PORT";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_ETHERNET_L2_FLAGS)
{
pString = "FWPM_CONDITION_L2_FLAGS";
if(pFormat)
*pFormat = L2_FLAGS_VALUE;
}
break;
}
case FWPS_LAYER_OUTBOUND_MAC_FRAME_ETHERNET:
{
if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_INTERFACE_MAC_ADDRESS)
pString = "FWPM_CONDITION_INTERFACE_MAC_ADDRESS";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_MAC_LOCAL_ADDRESS)
pString = "FWPM_CONDITION_MAC_LOCAL_ADDRESS";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_MAC_REMOTE_ADDRESS)
pString = "FWPM_CONDITION_MAC_REMOTE_ADDRESS";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_MAC_LOCAL_ADDRESS_TYPE)
pString = "FWPM_CONDITION_MAC_LOCAL_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_MAC_REMOTE_ADDRESS_TYPE)
pString = "FWPM_CONDITION_MAC_REMOTE_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_ETHER_TYPE)
pString = "FWPM_CONDITION_ETHER_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_VLAN_ID)
pString = "FWPM_CONDITION_VLAN_ID";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_INTERFACE)
pString = "FWPM_CONDITION_INTERFACE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_NDIS_PORT)
pString = "FWPM_CONDITION_NDIS_PORT";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_ETHERNET_L2_FLAGS)
{
pString = "FWPM_CONDITION_L2_FLAGS";
if(pFormat)
*pFormat = L2_FLAGS_VALUE;
}
break;
}
case FWPS_LAYER_INBOUND_MAC_FRAME_NATIVE:
{
if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_NDIS_MEDIA_TYPE)
pString = "FWPM_CONDITION_NDIS_MEDIA_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_NDIS_PHYSICAL_MEDIA_TYPE)
pString = "FWPM_CONDITION_NDIS_PHYSICAL_MEDIA_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_INTERFACE)
pString = "FWPM_CONDITION_INTERFACE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_NDIS_PORT)
pString = "FWPM_CONDITION_NDIS_PORT";
else if(fieldID == FWPS_FIELD_INBOUND_MAC_FRAME_NATIVE_L2_FLAGS)
{
pString = "FWPM_CONDITION_L2_FLAGS";
if(pFormat)
*pFormat = L2_FLAGS_VALUE;
}
break;
}
case FWPS_LAYER_OUTBOUND_MAC_FRAME_NATIVE:
{
if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_NDIS_MEDIA_TYPE)
pString = "FWPM_CONDITION_NDIS_MEDIA_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_NDIS_PHYSICAL_MEDIA_TYPE)
pString = "FWPM_CONDITION_NDIS_PHYSICAL_MEDIA_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_INTERFACE)
pString = "FWPM_CONDITION_INTERFACE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_INTERFACE_TYPE)
pString = "FWPM_CONDITION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_INTERFACE_INDEX)
pString = "FWPM_CONDITION_INTERFACE_INDEX";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_NDIS_PORT)
pString = "FWPM_CONDITION_NDIS_PORT";
else if(fieldID == FWPS_FIELD_OUTBOUND_MAC_FRAME_NATIVE_L2_FLAGS)
{
pString = "FWPM_CONDITION_L2_FLAGS";
if(pFormat)
*pFormat = L2_FLAGS_VALUE;
}
break;
}
case FWPS_LAYER_INGRESS_VSWITCH_ETHERNET:
{
if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS_TYPE)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS_TYPE)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_ETHER_TYPE)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_ETHER_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VLAN_ID)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VLAN_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_TENANT_NETWORK_ID)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_TENANT_NETWORK_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_ID)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_NETWORK_TYPE)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_NETWORK_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_ID)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_TYPE)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_VM_ID)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_VM_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_L2_FLAGS)
pString = "FWPS_FIELD_INGRESS_VSWITCH_ETHERNET_L2_FLAGS";
break;
}
case FWPS_LAYER_EGRESS_VSWITCH_ETHERNET:
{
if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS_TYPE)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_SOURCE_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS_TYPE)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_MAC_DESTINATION_ADDRESS_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_ETHER_TYPE)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_ETHER_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VLAN_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VLAN_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_TENANT_NETWORK_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_TENANT_NETWORK_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_NETWORK_TYPE)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_NETWORK_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_TYPE)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_VM_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_SOURCE_VM_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_DESTINATION_INTERFACE_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_DESTINATION_INTERFACE_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_DESTINATION_INTERFACE_TYPE)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_DESTINATION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_DESTINATION_VM_ID)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_VSWITCH_DESTINATION_VM_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_L2_FLAGS)
pString = "FWPS_FIELD_EGRESS_VSWITCH_ETHERNET_L2_FLAGS";
break;
}
case FWPS_LAYER_INGRESS_VSWITCH_TRANSPORT_V4:
case FWPS_LAYER_INGRESS_VSWITCH_TRANSPORT_V6:
{
if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_IP_SOURCE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_SOURCE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_IP_DESTINATION_ADDRESS)
{
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_IP_SOURCE_PORT)
pString = "FWPM_CONDITION_IP_SOURCE_PORT";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_IP_DESTINATION_PORT)
pString = "FWPM_CONDITION_IP_DESTINATION_PORT";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VLAN_ID)
pString = "FWPM_CONDITION_VLAN_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_TENANT_NETWORK_ID)
pString = "FWPM_CONDITION_VSWITCH_TENANT_NETWORK_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_ID)
pString = "FWPM_CONDITION_VSWITCH_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_NETWORK_TYPE)
pString = "FWPM_CONDITION_VSWITCH_NETWORK_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_SOURCE_INTERFACE_ID)
pString = "FWPM_CONDITION_VSWITCH_SOURCE_INTERFACE_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_SOURCE_INTERFACE_TYPE)
pString = "FWPM_CONDITION_VSWITCH_SOURCE_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_SOURCE_VM_ID)
pString = "FWPM_CONDITION_VSWITCH_SOURCE_VM_ID";
else if(fieldID == FWPS_FIELD_INGRESS_VSWITCH_TRANSPORT_V4_L2_FLAGS)
{
pString = "FWPM_CONDITION_L2_FLAGS";
if(pFormat)
*pFormat = L2_FLAGS_VALUE;
}
break;
}
case FWPS_LAYER_EGRESS_VSWITCH_TRANSPORT_V4:
case FWPS_LAYER_EGRESS_VSWITCH_TRANSPORT_V6:
{
if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_IP_SOURCE_ADDRESS)
{
pString = "FWPM_CONDITION_IP_SOURCE_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_IP_DESTINATION_ADDRESS)
{
pString = "FWPM_CONDITION_IP_DESTINATION_ADDRESS";
if(pFormat)
*pFormat = ADDRESS_VALUE;
}
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_IP_PROTOCOL)
pString = "FWPM_CONDITION_IP_PROTOCOL";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_IP_SOURCE_PORT)
pString = "FWPM_CONDITION_IP_SOURCE_PORT";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_IP_DESTINATION_PORT)
pString = "FWPM_CONDITION_IP_DESTINATION_PORT";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VLAN_ID)
pString = "FWPM_CONDITION_VLAN_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_TENANT_NETWORK_ID)
pString = "FWPM_CONDITION_VSWITCH_TENANT_NETWORK_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_ID)
pString = "FWPM_CONDITION_VSWITCH_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_NETWORK_TYPE)
pString = "FWPM_CONDITION_VSWITCH_NETWORK_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_SOURCE_INTERFACE_ID)
pString = "FWPM_CONDITION_VSWITCH_SOURCE_INTERFACE_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_SOURCE_INTERFACE_TYPE)
pString = "FWPM_CONDITION_VSWITCH_SOURCE_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_SOURCE_VM_ID)
pString = "FWPM_CONDITION_VSWITCH_SOURCE_VM_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_DESTINATION_INTERFACE_ID)
pString = "FWPM_CONDITION_VSWITCH_DESTINATION_INTERFACE_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_DESTINATION_INTERFACE_TYPE)
pString = "FWPM_CONDITION_VSWITCH_DESTINATION_INTERFACE_TYPE";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_VSWITCH_DESTINATION_VM_ID)
pString = "FWPM_CONDITION_VSWITCH_DESTINATION_VM_ID";
else if(fieldID == FWPS_FIELD_EGRESS_VSWITCH_TRANSPORT_V4_L2_FLAGS)
{
pString = "FWPM_CONDITION_L2_FLAGS";
if(pFormat)
*pFormat = L2_FLAGS_VALUE;
}
break;
}
#endif /// (NTDDI_VERSION >= NTDDI_WIN8)
#endif /// (NTDDI_VERSION >= NTDDI_WIN7)
}
return pString;
}