summaryrefslogtreecommitdiff
path: root/ipacm/src/IPACM_Wlan.cpp
diff options
context:
space:
mode:
authorSkylar Chang <chiaweic@codeaurora.org>2015-07-28 21:18:49 -0700
committerSkylar Chang <chiaweic@codeaurora.org>2015-07-29 16:29:53 -0700
commitfafb397030dfcc60cbf35a23b550f2e1c38e43ce (patch)
tree2583efbeb1a6f2d1c522c97be840719d56664b8f /ipacm/src/IPACM_Wlan.cpp
parent3ca162709eb22e9cf3d652833a80a093d232db93 (diff)
downloadipacfg-mgr-fafb397030dfcc60cbf35a23b550f2e1c38e43ce.tar.gz
IPACM: Fix the nat iface missing when cfg change
In AP+AP mode swtich, IPACM_cfg.xml will be updated on the fly when netdev interface already up while IPACM loses the NAT ifaces in its config cache and resulted in NAT-miss for all these pre-existing netdev interfaces. Also we see more frequent NETBIOS_NS embedded traffic on port 138 which exhausted our nat cache. The fix is to add prot 138 traffic as ALG port, also did the ALG port checking on NAT cache and those existing ifaces will add itself to NAT ifaces when receiving the cfg_change event. Change-Id: I42921b29d70a345b20a71aaf35711c005849ef31
Diffstat (limited to 'ipacm/src/IPACM_Wlan.cpp')
-rw-r--r--ipacm/src/IPACM_Wlan.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/ipacm/src/IPACM_Wlan.cpp b/ipacm/src/IPACM_Wlan.cpp
index 38f4308..7de85a2 100644
--- a/ipacm/src/IPACM_Wlan.cpp
+++ b/ipacm/src/IPACM_Wlan.cpp
@@ -823,6 +823,13 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param)
IPACM_Iface::ipacmcfg->iface_table[ipa_if_num].iface_name,
(IPACM_Iface::ipacmcfg->iface_table[ipa_if_num].wlan_mode == 0) ? "full" : "internet",
(is_guest_ap == true) ? "internet" : "full");
+ /* Add Natting iface to IPACM_Config if there is Rx/Tx property */
+ if (rx_prop != NULL || tx_prop != NULL)
+ {
+ IPACMDBG_H(" Has rx/tx properties registered for iface %s, add for NATTING \n", dev_name);
+ IPACM_Iface::ipacmcfg->AddNatIfaces(dev_name);
+ }
+
if (is_guest_ap == true && (IPACM_Iface::ipacmcfg->iface_table[ipa_if_num].wlan_mode == FULL))
{
is_guest_ap = false;