[14993] in Athena Bugs
sun4 8.0J: telnetd
daemon@ATHENA.MIT.EDU (Albert Dvornik)
Mon Mar 10 15:13:48 1997
To: bugs@MIT.EDU
Date: Mon, 10 Mar 1997 15:13:43 EST
From: "Albert Dvornik" <bert@MIT.EDU>
System name: infocalypse
Type and version: SPARC/Classic 8.0J (5 update(s) to same version)
Display type: cgthree
What were you trying to do?
Log in, some time after my fileserver got healthy again.
During my last login, telnetd said:
telnetd[ Kerberos V4 accepts you ]
: Using temporary home directory ()
In addition to creating a temporary home directory, however,
the Athena Login library also edits the passwd file to change
the home directory listed there, such that programs which only
use the passwd file don't lose.
What's wrong:
The change in the passwd file is never backed out.
(ALend calls ALremovePasswdEntry, which only removes lines
added to the password file if ALdidGetHesiodPasswd, ie. an
entry was added from Hesiod.)
This is extremely annoying on machines which rarely reactivate,
especially since the cause of the lossage is not obvious (at
least to people who haven't written the library =).
What should have happened:
Ideally, the line in the passwd file should be restored,
either from its original value or from passwd.local.
If this is too much work for arguably small functionality,
then the changed line should be removed from passwd. That way:
* If the machine reactivates and restores passwd from
passwd.local before next login, the effect is the same as
currently.
* If the server doesn't come back up, a little more work is
done, but the user-visible behavior is the same (well, they
get to see an extra warning message about the temp. homedir
being there already).
* If the machine does not reactivate, and the homedir file
server comes back up, the user doesn't lose.