public inbox for linux-ext4@vger.kernel.org
 help / color / mirror / Atom feed
* close /dev/urandom fd (e2fsprogs 1.40-WIP (7-Apr-2007))
@ 2007-06-15 20:28 Jim Meyering
  2007-06-15 22:08 ` Theodore Tso
  0 siblings, 1 reply; 3+ messages in thread
From: Jim Meyering @ 2007-06-15 20:28 UTC (permalink / raw)
  To: linux-ext4

The file descriptor opened on /dev/urandom can be closed sooner:

diff -r 11b6e3e021f0 -r 777972a573b3 lib/uuid/ChangeLog
--- a/lib/uuid/ChangeLog	Thu May 31 12:39:02 2007 -0400
+++ b/lib/uuid/ChangeLog	Fri Jun 15 18:05:09 2007 +0200
@@ -1,3 +1,8 @@ 2006-10-22  Theodore Tso  <tytso@mit.edu
+2007-06-15  Jim Meyering  <jim@meyering.net>
+
+	* gen_uuid.c (get_random_bytes): Don't leave /dev/urandom open.
+	(uuid_generate): Likewise.
+
 2006-10-22  Theodore Tso  <tytso@mit.edu>
 
 	* gen_uuid.c (get_random_bytes): Add in randomness based on
diff -r 11b6e3e021f0 -r 777972a573b3 lib/uuid/gen_uuid.c
--- a/lib/uuid/gen_uuid.c	Thu May 31 12:39:02 2007 -0400
+++ b/lib/uuid/gen_uuid.c	Fri Jun 15 18:05:09 2007 +0200
@@ -139,6 +139,7 @@ static void get_random_bytes(void *buf, 
 			cp += i;
 			lose_counter = 0;
 		}
+		close(fd);
 	}
 	
 	/*
@@ -337,8 +338,10 @@ void uuid_generate_random(uuid_t out)
  */
 void uuid_generate(uuid_t out)
 {
-	if (get_random_fd() >= 0)
+	int fd;
+	if ((fd = get_random_fd()) >= 0) {
+		close(fd);
 		uuid_generate_random(out);
-	else
+	} else
 		uuid_generate_time(out);
 }

Signed-off-by: Jim Meyering <jim@meyering.net>

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

end of thread, other threads:[~2007-06-16  5:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-15 20:28 close /dev/urandom fd (e2fsprogs 1.40-WIP (7-Apr-2007)) Jim Meyering
2007-06-15 22:08 ` Theodore Tso
2007-06-16  5:38   ` Jim Meyering

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox