SYNOPSIS
#include <systemd/sd-event.h>
-
int sd_event_source_set_prepare(sd_event_source *source, sd_event_handler_t callback);
- typedef int (*sd_event_handler_t)(sd_event_source *s, void *userdata);
DESCRIPTION
sd_event_source_set_prepare()
Event source objects have no preparation callback associated when they are first created with calls such as sd_event_add_io(3), sd_event_add_time(3). Preparation callback functions are supported for all event source types with the exception of those created with sd_event_add_exit(3). Preparation callback functions are dispatched in the order indicated by the event source's priority field, as set with sd_event_source_set_priority(3). Preparation callbacks of disabled event sources (see sd_event_source_set_enabled(3)) are not invoked.
RETURN VALUE
On success, sd_event_source_set_prepare() returns a non-negative integer. On failure, it returns a negative errno-style error code.
ERRORS
Returned errors may indicate the following problems:
-EINVAL
- source is not a valid pointer to an sd_event_source object.
-ESTALE
- The event loop is already terminated.
-ENOMEM
- Not enough memory.
-ECHILD
- The event loop has been created in a different process.
-EDOM
- The specified event source has been created with sd_event_add_exit(3).
NOTES
These APIs are implemented as a shared library, which can be compiled and linked to with the libsystemd pkg-config(1) file.