Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
list = malloc(sizeof(*list));
if (!list) {
SYSERROR("failed to allocate memory");
+ free(inet6dev);
return -1;
}
valdup = strdup(value);
if (!valdup) {
ERROR("no address specified");
+ free(list);
+ free(inet6dev);
return -1;
}
if (!inet_pton(AF_INET6, value, &inet6dev->addr)) {
SYSERROR("invalid ipv6 address: %s", value);
+ free(list);
+ free(inet6dev);
free(valdup);
return -1;
}
} else {
if (!inet_pton(AF_INET6, value, gw)) {
SYSERROR("invalid ipv6 gateway address: %s", value);
+ free(gw);
return -1;
}