From: Karel Zak Date: Wed, 27 Mar 2013 15:08:47 +0000 (+0100) Subject: lib/xalloc: fix mamory leak in xgethostname() [coverity scan] X-Git-Tag: v2.23-rc2~95 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8362545b4a3dc1b2903b7aa2e40eaf472aec130c;p=thirdparty%2Futil-linux.git lib/xalloc: fix mamory leak in xgethostname() [coverity scan] Signed-off-by: Karel Zak --- diff --git a/include/xalloc.h b/include/xalloc.h index 7b685e7184..1f29621ef7 100644 --- a/include/xalloc.h +++ b/include/xalloc.h @@ -83,9 +83,11 @@ static inline char *xgethostname(void) size_t sz = get_hostname_max() + 1; name = xmalloc(sizeof(char) * sz); - if (gethostname(name, sz) != 0) - return NULL; + if (gethostname(name, sz) != 0) { + free(name); + return NULL; + } name[sz - 1] = '\0'; return name; } diff --git a/term-utils/agetty.c b/term-utils/agetty.c index 7ac12f2014..f745e68000 100644 --- a/term-utils/agetty.c +++ b/term-utils/agetty.c @@ -1209,9 +1209,10 @@ static char *xgethostname(void) if (!name) log_err(_("failed to allocate memory: %m")); - if (gethostname(name, sz) != 0) + if (gethostname(name, sz) != 0) { + free(name); return NULL; - + } name[sz - 1] = '\0'; return name; } @@ -1226,9 +1227,10 @@ static char *xgetdomainname(void) if (!name) log_err(_("failed to allocate memory: %m")); - if (getdomainname(name, sz) != 0) + if (getdomainname(name, sz) != 0) { + free(name); return NULL; - + } name[sz - 1] = '\0'; return name; #endif