dsignal.h3
Contains the api for serializing signals to a pipe for usage with select() or poll().
Usage
Functions
int daemon_signal_init (int s,...)
Installs signal handlers for the specified signals. int daemon_signal_install (int s)
Install a signal handler for the specified signal. void daemon_signal_done (void)
Free resources of signal handling, should be called before daemon exit. int daemon_signal_next (void)
Return the next signal received. int daemon_signal_fd (void)
Return the file descriptor the daemon should select() on for reading.
Detailed Description
Contains the API for serializing signals to a pipe for usage with select() or poll().
You should register all signals you wish to handle with select() in your main loop with daemon_signal_init() or daemon_signal_install(). After that you should sleep on the file descriptor returned by daemon_signal_fd() and get the next signal received with daemon_signal_next(). You should call daemon_signal_done() before exiting.
Definition in file dsignal.h.
Function Documentation
void daemon_signal_done (void)
Free resources of signal handling, should be called before daemon exit.
Examples testd.c.
int daemon_signal_fd (void)
Return the file descriptor the daemon should select() on for reading. Whenever the descriptor is ready you should call daemon_signal_next() to get the next signal queued.
Returns
The file descriptor or negative on failure
Examples testd.c.
int daemon_signal_init (int s, ...)
Installs signal handlers for the specified signals.
Parameters
s,... The signals to install handlers for. The list should be terminated by 0
Returns
zero on success, nonzero on failure
Examples testd.c.
int daemon_signal_install (int s)
Install a signal handler for the specified signal.
Parameters
s The signalto install handler for
Returns
zero onsuccess,nonzero on failure
int daemon_signal_next (void)
Return the next signal received. This function will not block. Instead it returns 0 if no signal is queued.
Returns
The next queued signal if one is queued, zero if none is queued, negative on failure.
Examples testd.c.
Releases
11 releases since Debian 3.1 (Sarge); the text changed 6 times.