From 9787c739b6ecefd3e8ed822435fa7262e9767811 Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Thu, 11 Dec 2014 19:27:52 -0300 Subject: no_signature_information used when leap signature header is none #177 --- service/pixelated/adapter/mail.py | 8 +++++++- service/test/unit/adapter/mail_test.py | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'service') diff --git a/service/pixelated/adapter/mail.py b/service/pixelated/adapter/mail.py index 25e86cf3..946b921d 100644 --- a/service/pixelated/adapter/mail.py +++ b/service/pixelated/adapter/mail.py @@ -254,6 +254,8 @@ class PixelatedMail(Mail): casing = {"imprints": [], "locks": []} if self.signed: casing["imprints"].append({"state": "valid", "seal": {"validity": "valid"}}) + elif self.signed is None: + casing["imprints"].append({"state": "no_signature_information"}) if self.encrypted: casing["locks"].append({"state": "valid"}) @@ -322,7 +324,11 @@ class PixelatedMail(Mail): @property def signed(self): - return self.hdoc.content["headers"].get("X-Leap-Signature", "").startswith("valid") + signature = self.hdoc.content["headers"].get("X-Leap-Signature", None) + if signature is None: + return None + else: + return signature.startswith("valid") @property def encrypted(self): diff --git a/service/test/unit/adapter/mail_test.py b/service/test/unit/adapter/mail_test.py index 332fad8a..10886a27 100644 --- a/service/test/unit/adapter/mail_test.py +++ b/service/test/unit/adapter/mail_test.py @@ -92,7 +92,7 @@ class TestPixelatedMail(unittest.TestCase): }, 'ident': 'chash', 'mailbox': 'inbox', - 'security_casing': {'imprints': [], 'locks': []}, + 'security_casing': {'imprints': [{'state': 'no_signature_information'}], 'locks': []}, 'status': ['recent'], 'tags': [], 'attachments': [], -- cgit v1.2.3