Subject says it all. To restate: pid = fork(); exec*(...); /* child exits normally by itself, no waitpid() called yet. */ kill( pid, 0 ) is expected to return 0, while it returns -1. Attached program reproduces the issue. Best regards. -- Huginn GCS d? s: a C++$() UBLS++++$ P++ L++++$ E--- W+(-) N++ w-- O M- V- PS+ PE++ Y PGP- t--- 5-- X- R !tv b++ DI+++ D+ G e* h r++ y**