moved tty stuff into sudo.c
This commit is contained in:
12
logging.c
12
logging.c
@@ -123,7 +123,6 @@ void log_error(code)
|
|||||||
char *p;
|
char *p;
|
||||||
int count;
|
int count;
|
||||||
time_t now;
|
time_t now;
|
||||||
char *tty;
|
|
||||||
#if (LOGGING & SLOG_FILE)
|
#if (LOGGING & SLOG_FILE)
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
#endif /* LOGGING & SLOG_FILE */
|
#endif /* LOGGING & SLOG_FILE */
|
||||||
@@ -132,17 +131,6 @@ void log_error(code)
|
|||||||
char *tmp, save;
|
char *tmp, save;
|
||||||
#endif /* LOGGING & SLOG_SYSLOG */
|
#endif /* LOGGING & SLOG_SYSLOG */
|
||||||
|
|
||||||
/*
|
|
||||||
* Get our ttyname or set to "none"
|
|
||||||
*/
|
|
||||||
if ((tty = (char *) ttyname(0)) == NULL)
|
|
||||||
tty = (char *) ttyname(1);
|
|
||||||
|
|
||||||
if (tty && (p = strrchr(tty, '/')))
|
|
||||||
tty = p + 1;
|
|
||||||
else
|
|
||||||
tty = "none";
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Allocate enough memory for logline so we won't overflow it
|
* Allocate enough memory for logline so we won't overflow it
|
||||||
* XXX - don't use 33, use a macro!
|
* XXX - don't use 33, use a macro!
|
||||||
|
15
sudo.c
15
sudo.c
@@ -132,6 +132,7 @@ char **Argv;
|
|||||||
char *cmnd = NULL;
|
char *cmnd = NULL;
|
||||||
char *cmnd_args = NULL;
|
char *cmnd_args = NULL;
|
||||||
char *user = NULL;
|
char *user = NULL;
|
||||||
|
char *tty = NULL;
|
||||||
char *epasswd = NULL;
|
char *epasswd = NULL;
|
||||||
char *prompt = PASSPROMPT;
|
char *prompt = PASSPROMPT;
|
||||||
char *shell = NULL;
|
char *shell = NULL;
|
||||||
@@ -367,6 +368,20 @@ static void load_globals(sudo_mode)
|
|||||||
(void) tzset(); /* set the timezone if applicable */
|
(void) tzset(); /* set the timezone if applicable */
|
||||||
#endif /* HAVE_TZSET */
|
#endif /* HAVE_TZSET */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Need to get tty early since it's used for logging
|
||||||
|
*/
|
||||||
|
if ((tty = (char *) ttyname(0)) || (tty = (char *) ttyname(0))) {
|
||||||
|
if ((p = strrchr(tty, '/')))
|
||||||
|
tty = p + 1;
|
||||||
|
if ((tty = strdup(tty)) == NULL) {
|
||||||
|
perror("malloc");
|
||||||
|
(void) fprintf(stderr, "%s: cannot allocate memory!\n", Argv[0]);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
tty = "none";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* loading the user & epasswd global variable from the passwd file
|
* loading the user & epasswd global variable from the passwd file
|
||||||
* (must be done as root to get real passwd on some systems)
|
* (must be done as root to get real passwd on some systems)
|
||||||
|
Reference in New Issue
Block a user