Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: binary MIME-Version: 1.0 X-Mailer: MIME-tools 5.411 (Entity 5.404) X-RT-Original-Encoding: iso-8859-1 Content-Length: 2742 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 ; 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 ; 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 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 >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 >Release: 1.0 >Environment: System: SunOS nexus 4.1.4 1 sun4m Architecture: sun4 >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. >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. >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); >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 >Unformatted: