X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=utils%2Fgssd%2Fsvcgssd.c;h=729b6a6d3b80a86034e6887fd3a0e87c3113a9fa;hp=6ca0e8d762bf2ae36c321b97bb54f7efbfafd6cf;hb=1aa4121ba599de836702d7b2d38cad63e6a09044;hpb=3724317e223d46908aac2405bbd73ea2de4f36e5 diff --git a/utils/gssd/svcgssd.c b/utils/gssd/svcgssd.c index 6ca0e8d..729b6a6 100644 --- a/utils/gssd/svcgssd.c +++ b/utils/gssd/svcgssd.c @@ -117,10 +117,16 @@ mydaemon(int nochdir, int noclose) if (noclose == 0) { tempfd = open("/dev/null", O_RDWR); - dup2(tempfd, 0); - dup2(tempfd, 1); - dup2(tempfd, 2); - closeall(3); + if (tempfd >= 0) { + dup2(tempfd, 0); + dup2(tempfd, 1); + dup2(tempfd, 2); + close(tempfd); + } else { + printerr(1, "mydaemon: can't open /dev/null: errno %d " + "(%s)\n", errno, strerror(errno)); + exit(1); + } } return; @@ -208,6 +214,8 @@ main(int argc, char *argv[]) initerr(progname, verbosity, fg); #ifdef HAVE_AUTHGSS_SET_DEBUG_LEVEL + if (verbosity && rpc_verbosity == 0) + rpc_verbosity = verbosity; authgss_set_debug_level(rpc_verbosity); #else if (rpc_verbosity > 0) @@ -215,6 +223,8 @@ main(int argc, char *argv[]) "support setting debug level\n"); #endif #ifdef HAVE_NFS4_SET_DEBUG + if (verbosity && idmap_verbosity == 0) + idmap_verbosity = verbosity; nfs4_set_debug(idmap_verbosity, NULL); #else if (idmap_verbosity > 0)