установка или запрос свойств службы D-Bus (set or query D-Bus service properties)
Имя (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.
Примечание (Note)
These APIs are implemented as a shared library, which can be
compiled and linked to with the libsystemd pkg-config
(1) file.
Смотри также (See also)
systemd(1), sd-bus(3), sd_bus_call_method(3)