summaryrefslogtreecommitdiff
path: root/service
diff options
context:
space:
mode:
authorVictor Shyba <victor.shyba@gmail.com>2014-12-11 19:27:52 -0300
committerVictor Shyba <victor.shyba@gmail.com>2014-12-11 19:27:52 -0300
commit9787c739b6ecefd3e8ed822435fa7262e9767811 (patch)
tree362f8a6b1043dc40f3ab119cebda75c0341b9014 /service
parent8a25a05cf04078a3a7e8a380eea17f94cc7cec93 (diff)
no_signature_information used when leap signature header is none #177
Diffstat (limited to 'service')
-rw-r--r--service/pixelated/adapter/mail.py8
-rw-r--r--service/test/unit/adapter/mail_test.py2
2 files changed, 8 insertions, 2 deletions
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': [],