Adhemerval Zanella added the comment:
What I mean is for master glibc, which contains BZ#22391, 'sigaddset' will fail
do add signal 32 and 33. But since you are now ignoring 'sigaddset' return
code, it does not matter.
--
__
Adhemerval Zanella added the comment:
Yes, this is the issue I referred in previous comment [1]. Unfortunately it is
only fixed on master (which will become 2.28).
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=22391
--
___
Python tracker
Adhemerval Zanella added the comment:
Yes I am aware, but I can't see a really portable way to provide the same
functionality as 'sigfillset'. Ideally a libc implementation would return
EINVAL on 'sigaddset' for invalid signals, but even for glibc this is not true
Adhemerval Zanella added the comment:
One option would be to create a list of possible defined signals and check if
the signal is on the list. For realtime signals, it just a matter to check if
SIGRTMIN <= signal <= SIGRTMAX.
The glibc defined signals can be checked at tst-signal.c
Adhemerval Zanella added the comment:
Also keep in mind that POSIX [1] specifies that sigaddset *may* fail with
EINVAL for not support signals, so a conforming implementation may not fail on
sigaddset and still remove the internal signal in a sigprocmask (uclibc for
instance).
[1] http
Adhemerval Zanella added the comment:
Why not export and use the canonical way of
sigemptyset/sigfillset/sigaddset/sigdelset/sigismember instead of pushing for
more potential non-conformant code? For glibc sigfillset will correctly fill
all the signal set structure while removing the