From 6c0324c0e6792df13fb4520924ba576b7613c900 Mon Sep 17 00:00:00 2001 From: Theodore Tso Date: Fri, 28 Mar 1997 06:07:24 +0000 Subject: [PATCH] When falling back to the normal rlogin, clear the signal mask, so that the child rlogin handles SIGUSR1 (which is used for window size changes) correctly. [krb5-appl/335] git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@10032 dc483132-0cff-0310-8789-dd5450dbe970 --- src/appl/bsd/ChangeLog | 7 +++++++ src/appl/bsd/krlogin.c | 9 +++++++++ 2 files changed, 16 insertions(+) diff --git a/src/appl/bsd/ChangeLog b/src/appl/bsd/ChangeLog index df05407a8..e588b0000 100644 --- a/src/appl/bsd/ChangeLog +++ b/src/appl/bsd/ChangeLog @@ -1,3 +1,10 @@ +Fri Mar 28 01:05:27 1997 Theodore Y. Ts'o + + * krlogin.c (try_normal): When falling back to the normal rlogin, + clear the signal mask, so that the child rlogin handles + SIGUSR1 (which is used for window size changes) correctly. + [krb5-appl/335] + Tue Mar 18 12:34:03 1997 Sam Hartman [326] * login.c(doit): Preserve terminal even without -p. diff --git a/src/appl/bsd/krlogin.c b/src/appl/bsd/krlogin.c index b4288773f..e0bb4e83d 100644 --- a/src/appl/bsd/krlogin.c +++ b/src/appl/bsd/krlogin.c @@ -1565,6 +1565,10 @@ void try_normal(argv) char **argv; { register char *host; +#ifdef POSIX_SIGNALS + struct sigaction sa; + sigest_t mask; +#endif #ifndef KRB5_ATHENA_COMPAT if (encrypt_flag) @@ -1582,6 +1586,11 @@ void try_normal(argv) if (!strcmp(host, "rlogin")) argv++; +#ifdef POSIX_SIGNALS + sigemptyset(&mask) + sigprocmask(SIG_SETMASK, &mask, NULL); +#endif + execv(UCB_RLOGIN, argv); perror("exec"); exit(1); -- 2.26.2