]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
nss: Drop needless free() in gethostbyname3()
authorMichal Privoznik <mprivozn@redhat.com>
Sat, 28 Sep 2019 19:24:53 +0000 (21:24 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Mon, 30 Sep 2019 10:26:30 +0000 (12:26 +0200)
The findLease() function allocates @addr array iff no error
occurred and at least one satisfactory record was found.
Therefore, there is no need to call free() if findLease() failed,
or did not find any records as addr == NULL.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Erik Skultety <eskultet@redhat.com>
tools/nss/libvirt_nss.c

index 89f1f3fdacd111d3b5f67f495abcd04991ad0b23..8fe5a6d1cf8d8713ffa5ff8e88c9675a46166ad6 100644 (file)
@@ -267,7 +267,6 @@ NSS_NAME(gethostbyname3)(const char *name, int af, struct hostent *result,
         af = AF_INET;
 
     if ((r = findLease(name, af, &addr, &naddr, &found, errnop)) < 0) {
-        free(addr);
         /* Error occurred. Return immediately. */
         if (*errnop == EAGAIN) {
             *herrnop = TRY_AGAIN;
@@ -282,13 +281,11 @@ NSS_NAME(gethostbyname3)(const char *name, int af, struct hostent *result,
         /* NOT found */
         *errnop = ESRCH;
         *herrnop = HOST_NOT_FOUND;
-        free(addr);
         return NSS_STATUS_NOTFOUND;
     } else if (!naddr) {
         /* Found, but no data */
         *errnop = ENXIO;
         *herrnop = NO_DATA;
-        free(addr);
         return NSS_STATUS_UNAVAIL;
     }