[lvm-devel] master - clmvd: fix decriptor leak on restart
Zdenek Kabelac
zkabelac at fedoraproject.org
Tue Aug 6 14:23:16 UTC 2013
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=7b1315411f1de73801fd38f264ca507ae3807e53
Commit: 7b1315411f1de73801fd38f264ca507ae3807e53
Parent: 16c1dacb6e98c8b49462a7ca9f98687c0affe498
Author: Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate: Tue Aug 6 16:07:50 2013 +0200
Committer: Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Tue Aug 6 16:20:36 2013 +0200
clmvd: fix decriptor leak on restart
Do not leave descriptor used for dup2() openned.
---
WHATS_NEW | 1 +
daemons/clvmd/clvmd.c | 4 ++++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/WHATS_NEW b/WHATS_NEW
index 5284145..446a853 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.02.100 -
================================
+ Fix clvmd descriptor leak on restart.
Add pipe_open/close() to replace less secure popen() glibc call.
Fix metadata area offset/size overflow if it's >= 4g and while using lvmetad.
Inherit and apply any profile attached to a VG if creating new thin pool.
diff --git a/daemons/clvmd/clvmd.c b/daemons/clvmd/clvmd.c
index f05776f..eaa75ca 100644
--- a/daemons/clvmd/clvmd.c
+++ b/daemons/clvmd/clvmd.c
@@ -1085,6 +1085,10 @@ static void be_daemon(int timeout)
log_error("Error setting terminal FDs to /dev/null: %m");
exit(5);
}
+ if ((devnull > STDERR_FILENO) && close(devnull)) {
+ log_sys_error("close", "/dev/null");
+ exit(7);
+ }
if (chdir("/")) {
log_error("Error setting current directory to /: %m");
exit(6);
More information about the lvm-devel
mailing list