From d7028c6a4be7caa743705e96bb96cbc7927a01ef Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Fri, 9 Jun 2017 15:58:56 +0100 Subject: [PATCH] bus/driver: Add basic container info to GetConnectionCredentials() Signed-off-by: Simon McVittie Bug: https://bugs.freedesktop.org/show_bug.cgi?id=101354 --- bus/driver.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/bus/driver.c b/bus/driver.c index ee90cf3e..5ecbc31c 100644 --- a/bus/driver.c +++ b/bus/driver.c @@ -1915,7 +1915,10 @@ bus_driver_handle_get_connection_credentials (DBusConnection *connection, DBusMessageIter array_iter; unsigned long ulong_uid, ulong_pid; char *s; + const char *name; + const char *path; const char *service; + const char *type; BusDriverFound found; _DBUS_ASSERT_ERROR_IS_CLEAR (error); @@ -2003,6 +2006,19 @@ bus_driver_handle_get_connection_credentials (DBusConnection *connection, dbus_free (s); } + if (found == BUS_DRIVER_FOUND_PEER && + bus_containers_connection_is_contained (conn, &path, &type, &name)) + { + if (!_dbus_asv_add_object_path (&array_iter, + DBUS_INTERFACE_CONTAINERS1 ".Instance", + path) || + !_dbus_asv_add_string (&array_iter, + DBUS_INTERFACE_CONTAINERS1 ".Type", type) || + !_dbus_asv_add_string (&array_iter, + DBUS_INTERFACE_CONTAINERS1 ".Name", name)) + goto oom; + } + if (!_dbus_asv_close (&reply_iter, &array_iter)) goto oom; -- 2.13.3