Re: Kill system call

Zefram (A.Main@dcs.warwick.ac.uk)
Sat, 23 Mar 1996 16:15:07 +0000 (GMT)


>I have a process, which forks off a child. The child process has a
>different EUID to the parent. The child sends the parent a signal to
>check that it is still alive, but the kill system call returns EPERM
>whereas on all the other unix systems the software is running on the
>call returns 0.

That's because Linux uses the wrong logic to check for permission to
send a signal. The usual Unix logic is that the ruid or euid of the
sending process must match the ruid (or, in some versions, suid) of the
receiving process. Linux, I think, requires that the euid of the
sending process match the ruid or euid of the receiving process.

-zefram