Strip leading and trailing whitespace before parsing.

This commit is contained in:
Stuart D. Gathman
2011-06-14 15:47:04 -04:00
parent 52454945cc
commit 6fb16453d9
4 changed files with 9 additions and 7 deletions
+3 -3
View File
@@ -296,10 +296,10 @@ class DKIM(object):
return False
# Currently, we only validate the first DKIM-Signature line found.
try:
#try:
sig = parse_tag_value(sigheaders[0][1])
except InvalidTagValueList,e:
raise MessageFormatError(e)
#except InvalidTagValueList,e:
# raise MessageFormatError(e)
sig = parse_tag_value(sigheaders[0][1])
logger = self.logger
+1 -1
View File
@@ -55,7 +55,7 @@ def parse_tag_value(tag_list):
@param tag_list: A string containing a DKIM Tag=Value list.
"""
tags = {}
tag_specs = tag_list.split(b';')
tag_specs = tag_list.strip().split(b';')
# Trailing semicolons are valid.
if not tag_specs[-1]:
tag_specs.pop()
+2 -1
View File
@@ -32,7 +32,8 @@ if sys.version_info[0] >= 3:
sys.stdin = sys.stdin.detach()
message = sys.stdin.read()
if not dkim.verify(message):
d = dkim.DKIM(message)
if not d.verify():
print("signature verification failed")
sys.exit(1)
print("signature ok")
+2 -1
View File
@@ -13,7 +13,8 @@ class ParseTestCase(unittest.TestCase):
3KzW0yB9JHwiDCw1EioVkv+OMHhAYzoIypA0bQyi2bc=;
'''
sig = parse_tag_value(hval)
print sig
self.assertEquals(sig[b't'],'1308078492')
self.assertEquals(len(sig),11)
def suite():
s = unittest.makeSuite(ParseTestCase,'test')