From: Bill Kendall Date: Fri, 6 May 2011 16:42:57 +0000 (+0000) Subject: xfsprogs: fix open_by_handle memory leak X-Git-Tag: v3.1.6~43 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=45243d21c668b7588fd32c9afc210d7c63d1469a;p=thirdparty%2Fxfsprogs-dev.git xfsprogs: fix open_by_handle memory leak 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 Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder --- diff --git a/libhandle/handle.c b/libhandle/handle.c index c3a61299c..b1ec5f2a7 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;