summaryrefslogtreecommitdiff
path: root/server/InterfaceController.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'server/InterfaceController.cpp')
-rw-r--r--server/InterfaceController.cpp21
1 files changed, 7 insertions, 14 deletions
diff --git a/server/InterfaceController.cpp b/server/InterfaceController.cpp
index 64b8453a..5bca4133 100644
--- a/server/InterfaceController.cpp
+++ b/server/InterfaceController.cpp
@@ -21,6 +21,7 @@
#define LOG_TAG "InterfaceController"
#include <cutils/log.h>
#include <utils/file.h>
+#include <utils/stringprintf.h>
#include "InterfaceController.h"
#include "RouteController.h"
@@ -44,15 +45,12 @@ InterfaceController::~InterfaceController() {
}
int InterfaceController::writeIPv6ProcPath(const char *interface, const char *setting, const char *value) {
- char *path;
if (!isIfaceName(interface)) {
errno = ENOENT;
return -1;
}
- asprintf(&path, "%s/%s/%s", ipv6_proc_path, interface, setting);
- bool success = android::WriteStringToFile(value, path);
- free(path);
- return success;
+ std::string path(android::StringPrintf("%s/%s/%s", ipv6_proc_path, interface, setting));
+ return android::WriteStringToFile(value, path);
}
int InterfaceController::setEnableIPv6(const char *interface, const int on) {
@@ -106,21 +104,16 @@ void InterfaceController::setAcceptRA(const char *value) {
// ID to get the table. If it's set to -1000, routes from interface ID 5 will go into
// table 1005, etc.
void InterfaceController::setAcceptRARouteTable(int tableOrOffset) {
- char* value;
- asprintf(&value, "%d", tableOrOffset);
- setOnAllInterfaces("accept_ra_rt_table", value);
- free(value);
+ std::string value(android::StringPrintf("%d", tableOrOffset));
+ setOnAllInterfaces("accept_ra_rt_table", value.c_str());
}
int InterfaceController::setMtu(const char *interface, const char *mtu)
{
- char *path;
if (!isIfaceName(interface)) {
errno = ENOENT;
return -1;
}
- asprintf(&path, "%s/%s/mtu", sys_net_path, interface);
- bool success = android::WriteStringToFile(mtu, path);
- free(path);
- return success;
+ std::string path(android::StringPrintf("%s/%s/mtu", sys_net_path, interface));
+ return android::WriteStringToFile(mtu, path);
}