summaryrefslogtreecommitdiffstats
path: root/dbus.h
diff options
context:
space:
mode:
Diffstat (limited to 'dbus.h')
-rw-r--r--dbus.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/dbus.h b/dbus.h
index fb51c8cc4..e69a6ae9b 100644
--- a/dbus.h
+++ b/dbus.h
@@ -24,6 +24,8 @@
#define CDBUS_ERROR_BADARG_S "Something wrong in arguments?"
#define CDBUS_ERROR_BADWIN CDBUS_ERROR_PREFIX ".bad_window"
#define CDBUS_ERROR_BADWIN_S "Requested window %#010lx not found."
+#define CDBUS_ERROR_BADTGT CDBUS_ERROR_PREFIX ".bad_target"
+#define CDBUS_ERROR_BADTGT_S "Target \"%s\" not found."
#define CDBUS_ERROR_FORBIDDEN CDBUS_ERROR_PREFIX ".forbidden"
#define CDBUS_ERROR_FORBIDDEN_S "Incorrect password, access denied."
@@ -76,6 +78,15 @@ static bool
cdbus_apdarg_bool(session_t *ps, DBusMessage *msg, const void *data);
static bool
+cdbus_apdarg_int32(session_t *ps, DBusMessage *msg, const void *data);
+
+static bool
+cdbus_apdarg_uint32(session_t *ps, DBusMessage *msg, const void *data);
+
+static bool
+cdbus_apdarg_double(session_t *ps, DBusMessage *msg, const void *data);
+
+static bool
cdbus_apdarg_wid(session_t *ps, DBusMessage *msg, const void *data);
static bool
@@ -146,6 +157,30 @@ cdbus_reply_bool(session_t *ps, DBusMessage *srcmsg, bool bval) {
}
/**
+ * Send a reply with an int32 argument.
+ */
+static inline bool
+cdbus_reply_int32(session_t *ps, DBusMessage *srcmsg, int32_t val) {
+ return cdbus_reply(ps, srcmsg, cdbus_apdarg_int32, &val);
+}
+
+/**
+ * Send a reply with an uint32 argument.
+ */
+static inline bool
+cdbus_reply_uint32(session_t *ps, DBusMessage *srcmsg, uint32_t val) {
+ return cdbus_reply(ps, srcmsg, cdbus_apdarg_uint32, &val);
+}
+
+/**
+ * Send a reply with a double argument.
+ */
+static inline bool
+cdbus_reply_double(session_t *ps, DBusMessage *srcmsg, double val) {
+ return cdbus_reply(ps, srcmsg, cdbus_apdarg_double, &val);
+}
+
+/**
* Send a reply with a wid argument.
*/
static inline bool