sd_bus_set_property
systemd
sd_bus_set_property
3
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
#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.
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)
谢谢你的反馈!