Provided by: libsystemd-dev_256.5-2ubuntu3.1_amd64 bug

NAME

       sd_bus_set_property, sd_bus_set_propertyv, sd_bus_get_property, sd_bus_get_property_trivial,
       sd_bus_get_property_string, sd_bus_get_property_strv - Set or query D-Bus service properties

SYNOPSIS

       #include <systemd/sd-bus.h>

       int sd_bus_set_property(sd_bus *bus, const char *destination, const char *path, const char *interface,
                               const char *member, sd_bus_error *ret_error, const char *type, ...);

       int sd_bus_set_propertyv(sd_bus *bus, const char *destination, const char *path, const char *interface,
                                const char *member, sd_bus_error *ret_error, const char *type, va_list ap);

       int sd_bus_get_property(sd_bus *bus, const char *destination, const char *path, const char *interface,
                               const char *member, sd_bus_error *ret_error, sd_bus_message **reply,
                               const char *type);

       int sd_bus_get_property_trivial(sd_bus *bus, const char *destination, const char *path,
                                       const char *interface, const char *member, sd_bus_error *ret_error,
                                       char type, void *ret_ptr);

       int sd_bus_get_property_string(sd_bus *bus, const char *destination, const char *path,
                                      const char *interface, const char *member, sd_bus_error *ret_error,
                                      char **ret);

       int sd_bus_get_property_strv(sd_bus *bus, const char *destination, const char *path,
                                    const char *interface, const char *member, sd_bus_error *ret_error,
                                    char ***ret);

DESCRIPTION

       These functions set or query D-Bus properties. D-Bus properties are service fields exposed via the
       org.freedesktop.DBus.Properties interface. Under the hood, these functions call methods of the
       org.freedesktop.DBus.Properties interface and as a result their semantics are similar to
       sd_bus_call_method(3).

       sd_bus_set_property() sets a D-Bus property. If setting the property fails or an internal error occurs,
       an error is returned and an extended description of the error is optionally stored in ret_error if it is
       not NULL.  type and the arguments that follow it describe the new value of the property and must follow
       the format described in sd_bus_message_append(3).

       sd_bus_set_propertyv() is equivalent to sd_bus_set_property(), except that it is called with a "va_list"
       instead of a variable number of arguments.

       sd_bus_get_property() queries a D-Bus property. If retrieving the property fails or an internal error
       occurs, an error is returned and an extended description of the error is optionally stored in ret_error
       if it is not NULL. On success, the property is stored in reply.  type describes the property type and
       must follow the format described in sd_bus_message_append(3).

       sd_bus_get_property_trivial(), sd_bus_get_property_string() and sd_bus_get_property_strv() are shorthands
       for sd_bus_get_property() that are used to query basic, string and string vector properties respectively.
       The caller is responsible for freeing the string and string vector results stored in ret by
       sd_bus_get_property_string() and sd_bus_get_property_strv().

RETURN VALUE

       On success, these functions return a non-negative integer. On failure, they return a negative errno-style
       error code.

   Errors
       See the sd_bus_call_method(3) man page for a list of possible errors.

NOTES

       Functions described here are available as a shared library, which can be compiled against and linked to
       with the libsystemd pkg-config(1) file.

       The code described here uses getenv(3), which is declared to be not multi-thread-safe. This means that
       the code calling the functions described here must not call setenv(3) from a parallel thread. It is
       recommended to only do calls to setenv() from an early phase of the program when no other threads have
       been started.

HISTORY

       sd_bus_set_property(), sd_bus_set_propertyv(), sd_bus_get_property(), sd_bus_get_property_trivial(),
       sd_bus_get_property_string(), and sd_bus_get_property_strv() were added in version 246.

SEE ALSO

       systemd(1), sd-bus(3), sd_bus_call_method(3)