summaryrefslogtreecommitdiff
path: root/src/dbus-common.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2011-07-07 03:29:56 +0200
committerLennart Poettering <lennart@poettering.net>2011-07-07 03:29:56 +0200
commitabca4822916b85ae5b0b2bef5d458ea2225d25ab (patch)
tree9ae5467d12cfd4b518e8bd428666fb63573a62f5 /src/dbus-common.c
parent1968a360405e302d4d2c2abc03a3314f81375156 (diff)
loginctl: add basic implementation of loginctl for introspecting controlling sessions/users/seats
Diffstat (limited to 'src/dbus-common.c')
-rw-r--r--src/dbus-common.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/dbus-common.c b/src/dbus-common.c
index 5bfaf361fb..4b9b457fc3 100644
--- a/src/dbus-common.c
+++ b/src/dbus-common.c
@@ -821,3 +821,19 @@ int bus_append_strv_iter(DBusMessageIter *iter, char **l) {
return 0;
}
+
+int bus_iter_get_basic_and_next(DBusMessageIter *iter, int type, void *data, bool next) {
+
+ assert(iter);
+ assert(data);
+
+ if (dbus_message_iter_get_arg_type(iter) != type)
+ return -EIO;
+
+ dbus_message_iter_get_basic(iter, data);
+
+ if (!dbus_message_iter_next(iter) != !next)
+ return -EIO;
+
+ return 0;
+}