Theoretical memory leak fix.

This commit is contained in:
Simon Kelley
2013-02-05 14:35:54 +00:00
parent 9c4270bcd9
commit 38365ff040

View File

@@ -258,15 +258,18 @@ static int iface_allowed(struct irec **irecp, int if_index,
if (lo->name && strcmp(lo->name, ifr.ifr_name) == 0) if (lo->name && strcmp(lo->name, ifr.ifr_name) == 0)
break; break;
if (!lo && if (!lo && (lo = whine_malloc(sizeof(struct iname))))
(lo = whine_malloc(sizeof(struct iname))) && {
(lo->name = whine_malloc(strlen(ifr.ifr_name)+1))) if ((lo->name = whine_malloc(strlen(ifr.ifr_name)+1)))
{ {
strcpy(lo->name, ifr.ifr_name); strcpy(lo->name, ifr.ifr_name);
lo->used = 1; lo->used = 1;
lo->next = daemon->if_names; lo->next = daemon->if_names;
daemon->if_names = lo; daemon->if_names = lo;
} }
else
free(lo);
}
} }
if (addr->sa.sa_family == AF_INET && if (addr->sa.sa_family == AF_INET &&