diff options
author | Caio Carrara <ccarrara@thoughtworks.com> | 2016-05-24 15:56:00 -0300 |
---|---|---|
committer | Caio Carrara <ccarrara@thoughtworks.com> | 2016-05-24 15:56:00 -0300 |
commit | 4c8cc737d205231c475000f2f7399262829630a3 (patch) | |
tree | 684301cf49466eaae8ad7ecbdfdf44c14a7a301a /mail/src/leap/mail/incoming/service.py | |
parent | 9d44862908f521850eaf420cfcdac733d030113d (diff) |
[tests] add test to validate signature from apple mail
This change adds test to validate signature of encrypted email created
by apple mail. It's important to note that apple mail has a specific way
to encrypt signed messages. First it sign the email and then encrypt the
previous signed message. It was also added a message file with the
expected data.
Diffstat (limited to 'mail/src/leap/mail/incoming/service.py')
-rw-r--r-- | mail/src/leap/mail/incoming/service.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/mail/src/leap/mail/incoming/service.py b/mail/src/leap/mail/incoming/service.py index f60921aa..bf850b57 100644 --- a/mail/src/leap/mail/incoming/service.py +++ b/mail/src/leap/mail/incoming/service.py @@ -458,10 +458,8 @@ class IncomingMail(Service): self.LEAP_SIGNATURE_HEADER, self.LEAP_SIGNATURE_INVALID) else: - decrmsg.add_header( - self.LEAP_SIGNATURE_HEADER, - self.LEAP_SIGNATURE_VALID, - pubkey=signkey.fingerprint) + self._add_verified_signature_header(decrmsg, + signkey.fingerprint) return decrmsg.as_string() if msg.get_content_type() == MULTIPART_ENCRYPTED: @@ -475,6 +473,12 @@ class IncomingMail(Service): d.addCallback(add_leap_header) return d + def _add_verified_signature_header(self, decrmsg, fingerprint): + decrmsg.add_header( + self.LEAP_SIGNATURE_HEADER, + self.LEAP_SIGNATURE_VALID, + pubkey=fingerprint) + def _add_decrypted_header(self, msg): msg.add_header(self.LEAP_ENCRYPTION_HEADER, self.LEAP_ENCRYPTION_DECRYPTED) |