[Bug 560] Privsep child continues to run after monitor killed.
bugzilla-daemon at mindrot.org
bugzilla-daemon at mindrot.org
Mon May 12 22:27:37 EST 2003
http://bugzilla.mindrot.org/show_bug.cgi?id=560
------- Additional Comments From dtucker at zip.com.au 2003-05-12 22:27 -------
OK, I think I know why the bug does not manifest on Solaris:
$ truss -p 10673 # user child
poll(0xEFFFF348, 3, -1) (sleeping...)
Received signal #1, SIGHUP, in poll() [default]
poll(0xEFFFF348, 3, -1) Err#4 EINTR
*** process killed ***
I think the reason why it doesn't happen on Solaris is because setsid() is
not called early in sshd (SSHD_ACQUIRES_CTTY is defined), so both monitor and
child have the same controlling terminal.
$ ps -eafj # Solaris 8
UID PID PPID PGID SID C STIME TTY TIME CMD
dtucker 12497 12495 12495 12495 1 22:01:54 pts/2 0:00 ./sshd -p 2022
root 2541 1 2541 2541 0 21:04:37 ? 0:00 ./sshd -p 2022
root 12495 2541 12495 12495 1 22:01:52 pts/2 0:00 ./sshd -p 2022
$ ps -eafj # Redhat 8
UID PID PPID PGID SID C STIME TTY TIME CMD
root 5052 1 5052 5052 0 21:25 ? 00:00:00 ./sshd -p 2022
root 13559 5052 13559 13559 1 22:05 ? 00:00:00 [sshd]
dtucker 13562 13559 13559 13559 0 22:05 ? 00:00:00 [sshd]
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the openssh-unix-dev
mailing list