diff options
author | Mohammed Javid <mjavid@codeaurora.org> | 2018-06-25 13:19:22 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-07-02 12:17:19 -0700 |
commit | 6bcc93ebc2f24aef0a6ec98ea5cc414add62a16b (patch) | |
tree | da4c4b9e463788b09b78462b8c60fb36638483fa | |
parent | 1578bb3cf0adc26b4bbbdc10110c8bfbd2b48e85 (diff) | |
download | ipacfg-mgr-6bcc93ebc2f24aef0a6ec98ea5cc414add62a16b.tar.gz |
ipacm: Add UL rules with XLAT mux id
In case of HAL feature, currently UL rules
are installed without XLAT info. Install UL
rules with XLAT mux id.
Change-Id: Ib290d439e0775f647dcc4b600e67c500b2b24fde
-rw-r--r-- | ipacm/src/IPACM_Lan.cpp | 12 | ||||
-rw-r--r-- | ipacm/src/IPACM_OffloadManager.cpp | 4 | ||||
-rw-r--r-- | ipacm/src/IPACM_Wlan.cpp | 12 |
3 files changed, 22 insertions, 6 deletions
diff --git a/ipacm/src/IPACM_Lan.cpp b/ipacm/src/IPACM_Lan.cpp index b595b79..fd06b1b 100644 --- a/ipacm/src/IPACM_Lan.cpp +++ b/ipacm/src/IPACM_Lan.cpp @@ -590,7 +590,8 @@ void IPACM_Lan::event_callback(ipa_cm_event_id event, void *param) if (data_wan_tether->is_sta == false) { ext_prop = IPACM_Iface::ipacmcfg->GetExtProp(IPA_IP_v4); - handle_wan_up_ex(ext_prop, IPA_IP_v4, 0); + handle_wan_up_ex(ext_prop, IPA_IP_v4, + IPACM_Wan::getXlat_Mux_Id()); } else { handle_wan_up(IPA_IP_v4); } @@ -772,7 +773,14 @@ void IPACM_Lan::event_callback(ipa_cm_event_id event, void *param) if (IPACM_Wan::backhaul_is_sta_mode == false) /* LTE */ { ext_prop = IPACM_Iface::ipacmcfg->GetExtProp(data->prefix.iptype); - handle_wan_up_ex(ext_prop, data->prefix.iptype, 0); + if (data->prefix.iptype == IPA_IP_v4) + { + handle_wan_up_ex(ext_prop, data->prefix.iptype, + IPACM_Wan::getXlat_Mux_Id()); + } + else { + handle_wan_up_ex(ext_prop, data->prefix.iptype, 0); + } } else { handle_wan_up(data->prefix.iptype); /* STA */ } diff --git a/ipacm/src/IPACM_OffloadManager.cpp b/ipacm/src/IPACM_OffloadManager.cpp index 5efe20f..79573c4 100644 --- a/ipacm/src/IPACM_OffloadManager.cpp +++ b/ipacm/src/IPACM_OffloadManager.cpp @@ -672,11 +672,11 @@ int IPACM_OffloadManager::post_route_evt(enum ipa_ip_type iptype, int index, ipa IPACMDBG_H("IPV6 gateway: %08x:%08x:%08x:%08x \n", evt_data_route->ipv6_addr_gw[0], evt_data_route->ipv6_addr_gw[1], evt_data_route->ipv6_addr_gw[2], evt_data_route->ipv6_addr_gw[3]); #endif - if (event == WAN_UPSTREAM_ROUTE_ADD) { + if (event == IPA_WAN_UPSTREAM_ROUTE_ADD_EVENT) { IPACMDBG_H("Received WAN_UPSTREAM_ROUTE_ADD: fid(%d) tether_fid(%d) ip-type(%d)\n", evt_data_route->if_index, evt_data_route->if_index_tether, evt_data_route->iptype); } - else if (event == WAN_UPSTREAM_ROUTE_DEL) { + else if (event == IPA_WAN_UPSTREAM_ROUTE_DEL_EVENT) { IPACMDBG_H("Received WAN_UPSTREAM_ROUTE_DEL: fid(%d) tether_fid(%d) ip-type(%d)\n", evt_data_route->if_index, evt_data_route->if_index_tether, evt_data_route->iptype); diff --git a/ipacm/src/IPACM_Wlan.cpp b/ipacm/src/IPACM_Wlan.cpp index 4678889..1719212 100644 --- a/ipacm/src/IPACM_Wlan.cpp +++ b/ipacm/src/IPACM_Wlan.cpp @@ -383,7 +383,8 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param) if(data_wan_tether->is_sta == false) { ext_prop = IPACM_Iface::ipacmcfg->GetExtProp(IPA_IP_v4); - handle_wan_up_ex(ext_prop, IPA_IP_v4, 0); + handle_wan_up_ex(ext_prop, IPA_IP_v4, + IPACM_Wan::getXlat_Mux_Id()); } else { handle_wan_up(IPA_IP_v4); } @@ -577,7 +578,14 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param) if (IPACM_Wan::backhaul_is_sta_mode == false) /* LTE */ { ext_prop = IPACM_Iface::ipacmcfg->GetExtProp(data->prefix.iptype); - handle_wan_up_ex(ext_prop, data->prefix.iptype, 0); + if (data->prefix.iptype == IPA_IP_v4) + { + handle_wan_up_ex(ext_prop, data->prefix.iptype, + IPACM_Wan::getXlat_Mux_Id()); + } + else { + handle_wan_up_ex(ext_prop, data->prefix.iptype, 0); + } } else { handle_wan_up(data->prefix.iptype); /* STA */ } |