Hello all, It looks like there is a problem with how OpenSSH writes the id field in utmp and utmpx on IRIX. OpenSSH and IRIX use somewhat differnt conventions for the id field and this seems to create a problem under some circumstances. Under some (as yet undetermined) circumstances IRIX leaves a DEAD_PROCESS record that still has a username and pid associated with it. When this happens, cuserid() and getlogin() can get fooled into using the old record rather than the record writtne by sshd. I wrote a small program to extract some of the information from the utmpx file and have included some output her to help illustrate the issue. octane30.root./tmp: 51> /bin/tty /dev/ttyq3 octane30.root./tmp: 52> ./utxent | grep ttyq3 onufer:ttyq3:q3:8:1006:1896751 root:ttyq3:tyq3:7:0:1955158 octane30.root./tmp: 53> ps -fp 1896751 UID PID PPID C STIME TTY TIME CMD octane30.root./tmp: 54> who am i onufer ttyq3 Mar 13 13:34 octane30.root./tmp: 55> whoami root octane30.root./tmp: 56> I made a very minor alteration to loginrec.c which seems to have eliminated the issue on the systems that I have tested it on. diff -u src/loginrec.c irix6.5/loginrec.c --- src/loginrec.c Mon Oct 29 18:50:40 2001 +++ irix6.5/loginrec.c Wed Mar 6 11:33:40 2002 @@ -564,6 +564,10 @@ if (strncmp(src, "/dev/", 5) == 0) src += 5; + /* Make the ut_id field consistent with IRIX */ + if (strncmp(src, "tty", 3) == 0) + src += 3; + len = strlen(src); if (len > 0) { -- Iain Morgan NAS Desktop Support Group