IIRC a process group will make the maintainence easier. You may want to check negative values in kill(2).
Michael Tautschnig <[email protected]> wrote: >> Hi! >> I don't think this is the right place to request this help, but I >> don't know a better one at time... (RFH seems to be too "big") >> The problem is the following: PackageKit (Debian package >> "src:packagekit") recently became Linux-specific by accident, and I >> need someone who knows *BSD/portable-programming better than I do to >> make it compile on *BSD again. >> The problem is this code: >> http://gitorious.org/packagekit/packagekit/blobs/master/lib/packagekit-glib2/pk-spawn-polkit-agent.c >> On *BSD I get: >> pk-spawn-polkit-agent.c:24:23: fatal error: sys/prctl.h: No such file >> or directory >> compilation terminated. >> make[5]: *** [libpackagekit_glib2_la-pk-spawn-polkit-agent.lo] Error 1 >> >[...] > >Well, the use of prctl is inherently unportable. So instead of having the >forked >agent set up a signal in case of death of the parent, install a proper signal >handler right in the parent's code that kills all forked agents (so keep a >container containing all agent pids) upon reception of a signal. > >Hope this helps, >Michael >

