diff options
author | Niranjan Pendharkar <npendhar@codeaurora.org> | 2017-10-16 00:10:22 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-10-16 00:10:22 +0000 |
commit | 45ba9ccf77830a2aa03bd6f93dc6483f9a63afa9 (patch) | |
tree | fd5a8cb2167e871fe60edd79dcc915f235d44602 | |
parent | a50b0ccbf4d625960bad41dc1575f7e0ef15179f (diff) | |
parent | 541f806409a2695f10e789f520917e1ea62f0edc (diff) | |
download | ipacfg-mgr-45ba9ccf77830a2aa03bd6f93dc6483f9a63afa9.tar.gz |
IPA HAL: fix the upstream down issue
am: 541f806409
Change-Id: Ia2bb052650c00bba41fb7131c35b6be69737c452
-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); |