All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] modpost: Stop grab_file() from leaking filedescriptors if fstat() fails
@ 2012-04-22 18:40 Jesper Juhl
  2012-05-07  3:50 ` Rusty Russell
  0 siblings, 1 reply; 2+ messages in thread
From: Jesper Juhl @ 2012-04-22 18:40 UTC (permalink / raw)
  To: linux-kernel
  Cc: Rusty Russell, Alessio Igor Bogani, Tony Lindgren, Ben Hutchings,
	Russell King

In case the open() call succeeds but the subsequent fstat() call
fails, then we'll return without close()'ing the filedescriptor.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
---
 scripts/mod/modpost.c |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index c4e7d15..ea0eaca 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -337,17 +337,20 @@ static void sym_update_crc(const char *name, struct module *mod,
 void *grab_file(const char *filename, unsigned long *size)
 {
 	struct stat st;
-	void *map;
+	void *map = MAP_FAILED;
 	int fd;
 
 	fd = open(filename, O_RDONLY);
-	if (fd < 0 || fstat(fd, &st) != 0)
+	if (fd < 0)
 		return NULL;
+	if (fstat(fd, &st))
+		goto failed;
 
 	*size = st.st_size;
 	map = mmap(NULL, *size, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, 0);
-	close(fd);
 
+failed:
+	close(fd);
 	if (map == MAP_FAILED)
 		return NULL;
 	return map;
-- 
1.7.10


-- 
Jesper Juhl <jj@chaosbits.net>       http://www.chaosbits.net/
Don't top-post http://www.catb.org/jargon/html/T/top-post.html
Plain text mails only, please.


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] modpost: Stop grab_file() from leaking filedescriptors if fstat() fails
  2012-04-22 18:40 [PATCH] modpost: Stop grab_file() from leaking filedescriptors if fstat() fails Jesper Juhl
@ 2012-05-07  3:50 ` Rusty Russell
  0 siblings, 0 replies; 2+ messages in thread
From: Rusty Russell @ 2012-05-07  3:50 UTC (permalink / raw)
  To: Jesper Juhl, linux-kernel
  Cc: Alessio Igor Bogani, Tony Lindgren, Ben Hutchings, Russell King

On Sun, 22 Apr 2012 20:40:49 +0200 (CEST), Jesper Juhl <jj@chaosbits.net> wrote:
> In case the open() call succeeds but the subsequent fstat() call
> fails, then we'll return without close()'ing the filedescriptor.
> 
> Signed-off-by: Jesper Juhl <jj@chaosbits.net>

Applied.

Thanks,
Rusty.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-05-07  5:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-22 18:40 [PATCH] modpost: Stop grab_file() from leaking filedescriptors if fstat() fails Jesper Juhl
2012-05-07  3:50 ` Rusty Russell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.