Startsess
This Startsess program was written to invoke a shell for an LTSP
workstation.
It is needed, because we found that if you spawn a shell directly
from /sbin/init, it won't handle the Ctrl-C key properly. In fact,
it won't handle the following signals:
SIGINT, SIGQUIT or SIGTSTP.
In the kernel, there is a file called n_tty.c, which is the
part of the tty driver that handles those signals. If
the Process Group Id is <= 0, then it won't pass those signals
on to the process that is running.
So, the Startsess program takes care of creating a new session,
and assigning a Process Group ID to it. it then execs the
shell. Actually, it will exec whatever you pass to it on the
command line.
--
NickTaylor - 07 Jun 2005