跳转到主要内容

sd_event_source_set_description

systemd

sd_event_source_set_description

3

sd_event_source_set_description

sd_event_source_get_description

Set or retrieve descriptive names of event sources

#include <systemd/sd-event.h>

int

sd_event_source_set_description

sd_event_source *

source

const char *

description

int

sd_event_source_get_description

sd_event_source *

source

const char **

ret

Description

sd_event_source_set_description() may be used to set an arbitrary descriptive name for the event source object specified as source. This name will be used in debugging messages generated by sd-event(3) for this event source, and may be queried using sd_event_source_get_description() for debugging purposes. The description parameter shall point to a NUL-terminated string or be NULL. In the latter case, the descriptive name will be unset. The string is copied internally, hence the description argument is not referenced after the function returns.

sd_event_source_get_description() may be used to query the current descriptive name assigned to the event source object source. It returns a pointer to the current name in ret, stored in memory internal to the event source. The memory is invalidated when the event source is destroyed or the descriptive name is changed.

Event source objects generally have no description set when they are created, except for UNIX signal event sources created with sd_event_add_signal(3), whose descriptive name is initialized to the signal's C constant name (e.g. SIGINT or SIGTERM).

Return Value

On success, sd_event_source_set_description() and sd_event_source_get_description() return a non-negative integer. On failure, they return 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 or the description argument for sd_event_source_get_description() is NULL.

-ENOMEM
Not enough memory to copy the name.

-ECHILD
The event loop has been created in a different process, library or module instance.

-ENXIO
No name was set for the event source.

History

sd_event_source_set_description() and sd_event_source_get_description() were added in version 229.

See Also

sd-event(3), sd_event_add_io(3), sd_event_add_time(3), sd_event_add_signal(3), sd_event_add_child(3), sd_event_add_inotify(3), sd_event_add_defer(3), sd_event_source_set_userdata(3)