From 3144ebcad37422dd85220915d37e7e9eea36564a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 25 Sep 2014 17:27:27 -0400 Subject: [PATCH] man: add sd_event_add_signal(3) --- Makefile-man.am | 7 ++ man/sd_event_add_signal.xml | 196 ++++++++++++++++++++++++++++++++++++ man/sd_event_add_time.xml | 24 +++-- 3 files changed, 221 insertions(+), 6 deletions(-) create mode 100644 man/sd_event_add_signal.xml diff --git a/Makefile-man.am b/Makefile-man.am index 199c731e7e8..85a3612f394 100644 --- a/Makefile-man.am +++ b/Makefile-man.am @@ -741,6 +741,7 @@ MANPAGES += \ man/sd_bus_open_user.3 \ man/sd_bus_path_encode.3 \ man/sd_bus_request_name.3 \ + man/sd_event_add_signal.3 \ man/sd_event_add_time.3 \ man/sd_event_new.3 \ man/systemd-bus-proxyd.8 \ @@ -802,6 +803,7 @@ MANPAGES_ALIAS += \ man/sd_bus_unref.3 \ man/sd_event_default.3 \ man/sd_event_ref.3 \ + man/sd_event_source_get_signal.3 \ man/sd_event_source_get_time.3 \ man/sd_event_source_get_time_accuracy.3 \ man/sd_event_source_get_time_clock.3 \ @@ -865,6 +867,7 @@ man/sd_bus_release_name.3: man/sd_bus_request_name.3 man/sd_bus_unref.3: man/sd_bus_new.3 man/sd_event_default.3: man/sd_event_new.3 man/sd_event_ref.3: man/sd_event_new.3 +man/sd_event_source_get_signal.3: man/sd_event_add_signal.3 man/sd_event_source_get_time.3: man/sd_event_add_time.3 man/sd_event_source_get_time_accuracy.3: man/sd_event_add_time.3 man/sd_event_source_get_time_clock.3: man/sd_event_add_time.3 @@ -1040,6 +1043,9 @@ man/sd_event_default.html: man/sd_event_new.html man/sd_event_ref.html: man/sd_event_new.html $(html-alias) +man/sd_event_source_get_signal.html: man/sd_event_add_signal.html + $(html-alias) + man/sd_event_source_get_time.html: man/sd_event_add_time.html $(html-alias) @@ -1542,6 +1548,7 @@ EXTRA_DIST += \ man/sd_bus_open_user.xml \ man/sd_bus_path_encode.xml \ man/sd_bus_request_name.xml \ + man/sd_event_add_signal.xml \ man/sd_event_add_time.xml \ man/sd_event_new.xml \ man/sd_get_seats.xml \ diff --git a/man/sd_event_add_signal.xml b/man/sd_event_add_signal.xml new file mode 100644 index 00000000000..2344fb3c022 --- /dev/null +++ b/man/sd_event_add_signal.xml @@ -0,0 +1,196 @@ + + + + + + + + + sd_event_add_signal + systemd + + + + More text + Zbigniew + Jędrzejewski-Szmek + zbyszek@in.waw.pl + + + + + + sd_event_add_signal + 3 + + + + sd_event_add_signal + sd_event_source_get_signal + + Add a signal event source to an event loop + + + + + #include <systemd/sd-bus.h> + + + int sd_event_add_signal + sd_event *event + sd_event_source **source + int signal + sd_event_signal_handler_t handler + void *userdata + + + + typedef int (*sd_event_signal_handler_t) + sd_event_source *s + const struct signalfd_siginfo *si + void *userdata + + + + int sd_event_source_get_signal + sd_event_source *source + + + + + + + Description + + sd_event_add_signal() adds a new signal + event source to an event loop object. The event loop is specified + in event, the event source is returned in + the source parameter. The + signal parameter specifies the signal to be handled + (see + signal7). + The handler must reference a function to + call when the signal is delivered or be NULL. + The handler function will be passed the + userdata pointer, which may be chosen + freely by the caller. The handler also receives a pointer to a + const struct signalfd_siginfo containing + the information about the received signal. See + signalfd2 + for futher information. + + Only a single handler may be installed for a specific + signal. The signal will be unblocked, and must be + blocked when the function is called. If the handler is not + specified (handler is + NULL), a default handler which causes the + program to exit will be used. By default, the handler is enabled + permanently (SD_EVENT_ON), but this may be + changed with + sd_event_source_set_enabled3. + If the handler function returns a negative error code, it will be + disabled after the invocation, even if + SD_EVENT_ON mode is set. + + + sd_event_source_get_signal() retrieves + the configured signal number of a signal event source created + previously with sd_event_add_signal(). It + takes the event source object as the source + parameter. + + + + + Return Value + + On success, these functions return 0 or a positive + integer. On failure, they return a negative errno-style error + code. + + + + Errors + + Returned errors may indicate the following problems: + + + + -ENOMEM + + Not enough memory to allocate an object. + + + + -EINVAL + + An invalid argument has been passed. + + + + + -EBUSY + + An handler is already installed for this + signal or the signal was not blocked previously. + + + + + -ESTALE + + The event loop is already terminated. + + + + + -ECHILD + + The event loop has been created in a different process. + + + + + + + + Notes + + sd_event_add_signal() and the other functions + described here are available as a shared library, which can be + compiled and linked to with the + libsystemd pkg-config1 + file. + + + + See Also + + + systemd1, + sd-event3, + sd_event_new3, + sd_event_add_time3, + sd_event_source_set_enabled3 + + + + diff --git a/man/sd_event_add_time.xml b/man/sd_event_add_time.xml index a3304f7985b..d3775e5d5f7 100644 --- a/man/sd_event_add_time.xml +++ b/man/sd_event_add_time.xml @@ -68,6 +68,13 @@ along with systemd; If not, see . void *userdata + + typedef int (*sd_event_time_handler_t) + sd_event_source *s + uint64_t usec + void *userdata + + int sd_event_source_get_time sd_event_source *source @@ -132,11 +139,15 @@ along with systemd; If not, see . actually have been called at a slightly later time, subject to the specified accuracy value, the kernel timer slack (see prctl2) - and additional scheduling latencies. By default, the timer will - elapse once (SD_EVENT_ONESHOT), but this may be changed with - sd_event_source_set_enabled3. If - the handler function returns a negative error code, it will be - disabled after the invocation, even if SD_EVENT_ON mode is set. + and additional scheduling latencies. + + By default, the timer will elapse once + (SD_EVENT_ONESHOT), but this may be changed + with + sd_event_source_set_enabled3. + If the handler function returns a negative error code, it will be + disabled after the invocation, even if + SD_EVENT_ON mode is set. sd_event_source_get_time() retrieves @@ -187,7 +198,7 @@ along with systemd; If not, see . -ENOMEM - Not enough memory to allocate object. + Not enough memory to allocate an object. @@ -237,6 +248,7 @@ along with systemd; If not, see . systemd1, sd-event3, sd_event_new3, + sd_event_add_signal3, clock_gettime2, sd_event_source_set_enabled3