[PATCH] xfsprogs: fix open_by_handle memory leak

Bill Kendall wkendall at sgi.com
Fri May 6 11:42:57 CDT 2011


open_by_handle() calls handle_to_fshandle() which
allocates an fshandle on the heap, which is never
freed by open_by_handle(). There is no need to
call handle_to_fshandle() though, just pass the
fhandle (rather than fshandle) to handle_to_fsfd(),
like the other *_by_handle() functions do.

Signed-off-by: Bill Kendall <wkendall at sgi.com>
---
 libhandle/handle.c |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)

diff --git a/libhandle/handle.c b/libhandle/handle.c
index c3a6129..b1ec5f2 100644
--- a/libhandle/handle.c
+++ b/libhandle/handle.c
@@ -292,14 +292,9 @@ open_by_handle(
 {
 	int		fsfd;
 	char		*path;
-	void		*fshanp;
-	size_t		fshlen;
 	xfs_fsop_handlereq_t hreq;
 
-	if (handle_to_fshandle(hanp, hlen, &fshanp, &fshlen) != 0)
-		return -1;
-
-	if ((fsfd = handle_to_fsfd(fshanp, &path)) < 0)
+	if ((fsfd = handle_to_fsfd(hanp, &path)) < 0)
 		return -1;
 
 	hreq.fd       = 0;
-- 
1.7.0.4




More information about the xfs mailing list