Merge "IPACM: Remove meta data equation for ALG rules"
diff --git a/ipacm/src/IPACM_Wlan.cpp b/ipacm/src/IPACM_Wlan.cpp
index 165ef72..862836c 100644
--- a/ipacm/src/IPACM_Wlan.cpp
+++ b/ipacm/src/IPACM_Wlan.cpp
@@ -642,16 +642,13 @@
ipacm_event_data_mac* mac = (ipacm_event_data_mac*)param;
if(mac != NULL)
{
- if(wlan_ap_index == 0)
+ if(ip_type == IPA_IP_v4 || ip_type == IPA_IP_MAX)
{
- if(ip_type == IPA_IP_v4 || ip_type == IPA_IP_MAX)
- {
- eth_bridge_add_usb_client_flt_rule(mac->mac_addr, IPA_IP_v4);
- }
- if(ip_type == IPA_IP_v6 || ip_type == IPA_IP_MAX)
- {
- eth_bridge_add_usb_client_flt_rule(mac->mac_addr, IPA_IP_v6);
- }
+ eth_bridge_add_usb_client_flt_rule(mac->mac_addr, IPA_IP_v4);
+ }
+ if(ip_type == IPA_IP_v6 || ip_type == IPA_IP_MAX)
+ {
+ eth_bridge_add_usb_client_flt_rule(mac->mac_addr, IPA_IP_v6);
}
}
else
@@ -3573,6 +3570,11 @@
IPACMERR("MAC address is empty.\n");
return IPACM_FAILURE;
}
+ if(wlan_ap_index != 0)
+ {
+ IPACMDBG_H("This is WLAN interface index %d, ignore.\n", wlan_ap_index);
+ return IPACM_SUCCESS;
+ }
if(IPACM_Lan::wlan_to_usb_hdr_proc_ctx.valid == false)
{
IPACMDBG_H("WLAN to USB hdr proc ctx has not been set, don't add USB client specific flt rule.\n");
@@ -3650,6 +3652,7 @@
}
memcpy(&flt_rule.rule.attrib, &rx_prop->rx[0].attrib, sizeof(flt_rule.rule.attrib));
+ flt_rule.rule.attrib.attrib_mask &= ~((uint32_t)IPA_FLT_META_DATA); //remove meta data mask
if(IPACM_Lan::wlan_hdr_type == IPA_HDR_L2_ETHERNET_II)
{
flt_rule.rule.attrib.attrib_mask |= IPA_FLT_MAC_DST_ADDR_ETHER_II;