summaryrefslogtreecommitdiff
path: root/ipacm/src/IPACM_Iface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ipacm/src/IPACM_Iface.cpp')
-rw-r--r--ipacm/src/IPACM_Iface.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/ipacm/src/IPACM_Iface.cpp b/ipacm/src/IPACM_Iface.cpp
index 717f6aa..7ff5e4c 100644
--- a/ipacm/src/IPACM_Iface.cpp
+++ b/ipacm/src/IPACM_Iface.cpp
@@ -874,7 +874,11 @@ int IPACM_Iface::init_fl_rule(ipa_ip_type iptype)
if(rx_prop->rx[0].attrib.attrib_mask & IPA_FLT_META_DATA)
{
+#ifdef FEATURE_IPA_V3
+ flt_rule_entry.rule.eq_attrib.rule_eq_bitmap |= (1<<9);
+#else
flt_rule_entry.rule.eq_attrib.rule_eq_bitmap |= (1<<14);
+#endif
flt_rule_entry.rule.eq_attrib.metadata_meq32_present = 1;
flt_rule_entry.rule.eq_attrib.metadata_meq32.offset = 0;
flt_rule_entry.rule.eq_attrib.metadata_meq32.value = rx_prop->rx[0].attrib.meta_data;
@@ -885,7 +889,11 @@ int IPACM_Iface::init_fl_rule(ipa_ip_type iptype)
flt_rule_entry.rule.eq_attrib.protocol_eq_present = 1;
flt_rule_entry.rule.eq_attrib.protocol_eq = IPACM_FIREWALL_IPPROTO_TCP;
+#ifdef FEATURE_IPA_V3
+ flt_rule_entry.rule.eq_attrib.rule_eq_bitmap |= (1<<7);
+#else
flt_rule_entry.rule.eq_attrib.rule_eq_bitmap |= (1<<8);
+#endif
flt_rule_entry.rule.eq_attrib.num_ihl_offset_meq_32 = 1;
flt_rule_entry.rule.eq_attrib.ihl_offset_meq_32[0].offset = 12;