From 3a6174984dae93827dcbd269eb990f106f0ba2ed Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Wed, 3 Aug 2016 13:17:47 -0400 Subject: mount: fix memory leak in v4root_add_parents If pseudofs_update failed, we weren't freeing 'path'. Acked-by: J. Bruce Fields Signed-off-by: NeilBrown Signed-off-by: Steve Dickson --- utils/mountd/v4root.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'utils/mountd/v4root.c') diff --git a/utils/mountd/v4root.c b/utils/mountd/v4root.c index d521725..f978f4c 100644 --- a/utils/mountd/v4root.c +++ b/utils/mountd/v4root.c @@ -152,6 +152,7 @@ static int v4root_add_parents(nfs_export *exp) char *hostname = exp->m_export.e_hostname; char *path; char *ptr; + int ret = 0; path = strdup(exp->m_export.e_path); if (!path) { @@ -160,19 +161,18 @@ static int v4root_add_parents(nfs_export *exp) return -ENOMEM; } for (ptr = path; ptr; ptr = strchr(ptr, '/')) { - int ret; char saved; saved = *ptr; *ptr = '\0'; ret = pseudofs_update(hostname, *path ? path : "/", exp); if (ret) - return ret; + break; *ptr = saved; ptr++; } free(path); - return 0; + return ret; } /* -- cgit