Received: from SOUTH-STATION-ANNEX.MIT.EDU by po7.MIT.EDU (5.61/4.7) id AA11653; Fri, 1 Dec 95 17:36:48 EST
Received: from DCL.MIT.EDU by MIT.EDU with SMTP
	id AA06732; Fri, 1 Dec 95 17:34:33 EST
From: tytso@MIT.EDU
Received: by dcl.MIT.EDU (5.0/4.7) id AA21208; Fri, 1 Dec 1995 17:35:38 -0500
Date: Fri, 1 Dec 1995 17:35:38 -0500
Message-Id: <9512012235.AA21208@dcl.MIT.EDU>
To: cvs-krb5@MIT.EDU
Subject: CVS report: src/appl/bsd ChangeLog login.c
Content-Length: 1116

Update of /mit/krb5/.cvsroot/src/appl/bsd
In directory dcl:/u1/krb5/src/appl/bsd

Modified Files:
	ChangeLog login.c 
Log Message:
Applied patch from Scott Schwartz <schwartz@galapagos.cse.psu.edu>

Under SunOS, and maybe other systems, there is a a problem with
krlogind.c and a similar problem with login.c as distributed with
K5.5. 

The bug is that rlogind forks a child but retains a controlling tty.
If the child is in the same process group as the parent, which is will
if you don't use a job control shell (chsh /bin/rc), keyboard signals
will kill the daemon.  telnetd dissociates itself properly, but then
login.krb5 waits for the shell to finish, but login.krb5 has the same
ctty as the shell and is in the same process group, so it has the same
problem. 

In BSD you used to be able to give up your ctty at will, but SunOS
seems to have setsid as the only mechanism to perform that action, and
setsid can only succeed in limited circumstances.  Rlogind ought to be
fixed to behave more like telnetd, but independent of that, login.krb5
needs to be patched if kerberos is to work properly under SunOS. 


