do not list all keys when we want to know if we have a key. Fixes #8477
This commit is contained in:
parent
d9efb31b2e
commit
458d1083bc
|
@ -684,8 +684,10 @@ class CommonConnection:
|
|||
else:
|
||||
self.gpg.passphrase = passphrase
|
||||
|
||||
def ask_gpg_keys(self):
|
||||
def ask_gpg_keys(self, keyID=None):
|
||||
if self.gpg:
|
||||
if keyID:
|
||||
return self.gpg.get_key(keyID)
|
||||
return self.gpg.get_keys()
|
||||
return None
|
||||
|
||||
|
|
|
@ -113,6 +113,9 @@ if HAVE_GPG:
|
|||
|
||||
return ''
|
||||
|
||||
def get_key(self, keyID):
|
||||
return super(GnuPG, self).list_keys(keys=[keyID])
|
||||
|
||||
def get_keys(self, secret=False):
|
||||
keys = {}
|
||||
result = super(GnuPG, self).list_keys(secret=secret)
|
||||
|
|
|
@ -1285,9 +1285,9 @@ def prepare_and_validate_gpg_keyID(account, jid, keyID):
|
|||
# An unsigned presence, just use the assigned key
|
||||
keyID = attached_keys[attached_keys.index(jid) + 1]
|
||||
elif keyID:
|
||||
public_keys = gajim.connections[account].ask_gpg_keys()
|
||||
full_key = gajim.connections[account].ask_gpg_keys(keyID=keyID)
|
||||
# Assign the corresponding key, if we have it in our keyring
|
||||
if keyID in public_keys:
|
||||
if full_key:
|
||||
for u in gajim.contacts.get_contacts(account, jid):
|
||||
u.keyID = keyID
|
||||
keys_str = gajim.config.get_per('accounts', account,
|
||||
|
|
Loading…
Reference in New Issue