summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWGH <wgh@torlan.ru>2021-03-21 20:44:02 +0300
committerCole Robinson <crobinso@redhat.com>2021-04-06 18:30:08 -0400
commitd9b5090e061e9fad9738359a8b1f86f16eac45cf (patch)
treeb824c40162121aa7a87d39e6f5bb8e223ce33ba5
parent5b93a43622d4d47aa8920233a18dda501fae7c54 (diff)
downloadvirt-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.py7
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")