Skip Menu |
 

Download (untitled) / with headers
text/plain 2.6KiB
From kenh@cmf.nrl.navy.mil Mon Jan 6 23:53:16 1997
Received: from MIT.EDU (PACIFIC-CARRIER-ANNEX.MIT.EDU [18.69.0.28]) by rt-11.MIT.EDU (8.7.5/8.7.3) with SMTP id XAA27257 for <bugs@RT-11.MIT.EDU>; Mon, 6 Jan 1997 23:53:15 -0500
Received: from [134.207.10.161] by MIT.EDU with SMTP
id AA11642; Mon, 6 Jan 97 23:53:15 EST
Received: from nexus.cmf.nrl.navy.mil (kenh@nexus.cmf.nrl.navy.mil [134.207.10.9]) by ginger.cmf.nrl.navy.mil (8.7.5/8.7.3) with ESMTP id XAA01779 for <krb5-bugs@mit.edu>; Mon, 6 Jan 1997 23:53:10 -0500 (EST)
Received: (kenh@localhost) by nexus.cmf.nrl.navy.mil (8.7.5/8.6.11) id XAA10643; Mon, 6 Jan 1997 23:53:13 -0500 (EST)
Message-Id: <199701070453.XAA10643@nexus.cmf.nrl.navy.mil>
Date: Mon, 6 Jan 1997 23:53:13 -0500 (EST)
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
Reply-To: kenh@cmf.nrl.navy.mil
To: krb5-bugs@MIT.EDU
Subject: When using POSIX signals, rlogin doesn't clear them properly
X-Send-Pr-Version: 3.2

Show quoted text
>Number: 335
>Category: krb5-appl
>Synopsis: On systems with POSIX signals, rlogin doesn't clear them
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: krb5-unassigned
>State: closed
>Class: sw-bug
>Submitter-Id: unknown
>Arrival-Date: Mon Jan 06 23:54:00 EST 1997
>Last-Modified: Fri Mar 28 01:08:06 EST 1997
>Originator: Ken Hornstein
>Organization:
Naval Research Lab
Show quoted text
>Release: 1.0
>Environment:

System: SunOS nexus 4.1.4 1 sun4m
Architecture: sun4

Show quoted text
>Description:

Rlogin will try to run the regular Unix rlogin if the Kerberos one fails.
However, if your system supports POSIX signals, there is a subtle problem.

The Kerberos rlogin does not clear the signal mask before it tries running
the regular rlogin; as a result, some rlogins will not get SIGUSR1 during
startup and will not send the window size.
Show quoted text
>How-To-Repeat:

Run Kerberos rlogin on a system that supports POSIX signals (like NetBSD)
to host that doesn't support Kerberos. Note that your window size isn't
passed.
Show quoted text
>Fix:

--- krlogin.c.orig Mon Jan 6 23:45:33 1997
+++ krlogin.c Mon Jan 6 23:46:53 1997
@@ -1570,6 +1570,10 @@
char **argv;
{
register char *host;
+#ifdef POSIX_SIGNALS
+ struct sigaction sa;
+ sigest_t mask;
+#endif

#ifndef KRB5_ATHENA_COMPAT
if (encrypt_flag)
@@ -1587,6 +1591,11 @@
if (!strcmp(host, "rlogin"))
argv++;

+#ifdef POSIX_SIGNALS
+ sigemptyset(&mask)
+ sigprocmask(SIG_SETMASK, &mask, NULL);
+#endif
+
execv(UCB_RLOGIN, argv);
perror("exec");
exit(1);
Show quoted text
>Audit-Trail:

State-Changed-From-To: open-closed
State-Changed-By: tytso
State-Changed-When: Fri Mar 28 01:07:49 1997
State-Changed-Why: Patch applied to mainline

Show quoted text
>Unformatted: