From 7a7101ece9ba20c460a8275be1322cd7d1c8e9aa Mon Sep 17 00:00:00 2001 From: djm Date: Wed, 21 Mar 2001 05:13:03 +0000 Subject: [PATCH] - (djm) Correctly handle SIA and AIX when no tty present. Spotted and suggested fix from Mike Battersby --- ChangeLog | 2 ++ session.c | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index bd36c3eb..4c88d02d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -6,6 +6,8 @@ - (djm) Don't loop forever when changing password via PAM. Patch from Solar Designer - (djm) Generate config files before build + - (djm) Correctly handle SIA and AIX when no tty present. Spotted and + suggested fix from Mike Battersby 20010320 - (bal) glob.c update to added GLOB_LIMITS (OpenBSD CVS). diff --git a/session.c b/session.c index 31a16dc7..bed03c74 100644 --- a/session.c +++ b/session.c @@ -1053,7 +1053,7 @@ do_child(Session *s, const char *command) switch, so we let login(1) to this for us. */ if (!options.use_login) { #ifdef HAVE_OSF_SIA - session_setup_sia(pw->pw_name, s->tty); + session_setup_sia(pw->pw_name, s->ttyfd == -1 ? NULL : s->tty); #else /* HAVE_OSF_SIA */ #ifdef HAVE_CYGWIN if (is_winnt) { @@ -1137,7 +1137,8 @@ do_child(Session *s, const char *command) cp = xmalloc(22 + strlen(s->tty) + 2 * strlen(pw->pw_name)); i = sprintf(cp, "LOGNAME=%s%cNAME=%s%cTTY=%s%c%c", - pw->pw_name, 0, pw->pw_name, 0, s->tty, 0,0); + pw->pw_name, 0, pw->pw_name, 0, + s->ttyfd == -1 ? "" : s->tty, 0,0); if (usrinfo(SETUINFO, cp, i) == -1) fatal("Couldn't set usrinfo: %s", strerror(errno)); -- 2.45.2