diff options
author | Niranjan Pendharkar <npendhar@codeaurora.org> | 2017-10-16 00:12:52 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-10-16 00:12:52 +0000 |
commit | 3b33fcf67b87e439f4be79a2cc2a916c1a25a3c9 (patch) | |
tree | fd5a8cb2167e871fe60edd79dcc915f235d44602 | |
parent | 487b6385bd6f26d57b6bc866aa5f47b69e1f522e (diff) | |
parent | 45ba9ccf77830a2aa03bd6f93dc6483f9a63afa9 (diff) | |
download | ipacfg-mgr-3b33fcf67b87e439f4be79a2cc2a916c1a25a3c9.tar.gz |
IPA HAL: fix the upstream down issue am: 541f806409
am: 45ba9ccf77
Change-Id: Ic5d49cd1580a5f4f15e657eaf89b9f78757085c6
-rw-r--r-- | msm8998/hal/src/HAL.cpp | 14 |
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); |