SD_BUS_CALL_METHOD
Section: sd_bus_call_method (3)
Updated:
Page Index
NAME
sd_bus_call_method, sd_bus_call_methodv, sd_bus_call_method_async, sd_bus_call_method_asyncv - Initialize a bus message object and invoke the corresponding D-Bus method call
SYNOPSIS
#include <systemd/sd-bus.h>
-
typedef int (*sd_bus_message_handler_t)(sd_bus_message *m, void *userdata, sd_bus_error *ret_error);
-
int sd_bus_call_method(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 *types, ...);
-
int sd_bus_call_methodv(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 *types, va_list ap);
-
int sd_bus_call_method_async(sd_bus *bus, sd_bus_slot **slot, const char *destination, const char *path, const char *interface, const char *member, sd_bus_message_handler_t callback, void *userdata, const char *types, ...);
-
int sd_bus_call_method_asyncv(sd_bus *bus, sd_bus_slot **slot, const char *destination, const char *path, const char *interface, const char *member, sd_bus_message_handler_t callback, void *userdata, const char *types, va_list ap);
DESCRIPTION
sd_bus_call_method()
is a convenience function for initializing a bus message object and calling the corresponding D-Bus method. It combines the
sd_bus_message_new_method_call(3),
sd_bus_message_append(3)
and
sd_bus_call(3)
functions into a single function call.
sd_bus_call_method_async()
is a convenience function for initializing a bus message object and calling the corresponding D-Bus method asynchronously. It combines the
sd_bus_message_new_method_call(3),
sd_bus_message_append(3)
and
sd_bus_call_async(3)
functions into a single function call.
RETURN VALUE
On success, these functions return a non-negative integer. On failure, they return a negative errno-style error code.
Errors
See the man pages of
sd_bus_message_new_method_call(3),
sd_bus_message_append(3),
sd_bus_call(3)
and
sd_bus_call_async(3)
for a list of possible errors.
NOTES
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_message_new_method_call(3),
sd_bus_message_append(3),
sd_bus_call(3),
sd_bus_set_property(3),
sd_bus_emit_signal(3)