From 1a6aa67ea31b4bedb2a59a84659f7e19b385ec12 Mon Sep 17 00:00:00 2001 From: Caio Carrara Date: Wed, 25 May 2016 16:11:34 -0300 Subject: [refactor] change the check to validate signature from Apple Mail It changes the way that incoming service checks if a additional verification is needed to validate signature. The way before was checking by the type of signature object and calling the verify signature method if the type is different from OpenPGPKey. However it could be more readable if we check the type of decrypted message. If it's a multipart/signed message and not a plain/text we need to verify the signature because keymanager couldn't do it during the decryption process. --- src/leap/mail/incoming/service.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/leap/mail/incoming/service.py b/src/leap/mail/incoming/service.py index bf850b5..58a19c8 100644 --- a/src/leap/mail/incoming/service.py +++ b/src/leap/mail/incoming/service.py @@ -530,11 +530,9 @@ class IncomingMail(Service): def verify_signature_after_decrypt_an_email(res): decrdata, signkey = res - if not isinstance(signkey, OpenPGPKey): - try: - return self._verify_signature_not_encrypted_msg(decrdata, senderAddress) - except: - pass + if decrdata.get_content_type() == MULTIPART_SIGNED: + res = self._verify_signature_not_encrypted_msg(decrdata, + senderAddress) return res d = self._keymanager.decrypt( -- cgit v1.2.3