chiark / gitweb /
timedatectl: introduce new command line client for timedated
[elogind.git] / src / shared / dbus-common.h
index a6703a78d06da2305830806de0f7237ba54cb72b..005a715d0aa6ae4dc59184d9a987c327b901eac4 100644 (file)
@@ -22,6 +22,7 @@
 ***/
 
 #include <dbus/dbus.h>
+#include <inttypes.h>
 
 #ifndef DBUS_ERROR_UNKNOWN_OBJECT
 #define DBUS_ERROR_UNKNOWN_OBJECT "org.freedesktop.DBus.Error.UnknownObject"
@@ -203,3 +204,19 @@ void bus_async_unregister_and_exit(DBusConnection *bus, const char *name);
 DBusHandlerResult bus_exit_idle_filter(DBusConnection *bus, DBusMessage *m, void *userdata);
 
 pid_t bus_get_unix_process_id(DBusConnection *connection, const char *name, DBusError *error);
+
+bool bus_error_is_no_service(const DBusError *error);
+int bus_method_call_with_reply(DBusConnection *bus,
+                               const char *destination,
+                               const char *path,
+                               const char *interface,
+                               const char *method,
+                               DBusMessage **return_reply,
+                               DBusError *return_error,
+                               int first_arg_type, ...);
+
+const char *bus_message_get_sender_with_fallback(DBusMessage *m);
+
+void bus_message_unrefp(DBusMessage **reply);
+
+#define _cleanup_dbus_message_unref_ __attribute__((cleanup(bus_message_unrefp)))