aboutsummaryrefslogtreecommitdiff
path: root/data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp
diff options
context:
space:
mode:
authorBruno Martins <bgcngm@gmail.com>2018-05-08 22:19:05 +0100
committerCosme Domínguez Díaz <cosme.ddiaz@gmail.com>2018-05-09 20:39:17 +0200
commit045ad4c8846ab3e3a87f0a1b0682585c484f8fda (patch)
treea93ec5702352587703272eccab2dd5b73dca981e /data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp
parentacacc9391e359daf81bf5c3b406997c1808ac7fa (diff)
msm8996-common: Sync IPACM with upstream
* Tag: LA.UM.6.6.r1-08300-89xx.0 Change-Id: Ie4759d0919200e9b38dbc017d0798fccb97aabe5
Diffstat (limited to 'data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp')
-rw-r--r--data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp b/data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp
index 93a7dd4..96200ad 100644
--- a/data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp
+++ b/data-ipa-cfg-mgr/ipacm/src/IPACM_OffloadManager.cpp
@@ -61,6 +61,7 @@ IPACM_OffloadManager::IPACM_OffloadManager()
latest_cache_index = 0;
elrInstance = NULL;
touInstance = NULL;
+ is_cache = false;
return ;
}
@@ -362,6 +363,16 @@ RET IPACM_OffloadManager::setUpstream(const char *upstream_name, const Prefix& g
if(upstream_name == NULL)
{
if (default_gw_index == INVALID_IFACE) {
+ if (is_cache) {
+ for (index = 0; index < MAX_EVENT_CACHE; index++) {
+ if (event_cache[index].valid == true) {
+ event_cache[index].valid = false;
+ memset(event_cache, 0, MAX_EVENT_CACHE*sizeof(framework_event_cache));
+ }
+ is_cache = false;
+ return SUCCESS;
+ }
+ }
IPACMERR("no previous upstream set before\n");
return FAIL_INPUT_CHECK;
}
@@ -435,6 +446,7 @@ RET IPACM_OffloadManager::setUpstream(const char *upstream_name, const Prefix& g
return FAIL_HARDWARE;
}
}
+ is_cache = true;
return SUCCESS;
}