From 2fb5bd9669424b2bb08da8ad1f45578194f17ba1 Mon Sep 17 00:00:00 2001 From: Li Changze Date: Tue, 3 Jun 2025 13:16:44 +0800 Subject: [PATCH] qdbus: add call GetConnectionCredentials interface [ChangeLog][QtDBus][QDBusConnectionInterface] Added method serviceCredentials(). See section: 'Method: org.freedesktop.DBus.GetConnectionCredentials' for more information. Change-Id: If37687a35278fde8b0afc33eb19f9fa6b8dbe200 Reviewed-by: Christian Ehrlicher Reviewed-by: Thiago Macieira (cherry picked from commit 5ee2737d916af7e444cae88209d9f0bd4d29e7ea) Reviewed-by: Qt Cherry-pick Bot --- src/dbus/qdbusconnectioninterface.cpp | 15 +++++++++++++++ src/dbus/qdbusconnectioninterface.h | 2 ++ 2 files changed, 17 insertions(+) diff --git a/src/dbus/qdbusconnectioninterface.cpp b/src/dbus/qdbusconnectioninterface.cpp index 0e886dcc04a..f7dbbb01563 100644 --- a/src/dbus/qdbusconnectioninterface.cpp +++ b/src/dbus/qdbusconnectioninterface.cpp @@ -206,6 +206,21 @@ QDBusReply QDBusConnectionInterface::serviceUid(const QString &serviceName QList() << serviceName); } +/*! + \since 6.10 + + Returns the connection credentials for the process currently holding + the bus service \a serviceName. + + See + section: 'Method: org.freedesktop.DBus.GetConnectionCredentials' for more information. +*/ +QDBusReply QDBusConnectionInterface::serviceCredentials(const QString &serviceName) const +{ + return internalConstCall(QDBus::AutoDetect, "GetConnectionCredentials"_L1, + QList() << serviceName); +} + /*! Requests that the bus start the service given by the name \a name. */ diff --git a/src/dbus/qdbusconnectioninterface.h b/src/dbus/qdbusconnectioninterface.h index e664e4e0e73..e728539a385 100644 --- a/src/dbus/qdbusconnectioninterface.h +++ b/src/dbus/qdbusconnectioninterface.h @@ -66,6 +66,8 @@ public Q_SLOTS: QDBusReply servicePid(const QString &serviceName) const; QDBusReply serviceUid(const QString &serviceName) const; + QDBusReply serviceCredentials(const QString &serviceName) const; + QDBusReply startService(const QString &name); Q_SIGNALS: