@ page 1155 line 36291 section pthread_sigmask objection [gwc pthread_sigmask
pthread_kill]
Problem:
Defect code : 1. Error
The pthread_sigmask() page says:
"If any of the SIGFPE, SIGILL, SIGSEGV, or SIGBUS signals are
generated while they are blocked, the result is undefined, unless
the signal was generated by the kill() function, the sigqueue()
function, or the raise() function."
The function list is missing pthread_kill().
The exception should also apply to signals sent by other processes
regardless of what language the other process was written in.
E.g. currently it does not allow for a signal that was generated by
another process calling the Ada Send_Signal() procedure.
Action:
Change
"unless the signal was generated by the kill() function, the
sigqueue() function, or the raise() function."
to
"unless the signal was generated by the action of another
process, or by one of the functions kill(), pthread_kill(),
raise(), or sigqueue()."
|