Commit Graph

112 Commits

Author SHA1 Message Date
Stuart D. Gathman 4f77e32ec7 Update Changelog, put back large message from field for extra headers
test case.  Keep simplified message also in case further debugging is needed.
2011-06-17 18:55:52 -04:00
Stuart D. Gathman 133a5663ac Fix bug#644046 2011-06-17 18:35:18 -04:00
Stuart D. Gathman 93c61d2737 Simplify extra header test. 2011-06-17 17:40:24 -04:00
Stuart D. Gathman 2458f3824c Really fix test case for bug#737311 2011-06-17 14:28:07 -04:00
Stuart D. Gathman a203b29874 A fix for bug #644046 2011-06-17 13:52:09 -04:00
Stuart D. Gathman 1fa37e02a8 Fix dkim.fold() 2011-06-17 12:57:50 -04:00
Scott Kitterman 8713e6e9f8 Move dkim/dns.py to dkim/dnsplug.py to stay clear of dnspython dns namespace. 2011-06-16 14:47:45 -05:00
Stuart D. Gathman 1f89083c1a Doc update 2011-06-15 10:30:15 -04:00
Stuart D. Gathman a673d2332a dd testcase for bug 587783 2011-06-15 10:27:13 -04:00
Stuart D. Gathman 2eeec91fc1 Fix except clauses for py3 2011-06-15 06:56:45 -04:00
Stuart D. Gathman 47fbf5a02b pydns driver did not join split TXT records. Try for Milter.dns which
follows CNAME (is this needed?)
2011-06-14 16:40:16 -04:00
Stuart D. Gathman 70c5b55dbf Put back InvalidTagValue trap 2011-06-14 15:51:19 -04:00
Stuart D. Gathman 6fb16453d9 Strip leading and trailing whitespace before parsing. 2011-06-14 15:47:04 -04:00
Stuart D. Gathman dac0f36522 Provide a class API so that selector, domain can be recovered on verify. 2011-06-14 15:16:33 -04:00
Stuart D. Gathman d2f6840748 Clients need to test for any DKIM exception. 2011-06-11 18:23:45 -04:00
William Grant e9d01800de Canonicalizationpolicy.from_c_value() now raise InvalidCanonicalizationPolicyErrors instead of logging and returning None. 2011-06-04 15:51:14 +10:00
William Grant f8e938c152 Use CanonicalizationPolicy in sign(). 2011-06-04 14:37:18 +10:00
William Grant 206c860890 Pull c= value parsing out into Canonicalizationpolicy.from_c_value. 2011-06-04 14:30:19 +10:00
William Grant 7b1a3f70dc Add CanonicalizationPolicy, which encapsulates the combined hybrid simple/relaxed schemes. 2011-06-04 14:05:54 +10:00
William Grant 472750c0db Signature algorithm names are now defined in dkim.crypto. 2011-06-03 22:34:23 +10:00
William Grant 5f949337d1 Handle Unicode in get_txt. 2011-06-03 22:24:21 +10:00
William Grant a82f3110ea Split out DNS utilities into their own module. 2011-06-03 22:07:42 +10:00
William Grant 28aaa6f2f2 dkim.canonicalization now has an algorithms dict mapping names to algorithms. Use it. 2011-06-03 21:52:33 +10:00
William Grant 589853aee5 Split out dkim.canonicalization, and test it. Note that test_wsp_strips_headers is correctly failing, as trailing whitespace is not stripped from header names. 2011-06-03 21:16:31 +10:00
William Grant f4875a8768 Don't crash when asked to verify a badly encoded domain or selector. 2011-06-02 23:07:01 +10:00
William Grant d9e3b49a8e Make encodings all ascii/utf-8 as appropriate. 2011-03-19 22:44:46 +11:00
William Grant 672c6084e3 python2.6 base64.b64encode doesn't like bytearrays... convert to bytes instead. 2011-03-19 21:24:48 +11:00
William Grant 44db746563 More bytestring conversions in __init__. pydns seems to like to deal with unicode, so convert on the way in and back. 2011-03-19 21:01:54 +11:00
William Grant 3cf0a5ce9f Merge pydns support from trunk. 2011-03-19 20:58:23 +11:00
William Grant 128288a20c Fall back to pydns if dnspython is unavailable. 2011-03-19 20:56:37 +11:00
William Grant 8cf859db4f bytesify __init__. Tests now parse if dns.resolver is removed. 2011-03-19 20:09:01 +11:00
William Grant f5db65966e Use new 2.6/3.x except syntax. 2011-03-19 18:36:19 +11:00
William Grant 46c57176a2 Use normal Python logging everywhere, not printing to debuglog. 2011-03-19 18:27:11 +11:00
William Grant 167b2986d7 validate_signature_field now raises a ValidationError if it finds an issue. 2011-03-19 18:04:41 +11:00
William Grant d5ffbac38a EMSA_PKCS1_v_1_5_encode now works out the hash ID itself. 2011-03-19 17:14:14 +11:00
William Grant 2ee087da01 Extract parse_pem_private_key, and test it and parse_public_key. 2011-03-19 16:23:48 +11:00
Martin Pool c646369d66 Update fix for bug 587783 verifying relaxed signatures 2011-03-15 16:30:16 +11:00
Scott Kitterman 00164b8b5c * Change py_modules to packages in setup.py so it will install correctly.
* Explicitly mark all files modified from the original upstream (licensing paranoia).
2011-03-15 00:10:03 -04:00
William Grant 440dd14de0 Correct crypto exception handling. 2011-03-12 17:19:59 +11:00
William Grant 7dec2e4697 Merge trunk. 2011-03-12 12:32:14 +11:00
William Grant c19043d70f Use a better, tested Tag=Value parser. 2011-03-12 12:28:39 +11:00
William Grant 142285bc03 More docstrings. 2011-03-12 12:09:43 +11:00
William Grant ed497a40d6 Add docstrings to the two crypto functions. 2011-03-12 12:05:15 +11:00
William Grant cbe755269c Restore erroneously removed license header. 2011-03-10 09:31:03 +11:00
William Grant bbe60e0646 int2str returns a string instead of a list, so the ''.join() is redundant. 2011-03-10 00:05:42 +11:00
William Grant 7526317dfe Unexport EMSA_PKCS1_v1_5_encode; it's only used by RSASSA_PKCS1_v1_5_*. 2011-03-10 00:03:26 +11:00
William Grant c82703cea9 Implement RSASSA-PKCS1-v1_5 in dkim.crypto, and use that in verify() and sign(). Move str2int/int2str into dkim.crypto. Verification no longer does a constant-time string compare; there is no private key involved on which a timing attack could be performed. 2011-03-10 00:03:15 +11:00
William Grant 5898094fe1 Factor out RSA into perform_rsa. 2011-03-09 23:37:59 +11:00
William Grant 6f715a1a01 Extract crypto stuff to dkim.crypto. 2011-03-09 23:27:04 +11:00
William Grant b6d3502f9e Split ASN.1 utilities out into their own file. 2011-03-09 23:23:01 +11:00