Merge "IPACM: Change the TCP control filtering rule"
diff --git a/ipacm/src/IPACM_Lan.cpp b/ipacm/src/IPACM_Lan.cpp
index f0b85c4..4cf0e29 100644
--- a/ipacm/src/IPACM_Lan.cpp
+++ b/ipacm/src/IPACM_Lan.cpp
@@ -4025,11 +4025,14 @@
 
 	flt_rule.rule.eq_attrib.rule_eq_bitmap = 0;
 
-	flt_rule.rule.eq_attrib.rule_eq_bitmap |= (1<<14);
-	flt_rule.rule.eq_attrib.metadata_meq32_present = 1;
-	flt_rule.rule.eq_attrib.metadata_meq32.offset = 0;
-	flt_rule.rule.eq_attrib.metadata_meq32.value = rx_prop->rx[0].attrib.meta_data;
-	flt_rule.rule.eq_attrib.metadata_meq32.mask = rx_prop->rx[0].attrib.meta_data_mask;
+	if(rx_prop->rx[0].attrib.attrib_mask & IPA_FLT_META_DATA)
+	{
+		flt_rule.rule.eq_attrib.rule_eq_bitmap |= (1<<14);
+		flt_rule.rule.eq_attrib.metadata_meq32_present = 1;
+		flt_rule.rule.eq_attrib.metadata_meq32.offset = 0;
+		flt_rule.rule.eq_attrib.metadata_meq32.value = rx_prop->rx[0].attrib.meta_data;
+		flt_rule.rule.eq_attrib.metadata_meq32.mask = rx_prop->rx[0].attrib.meta_data_mask;
+	}
 
 	flt_rule.rule.eq_attrib.rule_eq_bitmap |= (1<<1);
 	flt_rule.rule.eq_attrib.protocol_eq_present = 1;
diff --git a/ipacm/src/IPACM_Wlan.cpp b/ipacm/src/IPACM_Wlan.cpp
index 760cb61..078800c 100644
--- a/ipacm/src/IPACM_Wlan.cpp
+++ b/ipacm/src/IPACM_Wlan.cpp
@@ -3211,11 +3211,14 @@
 
 	flt_rule.rule.eq_attrib.rule_eq_bitmap = 0;
 
-	flt_rule.rule.eq_attrib.rule_eq_bitmap |= (1<<14);
-	flt_rule.rule.eq_attrib.metadata_meq32_present = 1;
-	flt_rule.rule.eq_attrib.metadata_meq32.offset = 0;
-	flt_rule.rule.eq_attrib.metadata_meq32.value = rx_prop->rx[0].attrib.meta_data;
-	flt_rule.rule.eq_attrib.metadata_meq32.mask = rx_prop->rx[0].attrib.meta_data_mask;
+	if(rx_prop->rx[0].attrib.attrib_mask & IPA_FLT_META_DATA)
+	{
+		flt_rule.rule.eq_attrib.rule_eq_bitmap |= (1<<14);
+		flt_rule.rule.eq_attrib.metadata_meq32_present = 1;
+		flt_rule.rule.eq_attrib.metadata_meq32.offset = 0;
+		flt_rule.rule.eq_attrib.metadata_meq32.value = rx_prop->rx[0].attrib.meta_data;
+		flt_rule.rule.eq_attrib.metadata_meq32.mask = rx_prop->rx[0].attrib.meta_data_mask;
+	}
 
 	flt_rule.rule.eq_attrib.rule_eq_bitmap |= (1<<1);
 	flt_rule.rule.eq_attrib.protocol_eq_present = 1;