summaryrefslogtreecommitdiffstats
path: root/super1.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2009-08-13 15:02:39 +1000
committerNeilBrown <neilb@suse.de>2009-08-13 15:02:39 +1000
commit7cbeb80e900d2cbb47c6de75826769b5addb4867 (patch)
tree63a7a36fdeab2e3a65937af0bc67fa134bb068fd /super1.c
parent4737ae25dec3b6b703f8f60f351e2d6d7b527ac1 (diff)
downloadmdadm-7cbeb80e900d2cbb47c6de75826769b5addb4867.tar.gz
mdadm-7cbeb80e900d2cbb47c6de75826769b5addb4867.tar.xz
mdadm-7cbeb80e900d2cbb47c6de75826769b5addb4867.zip
super1: remove fd leak when opening /dev/urandom
As reported in https://bugzilla.novell.com/show_bug.cgi?id=527722 I forgot to close the fd after reading the random number. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'super1.c')
-rw-r--r--super1.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/super1.c b/super1.c
index 056b93b..fee22a9 100644
--- a/super1.c
+++ b/super1.c
@@ -685,6 +685,8 @@ static int update_super1(struct supertype *st, struct mdinfo *info,
__u32 r[4] = {random(), random(), random(), random()};
memcpy(sb->device_uuid, r, 16);
}
+ if (rfd >= 0)
+ close(rfd);
sb->dev_roles[i] =
__cpu_to_le16(info->disk.raid_disk);