Philipp Hörist pushed to branch master at gajim / gajim
Commits:
9541b59b by Philipp Hörist at 2026-09-02T23:04:14+02:00
fix: OpenPGP: Query public keys only if encryption is active
- - - - -
2 changed files:
- gajim/common/modules/openpgp.py
- gajim/gtk/message_actions_box.py
Changes:
=====================================
gajim/common/modules/openpgp.py
=====================================
@@ -801,11 +801,9 @@ def _on_muc_added(self, event: MucAdded) -> None:
def _on_muc_event(
self, contact: GroupchatContact, _signal_name: str, *args: Any
) -> None:
-
- if not self._is_compatible_muc(contact.jid):
+ if contact.settings.get("encryption") != "OpenPGP":
return
-
- self._check_groupchat_members_keys(contact.jid)
+ self.request_groupchat_members_keys(contact.jid)
def _get_groupchat_members(self, remote_jid: JID) -> set[JID]:
affiliations = self._client.get_module("MUC").get_affiliations(
@@ -815,7 +813,13 @@ def _get_groupchat_members(self, remote_jid: JID) ->
set[JID]:
members.update(*affiliations.values())
return members
+ def request_groupchat_members_keys(self, remote_jid: JID) -> None:
+ self._check_groupchat_members_keys(remote_jid)
+
def _check_groupchat_members_keys(self, remote_jid: JID) -> None:
+ if not self._is_compatible_muc(remote_jid):
+ return
+
for jid in self._get_groupchat_members(remote_jid):
if not self._is_contact_in_roster(jid):
self._log.info("%s not in roster, query keylist...", jid)
=====================================
gajim/gtk/message_actions_box.py
=====================================
@@ -605,9 +605,16 @@ def _change_encryption(self, action: Gio.SimpleAction,
param: GLib.Variant) -> N
return
match new_state:
- case "" | "OMEMO" | "OpenPGP":
+ case "" | "OMEMO":
pass
+ case "OpenPGP":
+ if isinstance(self._contact, GroupchatContact):
+ assert self._client is not None
+
self._client.get_module("OpenPGP").request_groupchat_members_keys(
+ self._contact.jid
+ )
+
case _:
plugin = app.plugin_manager.encryption_plugins.get(new_state)
if plugin is None:
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/9541b59be362dc9e95beac817df953737b80250a
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/9541b59be362dc9e95beac817df953737b80250a
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]