libuev
Functions
signal.c File Reference

Linux signalfd(2). More...

#include <errno.h>
#include <signal.h>
#include <sys/signalfd.h>
#include <unistd.h>
#include "uev.h"
Include dependency graph for signal.c:

Functions

int uev_signal_init (uev_ctx_t *ctx, uev_t *w, uev_cb_t *cb, void *arg, int signo)
 Create a signal watcher. More...
 
int uev_signal_set (uev_t *w, int signo)
 Reset a signal watcher. More...
 
int uev_signal_start (uev_t *w)
 Start a stopped signal watcher. More...
 
int uev_signal_stop (uev_t *w)
 Stop a signal watcher. More...
 

Detailed Description

Linux signalfd(2).

Notice how uev::siginfo returns a struct signalfd_siginfo with useful data on the sender of the signal, this information is only available to signal callbacks.

Function Documentation

◆ uev_signal_init()

int uev_signal_init ( uev_ctx_t ctx,
uev_t w,
uev_cb_t cb,
void *  arg,
int  signo 
)

Create a signal watcher.

Parameters
ctxA valid libuEv context
wPointer to an uev_t watcher
cbSignal callback
argOptional callback argument
signoSignal to watch for
Returns
POSIX OK(0) or non-zero with errno set on error.

◆ uev_signal_set()

int uev_signal_set ( uev_t w,
int  signo 
)

Reset a signal watcher.

Parameters
wWatcher to reset
signoNew signal to watch for
Returns
POSIX OK(0) or non-zero with errno set on error.

◆ uev_signal_start()

int uev_signal_start ( uev_t w)

Start a stopped signal watcher.

Parameters
wWatcher to start (again)
Returns
POSIX OK(0) or non-zero with errno set on error.

◆ uev_signal_stop()

int uev_signal_stop ( uev_t w)

Stop a signal watcher.

Parameters
wWatcher to stop
Returns
POSIX OK(0) or non-zero with errno set on error.