[issue33329] sigaddset() can fail on some signal numbers

2018-04-23 Thread Adhemerval Zanella
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. -- __

[issue33329] sigaddset() can fail on some signal numbers

2018-04-23 Thread Adhemerval Zanella
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

[issue33329] sigaddset() can fail on some signal numbers

2018-04-23 Thread Adhemerval Zanella
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

[issue33329] sigaddset() can fail on some signal numbers

2018-04-22 Thread Adhemerval Zanella
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

[issue33329] sigaddset() can fail on some signal numbers

2018-04-22 Thread Adhemerval Zanella
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

[issue33329] sigaddset() can fail on some signal numbers

2018-04-22 Thread Adhemerval Zanella
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