diff options
author | WGH <wgh@torlan.ru> | 2021-03-21 20:44:02 +0300 |
---|---|---|
committer | Cole Robinson <crobinso@redhat.com> | 2021-04-06 18:30:08 -0400 |
commit | d9b5090e061e9fad9738359a8b1f86f16eac45cf (patch) | |
tree | b824c40162121aa7a87d39e6f5bb8e223ce33ba5 | |
parent | 5b93a43622d4d47aa8920233a18dda501fae7c54 (diff) | |
download | virt-manager-d9b5090e061e9fad9738359a8b1f86f16eac45cf.tar.gz |
Fix forgetting password from keyring
First, Item.Delete never accepted any arguments, so this code likely
never worked.
Second, Item.Delete might return a Prompt object, which client
is supposed to call if keyring wants to confirm deletion.
-rw-r--r-- | virtManager/lib/keyring.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/virtManager/lib/keyring.py b/virtManager/lib/keyring.py index 203886dc..c0f50142 100644 --- a/virtManager/lib/keyring.py +++ b/virtManager/lib/keyring.py @@ -87,7 +87,12 @@ class vmmKeyring(vmmGObject): iface = Gio.DBusProxy.new_sync(self._dbus, 0, None, "org.freedesktop.secrets", path, "org.freedesktop.Secret.Item", None) - iface.Delete("(s)", "/") + prompt = iface.Delete() + if prompt != "/": + iface = Gio.DBusProxy.new_sync(self._dbus, 0, None, + "org.freedesktop.secrets", prompt, + "org.freedesktop.Secret.Prompt", None) + iface.Prompt("(s)", "") except Exception: log.exception("Failed to delete keyring secret") |