From: Todd C. Miller Date: Fri, 6 Feb 1998 00:19:24 +0000 (+0000) Subject: close fd's <=2 not <=3 and move that chunk of code up X-Git-Tag: SUDO_1_5_6~104 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=25ed56fba2618906a1b13712e9bbf2a6f043b817;p=sudo close fd's <=2 not <=3 and move that chunk of code up --- diff --git a/sudo.c b/sudo.c index f02a4b163..7a1f0ef09 100644 --- a/sudo.c +++ b/sudo.c @@ -205,6 +205,18 @@ int main(argc, argv) exit(1); } + /* + * Close all file descriptors to make sure we have a nice + * clean slate from which to work. + */ +#ifdef HAVE_SYSCONF + for (rtn = sysconf(_SC_OPEN_MAX) - 1; rtn > 2; rtn--) + (void) close(rtn); +#else + for (rtn = getdtablesize() - 1; rtn > 2; rtn--) + (void) close(rtn); +#endif /* HAVE_SYSCONF */ + /* * set the prompt based on $SUDO_PROMPT (can be overridden by `-p') */ @@ -241,18 +253,6 @@ int main(argc, argv) if (cmnd == NULL && NewArgc == 0 && !(sudo_mode & MODE_SHELL)) usage(1); - /* - * Close all file descriptors to make sure we have a nice - * clean slate from which to work. - */ -#ifdef HAVE_SYSCONF - for (rtn = sysconf(_SC_OPEN_MAX) - 1; rtn > 3; rtn--) - (void) close(rtn); -#else - for (rtn = getdtablesize() - 1; rtn > 3; rtn--) - (void) close(rtn); -#endif /* HAVE_SYSCONF */ - clean_env(environ, badenv_table); load_globals(sudo_mode); /* load global variables used throughout sudo */