setppid(2) question

Christopher E. Piggott cep4478 at ritcv.UUCP
Mon Oct 24 07:35:55 AEST 1988


A few weeks ago, I asked a friend a question, and he lied to me and told me
to use setppid(), which doesn't exist.

The question involves what being a "login shell" means.  The way I have
always assumed this condition to be checked was that the parent process I.D.
of the shell was identically equal to one.

The point is that I want to have .login (csh) spawn off a copy of tcsh, and
to have it appear to the entire world that tcsh is my login shell.  (I am an
ordinary unprivileged user, and chsh doesn't recognize tcsh here).

I realize that there are many ways to get the problem solved; to be honest,
I am asking for learning purposes rather than to solve the problem.  (For
instance, I know that one way to solve it would be to simply have .login
exec tcsh with the command line flag that specifies it as a login shell.
I'm just a little hazy on ppid's and how they are set for signal
propagation - if the parent of a process whose parent is 1 no longer exists,
will it receive a SIGHUP if I drop carrier?  And, if the ppid is NOT 1,
doesn't that mean it will take longer to receive the SIGHUP, and at high
load risks never getting it if someone dials in quickly on my 'dropped'
line?)

/Chris

cep4478 at ritcv.rit.edu
cep4478 at ritcv.csnet
cep4478 at RITVAXA.BITNET
(in that order)



More information about the Comp.unix.wizards mailing list