From 47e5725d85dc2fed09c584d5de16afbe1b434887 Mon Sep 17 00:00:00 2001 From: chip Date: Mon, 8 Oct 2001 22:57:58 +0000 Subject: [PATCH] 2001-10-08 Chip Salzenberg * utils/mountd/mountd.c (main): When daemonizing, close all fds > 2. --- ChangeLog | 3 ++- utils/mountd/mountd.c | 10 ++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index ddee2eb..55e2a30 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ 2001-10-08 Chip Salzenberg - * utils/Makefile.in: Remove Makefile in target 'distclean'. + * utils/mountd/mountd.c (main): When daemonizing, close all fds > 2. + * utils/Makefile.in: Remove old Makefile in target 'distclean'. * utils/mountd/mountd.man: Update paths to /var/lib. * debian/*: Version 0.3.3-1, with Debian-specific fixes. diff --git a/utils/mountd/mountd.c b/utils/mountd/mountd.c index b577971..e93f0ba 100644 --- a/utils/mountd/mountd.c +++ b/utils/mountd/mountd.c @@ -512,11 +512,17 @@ main(int argc, char **argv) /* Now we remove ourselves from the foreground. Redirect stdin/stdout/stderr first. */ { - int fd = open("/dev/null", O_RDWR); + int fd, fdmax; + + fd = open("/dev/null", O_RDWR); (void) dup2(fd, 0); (void) dup2(fd, 1); (void) dup2(fd, 2); - if (fd > 2) (void) close(fd); + + fdmax = sysconf (_SC_OPEN_MAX); + for (fd = 3; fd < fdmax; fd++) { + close (fd); + } } setsid(); xlog_background(); -- 2.39.5