summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNiranjan Pendharkar <npendhar@codeaurora.org>2017-10-16 00:10:22 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-10-16 00:10:22 +0000
commit45ba9ccf77830a2aa03bd6f93dc6483f9a63afa9 (patch)
treefd5a8cb2167e871fe60edd79dcc915f235d44602
parenta50b0ccbf4d625960bad41dc1575f7e0ef15179f (diff)
parent541f806409a2695f10e789f520917e1ea62f0edc (diff)
downloadipacfg-mgr-45ba9ccf77830a2aa03bd6f93dc6483f9a63afa9.tar.gz
IPA HAL: fix the upstream down issue
am: 541f806409 Change-Id: Ia2bb052650c00bba41fb7131c35b6be69737c452
-rw-r--r--msm8998/hal/src/HAL.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/msm8998/hal/src/HAL.cpp b/msm8998/hal/src/HAL.cpp
index 59f978d..e19a149 100644
--- a/msm8998/hal/src/HAL.cpp
+++ b/msm8998/hal/src/HAL.cpp
@@ -506,8 +506,7 @@ Return<void> HAL::setUpstreamParameters
BoolResult res = makeInputCheckFailure("Not initialized (setUpstreamParameters)");
hidl_cb(res.success, res.errMsg);
fl.setResult(res.success, res.errMsg);
- }
- else if (!v4AddrParser.addV4(v4Addr) && !v4Addr.empty()) {
+ } else if (!v4AddrParser.addV4(v4Addr) && !v4Addr.empty()) {
BoolResult res = makeInputCheckFailure(v4AddrParser.getLastErrAsStr());
hidl_cb(res.success, res.errMsg);
fl.setResult(res.success, res.errMsg);
@@ -519,7 +518,7 @@ Return<void> HAL::setUpstreamParameters
BoolResult res = makeInputCheckFailure(v6GwParser.getLastErrAsStr());
hidl_cb(res.success, res.errMsg);
fl.setResult(res.success, res.errMsg);
- } else {
+ } else if (iface.size()>= 1) {
RET ipaReturn = mIPA->setUpstream(
iface.c_str(),
v4GwParser.getFirstPrefix(),
@@ -527,6 +526,15 @@ Return<void> HAL::setUpstreamParameters
BoolResult res = ipaResultToBoolResult(ipaReturn);
hidl_cb(res.success, res.errMsg);
fl.setResult(res.success, res.errMsg);
+ } else {
+ /* send NULL iface string when upstream down */
+ RET ipaReturn = mIPA->setUpstream(
+ NULL,
+ v4GwParser.getFirstPrefix(),
+ v6GwParser.getFirstPrefix());
+ BoolResult res = ipaResultToBoolResult(ipaReturn);
+ hidl_cb(res.success, res.errMsg);
+ fl.setResult(res.success, res.errMsg);
}
mLogs.addLog(fl);