libc6 and libc6-doc inconsistent?
Hi All,
I'm learning about signal handling from the info files in
libc6-doc_2.0.4-1 and seem to have found a discrepancy between
the docs and what libc6 (2.0.4-1 also) actually does.
I have the following in my program...
----------------------------------------------------------
volatile sig_atomic_t termination_handler_in_progress = 0;
void termination_handler(int signum)
{
if (termination_handler_in_progress)
raise(signum);
termination_handler_in_progress = 1;
if (unlink (SOCKNAME) < 0)
{
perror("unlink");
exit(EXIT_FAILURE);
}
raise(signum);
}
-----------------------------------------------------------
According to the libc.info (*See Termination in Handler::),
the program should end when this function is called (e.g. with
kill -TERM <pid>). I can modify it by adding another line
such as
signal(signum, SIG_DFL);
before the last "raise(signum);", but is this a bug in libc6
or libc6-doc? As I don't have the altdev package installed I
cannot test it with that at the moment.
BTW, I saw an O'Reilly book on System V system programming the
other day. Its the one with the lion on the front cover. Is it
worth buying (at $89.95 AUD)?
Thanks,
Mark
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: