[neon/backports-noble/libsignon-glib-noble/Neon/unstable] debian: import dbus interfaces (#975793)
Pino Toscano
null at kde.org
Tue Sep 3 02:46:17 BST 2024
Git commit 5a12d26564d2fb4a4809bdaaa270a5899a34ed3d by Pino Toscano.
Committed on 31/12/2020 at 12:49.
Pushed by carlosdem into branch 'Neon/unstable'.
import dbus interfaces (#975793)
M +3 -0 debian/changelog
M +1 -0 debian/patches/series
A +409 -0 debian/patches/signon-dbus-specification-interfaces.diff
https://invent.kde.org/neon/backports-noble/libsignon-glib-noble/-/commit/5a12d26564d2fb4a4809bdaaa270a5899a34ed3d
diff --git a/debian/changelog b/debian/changelog
index 7b5be08..c175aed 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -12,6 +12,9 @@ libsignon-glib (1.15-0r1) UNRELEASED; urgency=medium
* Update the patches:
- remove-pluginlibdir.patch: drop, fixed upstream
- disable-deprecation-error.patch: update
+ * Statically import the D-Bus interfaces for now, as they are fetched using
+ a Git submodule, which is not exported in tarballs created from GitLab;
+ patch signon-dbus-specification-interfaces.diff. (Closes: #975793)
-- Debian/Kubuntu Qt/KDE Maintainers <debian-qt-kde at lists.debian.org> Thu, 31 Dec 2020 12:54:04 +0100
diff --git a/debian/patches/series b/debian/patches/series
index 52801d6..9a5c4b4 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
disable-deprecation-error.patch
+signon-dbus-specification-interfaces.diff
diff --git a/debian/patches/signon-dbus-specification-interfaces.diff b/debian/patches/signon-dbus-specification-interfaces.diff
new file mode 100644
index 0000000..b59abab
--- /dev/null
+++ b/debian/patches/signon-dbus-specification-interfaces.diff
@@ -0,0 +1,409 @@
+Author: Pino Toscano
+Description: Import D-Bus interfaces from signon-dbus-specification repository
+ libsignon-glib uses a git submodule for the D-Bus interfaces XMLs; has the
+ drawback of not being exported when requesting the tarball of a tag from
+ GitLab.
+ .
+ As workaround, import the files statically for now.
+Forwarded: no
+Last-Update: 2020-12-31
+
+--- /dev/null
++++ b/libsignon-glib/interfaces/com.google.code.AccountsSSO.SingleSignOn.AuthService.xml
+@@ -0,0 +1,146 @@
++<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
++<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
++
++ <!--
++ com.google.code.AccountsSSO.SingleSignOn.AuthService:
++ @short_description: Manages Signon identities.
++
++ The signond D-Bus APIs are unstable, subject to change and should not be
++ used by client applications, which should use libsignon-glib or
++ libsignon-qt instead.
++
++ Query information on available authentication methods and mechanisms, as
++ well as create identities and authentication sessions.
++ -->
++ <interface name="com.google.code.AccountsSSO.SingleSignOn.AuthService">
++ <!--
++ registerNewIdentity:
++ @short_description: Create a new Identity.
++ @applicationContext: the application security context
++ @objectPath: the D-Bus object path of the new Identity
++
++ Create a new (empty) Identity in the Signon database.
++ -->
++ <method name="registerNewIdentity">
++ <arg name="applicationContext" type="s" direction="in"/>
++ <arg name="objectPath" type="o" direction="out"/>
++ </method>
++ <!--
++ getIdentity:
++ @short_description: Get an Identity from the Signon database.
++ @id: the ID of the Identity in the Signon database
++ @applicationContext: the application security context
++ @objectPath: the D-Bus object path for the Identity
++ @identityData: the information associated with the Identity
++
++ Get an Identity from the Signon database, creating it if it does not
++ exist.
++ -->
++ <method name="getIdentity">
++ <arg name="id" type="u" direction="in"/>
++ <arg name="applicationContext" type="s" direction="in"/>
++ <arg name="objectPath" type="o" direction="out"/>
++ <arg name="identityData" type="a{sv}" direction="out"/>
++ </method>
++ <!--
++ getAuthSessionObjectPath:
++ @short_description: Get a D-Bus object path for an AuthSession.
++ @path: the D-Bus object path
++ @id: ID to use for the new AuthSession
++ @applicationContext: the application security context
++ @type: the authentication method to use for the new AuthSession
++
++ Return a D-Bus object path for a newly-created AuthSession.
++ -->
++ <method name="getAuthSessionObjectPath">
++ <arg name="path" type="o" direction="out"/>
++ <arg name="id" type="u" direction="in"/>
++ <arg name="applicationContext" type="s" direction="in"/>
++ <arg name="type" type="s" direction="in"/>
++ </method>
++ <!--
++ queryMethods:
++ @short_description: List the available authentication methods.
++ @methods: an array of the available authentication methods
++
++ Query the list of all available authentication methods.
++ -->
++ <method name="queryMethods">
++ <arg name="methods" type="as" direction="out"/>
++ <!--
++ queryMechanisms:
++ @short_description: List the available authentication mechanisms.
++ @mechanisms: an array of the available authentication mechanisms
++ @method: the authentication method for which to query the available mechanisms
++
++ Query the list of available authentication mechanisms for a given
++ authentication method.
++ -->
++ </method>
++ <method name="queryMechanisms">
++ <arg name="mechanisms" type="as" direction="out"/>
++ <arg name="method" type="s" direction="in"/>
++ </method>
++ <!--
++ queryIdentities:
++ @short_description: Request an array of stored identities.
++ @filter: the filter to apply to the returned identities
++ @applicationContext: the application security context
++ @identites: the list of stored identities
++
++ Request an array of identities which are stored in the Signon database.
++ -->
++ <method name="queryIdentities">
++ <arg name="filter" type="a{sv}" direction="in"/>
++ <arg name="applicationContext" type="s" direction="in"/>
++ <arg name="identities" type="aa{sv}" direction="out"/>
++ <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="QVariantMap"/>
++ </method>
++ <!--
++ clear:
++ @short_description: Remove all identities from the Signon database.
++ @success: whether the clear succeeded
++
++ Clear the Signon database by removing all stored identities.
++ -->
++ <method name="clear">
++ <arg name="success" type="b" direction="out"/>
++ </method>
++ <!--
++ backupStarts:
++ @short_description: TODO
++
++ TODO
++ -->
++ <method name="backupStarts">
++ <arg type="y" direction="out"/>
++ </method>
++ <!--
++ backupFinished:
++ @short_description: TODO
++
++ TODO
++ -->
++ <method name="backupFinished">
++ <arg type="y" direction="out"/>
++ </method>
++ <!--
++ restoreStarts:
++ @short_description: TODO
++
++ TODO
++ -->
++ <method name="restoreStarts">
++ <arg type="y" direction="out"/>
++ </method>
++ <!--
++ restoreFinished:
++ @short_description: TODO
++
++ TODO
++ -->
++ <method name="restoreFinished">
++ <arg type="y" direction="out"/>
++ </method>
++ </interface>
++</node>
+--- /dev/null
++++ b/libsignon-glib/interfaces/com.google.code.AccountsSSO.SingleSignOn.AuthSession.xml
+@@ -0,0 +1,101 @@
++<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
++<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
++
++ <!--
++ com.google.code.AccountsSSO.SingleSignOn.AuthSession:
++ @short_description: An authentication session for an Identity.
++
++ The signond D-Bus APIs are unstable, subject to change and should not be
++ used by client applications, which should use libsignon-glib or
++ libsignon-qt instead.
++
++ Handle the client authentication process.
++ -->
++ <interface name="com.google.code.AccountsSSO.SingleSignOn.AuthSession">
++ <!--
++ stateChanged:
++ @short_description: Emitted when the authentication state changes.
++ @state: the current state of the AuthSession
++ @message: a message associated with the state change
++
++ Emitted when the current authentication state changed, such as when the
++ Ideneity was signed out.
++ -->
++ <signal name="stateChanged">
++ <arg name="state" type="i" direction="out"/>
++ <arg name="message" type="s" direction="out"/>
++ </signal>
++ <!--
++ unregistered:
++ @short_description: Emitted when the AuthSession is removed.
++
++ Emitted when the AuthSession is removed or destroyed, such as when using
++ objectUnref.
++ -->
++ <signal name="unregistered">
++ </signal>
++ <!--
++ queryAvailableMechanisms:
++ @short_description: List the available authentication mechanisms for this
++ AuthSession
++ @mechanisms: the available authentication mechanisms
++ @wantedMechanisms: the desired authentication mechanisms
++
++ Query the available authentication mechanisms for this AuthSession. The
++ result will be the intersection of the desired authentication mechanisms
++ and those that are supported by the AuthSession.
++ -->
++ <method name="queryAvailableMechanisms">
++ <arg name="mechanisms" type="as" direction="out"/>
++ <arg name="wantedMechanisms" type="as" direction="in"/>
++ </method>
++ <!--
++ process:
++ @short_description: Perform one step of the authentication process.
++ @sessionDataVa: the returned session data parameters
++ @sessionDataVa: additional session data parameters
++ @mechanism: the authentication mechanism to use
++
++ Using the available parameters in the Identity or @sessionDataVa, start
++ the authentication process by passing the parameters to the
++ authentication plugin.
++ -->
++ <method name="process">
++ <arg name="sessionData" type="a{sv}" direction="out"/>
++ <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="QVariantMap"/>
++ <arg name="sessionDataVa" type="a{sv}" direction="in"/>
++ <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="QVariantMap"/>
++ <arg name="mechanism" type="s" direction="in"/>
++ </method>
++ <!--
++ cancel:
++ @short_description: Cancel the authentication session.
++
++ Cancel the current authentication session
++ -->
++ <method name="cancel">
++ <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
++ </method>
++ <!--
++ setId:
++ @short_description: Set the ID of the AuthSession.
++ @id: the ID to set
++
++ Set the ID of the AuthSession.
++ -->
++ <method name="setId">
++ <arg name="id" type="u" direction="in"/>
++ <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
++ </method>
++ <!--
++ objectUnref:
++ @short_description: Remove the AuthSession.
++
++ Forcibly remove the AuthSession.
++ -->
++ <method name="objectUnref">
++ <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
++ <annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
++ </method>
++ </interface>
++</node>
+--- /dev/null
++++ b/libsignon-glib/interfaces/com.google.code.AccountsSSO.SingleSignOn.Identity.xml
+@@ -0,0 +1,143 @@
++<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
++<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
++
++ <!--
++ com.google.code.AccountsSSO.SingleSignOn.Identity:
++ @short_description: Representation of a single identity.
++
++ The signond D-Bus APIs are unstable, subject to change and should not be
++ used by client applications, which should use libsignon-glib or
++ libsignon-qt instead.
++
++ A single credential stored in the Signon database.
++ -->
++ <interface name="com.google.code.AccountsSSO.SingleSignOn.Identity">
++ <!--
++ unregistered:
++ @short_description: Emitted when the identity is removed
++
++ Emitted when the Identity is removed from the Signon database.
++ -->
++ <signal name="unregistered">
++ </signal>
++ <!--
++ infoUpdated:
++ @short_description: Emitted when the Identity information has been
++ updated.
++ @type: the type of update that occurred
++
++ Emitted when credentials information has been updated is the Signon
++ database, such as when the credentials were updated or removed, or when
++ the identity was signed out.
++ -->
++ <signal name="infoUpdated">
++ <arg name="type" type="i" direction="out"/>
++ </signal>
++ <!--
++ requestCredentialsUpdate:
++ @short_description: Request that the user enters a new (updated) secret.
++ @id: the ID of the Identity
++ @message: message to be shown to the user
++
++ Request that the user enters a new secret, which is then stored in the
++ Signon database.
++ -->
++ <method name="requestCredentialsUpdate">
++ <arg name="id" type="u" direction="out"/>
++ <arg name="message" type="s" direction="in"/>
++ </method>
++ <!--
++ getInfo:
++ @short_description: Fetch additional information about the Identity.
++ @info: a dictionary of additional information
++
++ Fetch a large amount of additional information on the Identity, such as
++ the username, type, method and so on.
++ -->
++ <method name="getInfo">
++ <arg name="info" type="a{sv}" direction="out"/>
++ </method>
++ <!--
++ verifyUser:
++ @short_description: Verify the secret against a user-supplied secret.
++ @valid: whether the supplied secret is valid
++ @params: parameters to pass to the authentication plugin
++
++ Request that the user enters a secret, and verify that against the secret
++ stored in the Signon database.
++ -->
++ <method name="verifyUser">
++ <arg name="valid" type="b" direction="out"/>
++ <arg name="params" type="a{sv}" direction="in"/>
++ <annotation name="com.trolltech.QtDBus.QtTypeName.In4" value="QVariantMap"/>
++ </method>
++ <!--
++ verifySecret:
++ @short_description: Verify that the secret is valid.
++ @valid: whether the secret is valid
++ @secret: the secret to verify
++
++ Verifies that the supplied secret is valid by comparing it to the secret
++ stored in the Signon database.
++ -->
++ <method name="verifySecret">
++ <arg name="valid" type="b" direction="out"/>
++ <arg name="secret" type="s" direction="in"/>
++ </method>
++ <!--
++ remove:
++ @short_description: Remove the Identity.
++
++ Remove the identity from the Signon database.
++ -->
++ <method name="remove">
++ </method>
++ <!--
++ signOut:
++ @short_description: Sign out the identity.
++
++ Close all authentication sessions for the identity.
++ -->
++ <method name="signOut">
++ <arg type="b" direction="out"/>
++ </method>
++ <!--
++ store:
++ @short_description: Store credentials in the identity.
++ @id: a numeric ID for the identity in the database
++ @info: information to store in the Identity
++
++ Store the given credentials information in the identity, returning a
++ numeric ID for the identity in the Signon database.
++ -->
++ <method name="store">
++ <arg name="id" type="u" direction="out"/>
++ <arg name="info" type="a{sv}" direction="in"/>
++ <annotation name="com.trolltech.QtDBus.QtTypeName.In4" value="QVariantMap"/>
++ </method>
++ <!--
++ addReference:
++ @short_description: Add a reference to the Identity.
++ @id: the ID of the reference in the database
++ @reference: a named reference to add
++
++ Add a named reference to the Identity.
++ -->
++ <method name="addReference">
++ <arg name="id" type="i" direction="out"/>
++ <arg name="reference" type="s" direction="in"/>
++ </method>
++ <!--
++ removeReference:
++ @short_description: Remove a reference from the Identity.
++ @id: the ID of the reference in the database
++ @reference: a named reference to removed
++
++ Remove a named reference from the Identity.
++ -->
++ <method name="removeReference">
++ <arg name="id" type="i" direction="out"/>
++ <arg name="reference" type="s" direction="in"/>
++ </method>
++ </interface>
++</node>
More information about the Neon-commits
mailing list