commit d89e3fc7d3b14dea481bd9af0bca996ced689bf6 Author: Natanael Copa Date: Fri Sep 12 13:19:01 2014 -0400 exportfs: fix test of NULL pointer in host_pton() This fixes the problem reported in: https://bugzilla.redhat.com/show_bug.cgi?id=1083018 Signed-off-by: Natanael Copa Signed-off-by: Steve Dickson diff --git a/support/export/hostname.c b/support/export/hostname.c index ad595d1..d9153e1 100644 --- a/support/export/hostname.c +++ b/support/export/hostname.c @@ -115,6 +115,11 @@ host_pton(const char *paddr) * have a real AF_INET presentation address, before invoking * getaddrinfo(3) to generate the full addrinfo list. */ + if (paddr == NULL) { + xlog(D_GENERAL, "%s: passed a NULL presentation address", + __func__); + return NULL; + } inet4 = 1; if (inet_pton(AF_INET, paddr, &sin.sin_addr) == 0) inet4 = 0; @@ -123,15 +128,12 @@ host_pton(const char *paddr) switch (error) { case 0: if (!inet4 && ai->ai_addr->sa_family == AF_INET) { + xlog(D_GENERAL, "%s: failed to convert %s", + __func__, paddr); freeaddrinfo(ai); break; } return ai; - case EAI_NONAME: - if (paddr == NULL) - xlog(D_GENERAL, "%s: passed a NULL presentation address", - __func__); - break; case EAI_SYSTEM: xlog(D_GENERAL, "%s: failed to convert %s: (%d) %m", __func__, paddr, errno);