Fix signal handler

SF Markus Elfring elfring at
Sun Sep 23 19:40:59 CEST 2012

> So the real question is whether this is a bug or not, or in other words,
> does this break any of the guarantees that libev gives on any platform
> that libev is used on?

I would see it as an "open issue" (or more a bug) for a specific implementation
detail where I would like to recommend a few corrections.

The expectations from an information in the documentation like the following can
not be completely satisfied at the moment.
'ev_feed_signal (int signum)
    This function can be used to "simulate" a signal receive. It is completely
safe to call this function at any time, from any context, including signal
handlers or random threads.'

> As far as we know, the current method is already safe and robust, and
> evidence to the contrary would be appreciated, but so far, none is known.

I imagine that the affected function could be made async-signal-safe if all
received signal numbers will be written to a dedicated pipe.

> If you know of a method that allows us to do this in a practical but still
> strictly c99 conforming way that would be cool, but I will not hold my breath :)

Would the pipe approach be acceptable for you?

Does it make sense to choose such implementation details also by a build


More information about the libev mailing list