summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Greg Kaiser <gkaiser@google.com> 2019-03-04 17:00:24 -0800
committer android-build-merger <android-build-merger@google.com> 2019-03-04 17:00:24 -0800
commit01ffab06c19b96ad035a58e55eee3f2af6b43bf7 (patch)
tree52fed7925052c3d890fa3358c1797b9e090d1701
parent607ca6029e9135cd01b022c13161dba2ea8d03ba (diff)
parenta5d85affa9d1c869a8d2178b9daa284240e1c904 (diff)
Merge "ip-up-vpn: Fix resource leaks in error cases"
am: a5d85affa9 Change-Id: Id6a1442dd9226b50a392aca2d484afd357bcabd9
-rw-r--r--cmds/ip-up-vpn/ip-up-vpn.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/cmds/ip-up-vpn/ip-up-vpn.c b/cmds/ip-up-vpn/ip-up-vpn.c
index 3b8955b166..71f08375f7 100644
--- a/cmds/ip-up-vpn/ip-up-vpn.c
+++ b/cmds/ip-up-vpn/ip-up-vpn.c
@@ -95,6 +95,7 @@ int main(int argc, char **argv)
strncpy(ifr.ifr_name, interface, IFNAMSIZ);
if (ioctl(s, SIOCSIFFLAGS, &ifr)) {
ALOGE("Cannot bring up %s: %s", interface, strerror(errno));
+ fclose(state);
return 1;
}
@@ -102,6 +103,7 @@ int main(int argc, char **argv)
if (!set_address(&ifr.ifr_addr, address) ||
ioctl(s, SIOCSIFADDR, &ifr)) {
ALOGE("Cannot set address: %s", strerror(errno));
+ fclose(state);
return 1;
}
@@ -109,6 +111,7 @@ int main(int argc, char **argv)
if (set_address(&ifr.ifr_netmask, env("INTERNAL_NETMASK4"))) {
if (ioctl(s, SIOCSIFNETMASK, &ifr)) {
ALOGE("Cannot set netmask: %s", strerror(errno));
+ fclose(state);
return 1;
}
}
@@ -123,6 +126,7 @@ int main(int argc, char **argv)
fprintf(state, "%s\n", env("REMOTE_ADDR"));
} else {
ALOGE("Cannot parse parameters");
+ fclose(state);
return 1;
}