diff --git a/src/libsystemd/sd-event/event-util.c b/src/libsystemd/sd-event/event-util.c index 4f3a2fec31..488a0230ea 100644 --- a/src/libsystemd/sd-event/event-util.c +++ b/src/libsystemd/sd-event/event-util.c @@ -87,3 +87,10 @@ int event_source_disable(sd_event_source *s) { return sd_event_source_set_enabled(s, SD_EVENT_OFF); } + +int event_source_is_enabled(sd_event_source *s) { + if (!s) + return false; + + return sd_event_source_get_enabled(s, NULL); +} diff --git a/src/libsystemd/sd-event/event-util.h b/src/libsystemd/sd-event/event-util.h index 7f9cced5a3..00180955f9 100644 --- a/src/libsystemd/sd-event/event-util.h +++ b/src/libsystemd/sd-event/event-util.h @@ -10,3 +10,4 @@ int event_reset_time(sd_event *e, sd_event_source **s, sd_event_time_handler_t callback, void *userdata, int64_t priority, const char *description, bool force_reset); int event_source_disable(sd_event_source *s); +int event_source_is_enabled(sd_event_source *s);