Merge 6dc0470222b584967119ca7e1511db2875360e0a on remote branch
Change-Id: If688c0a9db290e7a030cfad480143e3ebf512ad1
diff --git a/ipacm/src/IPACM_Conntrack_NATApp.cpp b/ipacm/src/IPACM_Conntrack_NATApp.cpp
index c1f47e1..0cf101f 100644
--- a/ipacm/src/IPACM_Conntrack_NATApp.cpp
+++ b/ipacm/src/IPACM_Conntrack_NATApp.cpp
@@ -195,6 +195,12 @@
}
}
+ /* configure NAT initialization paramater */
+ pub_ip_addr = pub_ip;
+ pub_mux_id = mux_id;
+ IPACMDBG(" Set pub_mux_id: %d\t", pub_mux_id);
+
+
/* Add back the cached NAT-entry */
if (pub_ip == pub_ip_addr_pre)
{
@@ -222,6 +228,8 @@
/* send connections info to pcie modem only with DL direction */
if ((CtList->backhaul_mode == Q6_MHI_WAN) && (cache[cnt].dst_nat == true || cache[cnt].protocol == IPPROTO_TCP))
{
+ /* propagate pub_ip info */
+ cache[cnt].public_ip = pub_ip;
ret = AddConnection(&cache[cnt]);
if(ret > 0)
{
@@ -246,9 +254,6 @@
}
}
- pub_ip_addr = pub_ip;
- pub_mux_id = mux_id;
- IPACMDBG(" Set pub_mux_id: %d\t", pub_mux_id);
return 0;
}
diff --git a/ipacm/src/IPACM_Lan.cpp b/ipacm/src/IPACM_Lan.cpp
index 41c3723..ebaca87 100644
--- a/ipacm/src/IPACM_Lan.cpp
+++ b/ipacm/src/IPACM_Lan.cpp
@@ -4197,7 +4197,7 @@
if (mtu[i] > 0)
mtu_rule_cnt++;
else
- IPACMERR("MTU is zero\n");
+ IPACMDBG_H("MTU is zero\n");
}
IPACMDBG_H("total %d MTU rules are needed\n", mtu_rule_cnt);
diff --git a/ipacm/src/IPACM_Wan.cpp b/ipacm/src/IPACM_Wan.cpp
index be3bffc..7f450e1 100644
--- a/ipacm/src/IPACM_Wan.cpp
+++ b/ipacm/src/IPACM_Wan.cpp
@@ -4797,6 +4797,7 @@
int fd_wwan_ioctl;
memset(&wan_state, 0, sizeof(wan_state));
#endif
+ int ret = IPACM_SUCCESS;
IPACMDBG_H("got handle_route_del_evt for STA-mode with ip-family:%d \n", iptype);
@@ -4926,24 +4927,19 @@
if(delete_offload_frag_rule())
{
IPACMERR("Failed to delete DL frag rule \n");
- return IPACM_FAILURE;
+ ret = IPACM_FAILURE;
}
- /* Delete MHI icmpv6 exception rule */
- if(delete_icmpv6_exception_rule())
- {
- IPACMERR("Failed to delete icmpv6 rule \n");
- return IPACM_FAILURE;
- }
+
/* Delete tcp_fin_rst rule */
if(delete_tcp_fin_rst_exception_rule())
{
IPACMERR("Failed to delete tcp_fin_rst rule \n");
- return IPACM_FAILURE;
+ ret = IPACM_FAILURE;
}
+ return ret;
}
else
{
-
wandown_data->backhaul_type = m_is_sta_mode;
memcpy(wandown_data->ipv6_prefix, ipv6_prefix, sizeof(wandown_data->ipv6_prefix));
evt_data.event = IPA_HANDLE_WAN_DOWN_V6;
@@ -4962,6 +4958,13 @@
{
memset(IPACM_Wan::wan_up_dev_name, 0, sizeof(IPACM_Wan::wan_up_dev_name));
}
+ /* Delete MHI icmpv6 exception rule */
+ if(delete_icmpv6_exception_rule())
+ {
+ IPACMERR("Failed to delete icmpv6 rule \n");
+ return IPACM_FAILURE;
+ }
+
}
}
else