2 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4 <!-- SPDX-License-Identifier: LGPL-2.1+ -->
6 <refentry id=
"sd_bus_call_method"
7 xmlns:
xi=
"http://www.w3.org/2001/XInclude">
10 <title>sd_bus_call_method
</title>
11 <productname>systemd
</productname>
15 <refentrytitle>sd_bus_call_method
</refentrytitle>
16 <manvolnum>3</manvolnum>
20 <refname>sd_bus_call_method
</refname>
21 <refname>sd_bus_call_methodv
</refname>
22 <refname>sd_bus_call_method_async
</refname>
23 <refname>sd_bus_call_method_asyncv
</refname>
25 <refpurpose>Initialize a bus message object and invoke the corresponding D-Bus method call
31 <funcsynopsisinfo>#include
<systemd/sd-bus.h
></funcsynopsisinfo>
34 <funcdef>int
<function>sd_bus_call_method
</function></funcdef>
35 <paramdef>sd_bus *
<parameter>bus
</parameter></paramdef>
36 <paramdef>const char *
<parameter>destination
</parameter></paramdef>
37 <paramdef>const char *
<parameter>path
</parameter></paramdef>
38 <paramdef>const char *
<parameter>interface
</parameter></paramdef>
39 <paramdef>const char *
<parameter>member
</parameter></paramdef>
40 <paramdef>sd_bus_error *
<parameter>ret_error
</parameter></paramdef>
41 <paramdef>sd_bus_message **
<parameter>reply
</parameter></paramdef>
42 <paramdef>const char *
<parameter>types
</parameter></paramdef>
43 <paramdef>...
</paramdef>
47 <funcdef>int
<function>sd_bus_call_methodv
</function></funcdef>
48 <paramdef>sd_bus *
<parameter>bus
</parameter></paramdef>
49 <paramdef>const char *
<parameter>destination
</parameter></paramdef>
50 <paramdef>const char *
<parameter>path
</parameter></paramdef>
51 <paramdef>const char *
<parameter>interface
</parameter></paramdef>
52 <paramdef>const char *
<parameter>member
</parameter></paramdef>
53 <paramdef>sd_bus_error *
<parameter>ret_error
</parameter></paramdef>
54 <paramdef>sd_bus_message **
<parameter>reply
</parameter></paramdef>
55 <paramdef>const char *
<parameter>types
</parameter></paramdef>
56 <paramdef>va_list
<parameter>ap
</parameter></paramdef>
60 <funcdef>int
<function>sd_bus_call_method_async
</function></funcdef>
61 <paramdef>sd_bus *
<parameter>bus
</parameter></paramdef>
62 <paramdef>sd_bus_slot **
<parameter>slot
</parameter></paramdef>
63 <paramdef>const char *
<parameter>destination
</parameter></paramdef>
64 <paramdef>const char *
<parameter>path
</parameter></paramdef>
65 <paramdef>const char *
<parameter>interface
</parameter></paramdef>
66 <paramdef>const char *
<parameter>member
</parameter></paramdef>
67 <paramdef>sd_bus_message_handler_t
<parameter>callback
</parameter></paramdef>
68 <paramdef>void *
<parameter>userdata
</parameter></paramdef>
69 <paramdef>const char *
<parameter>types
</parameter></paramdef>
70 <paramdef>...
</paramdef>
74 <funcdef>int
<function>sd_bus_call_method_asyncv
</function></funcdef>
75 <paramdef>sd_bus *
<parameter>bus
</parameter></paramdef>
76 <paramdef>sd_bus_slot **
<parameter>slot
</parameter></paramdef>
77 <paramdef>const char *
<parameter>destination
</parameter></paramdef>
78 <paramdef>const char *
<parameter>path
</parameter></paramdef>
79 <paramdef>const char *
<parameter>interface
</parameter></paramdef>
80 <paramdef>const char *
<parameter>member
</parameter></paramdef>
81 <paramdef>sd_bus_message_handler_t
<parameter>callback
</parameter></paramdef>
82 <paramdef>void *
<parameter>userdata
</parameter></paramdef>
83 <paramdef>const char *
<parameter>types
</parameter></paramdef>
84 <paramdef>va_list
<parameter>ap
</parameter></paramdef>
90 <title>Description
</title>
92 <para><function>sd_bus_call_method()
</function> is a convenience function for initializing a
93 bus message object and calling the corresponding D-Bus method. It combines the
94 <citerefentry><refentrytitle>sd_bus_message_new_method_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
95 <citerefentry><refentrytitle>sd_bus_message_append
</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
96 <citerefentry><refentrytitle>sd_bus_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry>
97 functions into a single function call.
</para>
99 <para><function>sd_bus_call_method_async()
</function> is a convenience function for initializing
100 a bus message object and calling the corresponding D-Bus method asynchronously. It combines the
101 <citerefentry><refentrytitle>sd_bus_message_new_method_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
102 <citerefentry><refentrytitle>sd_bus_message_append
</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
103 <citerefentry><refentrytitle>sd_bus_call_async
</refentrytitle><manvolnum>3</manvolnum></citerefentry>
104 functions into a single function call.
</para>
108 <title>Return Value
</title>
110 <para>On success, these functions return a non-negative integer. On failure, they return a
111 negative errno-style error code.
</para>
113 <refsect2 id='errors'
>
114 <title>Errors
</title>
116 <para>See the man pages of
117 <citerefentry><refentrytitle>sd_bus_message_new_method_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
118 <citerefentry><refentrytitle>sd_bus_message_append
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
119 <citerefentry><refentrytitle>sd_bus_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
120 <citerefentry><refentrytitle>sd_bus_call_async
</refentrytitle><manvolnum>3</manvolnum></citerefentry>
121 for a list of possible errors.
</para>
125 <xi:include href=
"libsystemd-pkgconfig.xml" />
128 <title>See Also
</title>
131 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
132 <citerefentry><refentrytitle>sd-bus
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
133 <citerefentry><refentrytitle>sd_bus_message_new_method_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
134 <citerefentry><refentrytitle>sd_bus_message_append
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
135 <citerefentry><refentrytitle>sd_bus_call
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
136 <citerefentry><refentrytitle>sd_bus_set_property
</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
137 <citerefentry><refentrytitle>sd_bus_emit_signal
</refentrytitle><manvolnum>3</manvolnum></citerefentry>