Scroll to navigation

dsignal.h(3) libdaemon dsignal.h(3)

NAME

dsignal.h - Contains the API for serializing signals to a pipe for usage with select() or poll().

SYNOPSIS

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.

Author

Generated automatically by Doxygen for libdaemon from the source code.

Mon Dec 21 2020 Version 0.14