Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f96afb6c-3383-4538-a2c6-e9055365b3b7@koorogi.info>
Date: Sun, 8 Jun 2025 11:53:44 -0500
From: Bobby Bingham <koorogi@...rogi.info>
To: musl@...ts.openwall.com
Subject: Re: The `sigpause` function behavior does not fully comply
 with the POSIX specification

On 6/8/25 10:43, Haelwenn (lanodan) Monnier wrote:
> 
> This manpage isn't the POSIX standard but Linux own manpage (which for C 
> documents glibc behavior).

Yes.

> 
> See https://pubs.opengroup.org/onlinepubs/9699919799/functions/ 
> sigpause.html for POSIX.1-2018
> where EINVAL is allowed and sigpause returns SIG_ERR (defined by musl in 
> <signal.h> to ((void (*)(int))-1) ).

That page says:

     The sigpause() function shall suspend execution of the thread until
     a signal is received, whereupon it shall return -1 and set errno to
     [EINTR].

This reads to me that sigpause is only permitted to set errno to EINTR, 
and not to return other errors. The list of errors would seem to apply 
to the other functions on the page, which are documented to "use errno 
to indicate the error."

--
Bobby Bingham

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.