summaryrefslogtreecommitdiff
path: root/hal/src/HAL.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'hal/src/HAL.cpp')
-rw-r--r--hal/src/HAL.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/hal/src/HAL.cpp b/hal/src/HAL.cpp
index d1d10fd..d72d274 100644
--- a/hal/src/HAL.cpp
+++ b/hal/src/HAL.cpp
@@ -40,7 +40,7 @@
/* External Includes */
#include <cutils/log.h>
-#include <string>
+#include <cstring>
#include <sys/socket.h>
#include <sys/types.h>
#include <vector>
@@ -93,7 +93,7 @@ void HAL::registerAsSystemService(const char* name) {
ALOGI("Successfully registered IOffloadControl");
}
- IOffloadConfig::registerAsService();
+ ret = IOffloadConfig::registerAsService();
if (ret != 0) ALOGE("Failed to register IOffloadConfig (%d)", ret);
else if (DBG) {
ALOGI("Successfully registered IOffloadConfig");
@@ -407,6 +407,8 @@ Return<void> HAL::setLocalPrefixes
LocalLogBuffer::FunctionLog fl(__func__);
fl.addArg("prefixes", prefixesStr);
+ memset(&res,0,sizeof(BoolResult));
+
if (!isInitialized()) {
BoolResult res = makeInputCheckFailure("Not initialized");
} else if(prefixesStr.size() < 1) {
@@ -469,6 +471,9 @@ Return<void> HAL::setDataLimit
fl.setResult(res.success, res.errMsg);
} else {
RET ipaReturn = mIPA->setQuota(upstream.c_str(), limit);
+ if(ipaReturn == RET::FAIL_TRY_AGAIN) {
+ ipaReturn = RET::SUCCESS;
+ }
BoolResult res = ipaResultToBoolResult(ipaReturn);
hidl_cb(res.success, res.errMsg);
fl.setResult(res.success, res.errMsg);
@@ -521,8 +526,8 @@ Return<void> HAL::setUpstreamParameters
} else if (iface.size()>= 1) {
RET ipaReturn = mIPA->setUpstream(
iface.c_str(),
- v4GwParser.getFirstPrefix(IP_FAM::V4),
- v6GwParser.getFirstPrefix(IP_FAM::V6));
+ v4GwParser.getFirstPrefix(),
+ v6GwParser.getFirstPrefix());
BoolResult res = ipaResultToBoolResult(ipaReturn);
hidl_cb(res.success, res.errMsg);
fl.setResult(res.success, res.errMsg);