diff --git a/dkim/__init__.py b/dkim/__init__.py index b4250d7..5df31df 100644 --- a/dkim/__init__.py +++ b/dkim/__init__.py @@ -430,8 +430,8 @@ def verify(message, logger=None, dnsfunc=dnstxt): return False # dnstxt wants Unicode - selector = sig[b's'].decode('latin-1') - domain = sig[b'd'].decode('latin-1') + selector = sig[b's'].decode('ascii') + domain = sig[b'd'].decode('ascii') name = "%s._domainkey.%s." % (selector, domain) s = dnsfunc(name).encode('utf-8') if not s: diff --git a/dkim/tests/test_dkim.py b/dkim/tests/test_dkim.py index a29da30..1a507ee 100644 --- a/dkim/tests/test_dkim.py +++ b/dkim/tests/test_dkim.py @@ -53,7 +53,7 @@ class TestSignAndVerify(unittest.TestCase): def dnsfunc(self, domain): self.assertEqual('test._domainkey.example.com.', domain) - return read_test_data("test.txt").decode('latin1') + return read_test_data("test.txt").decode('utf-8') def test_verifies(self): # A message verifies after being signed. diff --git a/dkimsign.py b/dkimsign.py index 5060240..c713e60 100644 --- a/dkimsign.py +++ b/dkimsign.py @@ -36,11 +36,11 @@ if sys.version_info[0] >= 3: sys.stdin = sys.stdin.detach() sys.stdout = sys.stdout.detach() -selector = sys.argv[1].encode('utf-8') -domain = sys.argv[2].encode('utf-8') +selector = sys.argv[1].encode('ascii') +domain = sys.argv[2].encode('ascii') privatekeyfile = sys.argv[3] if len(sys.argv) > 5: - identity = sys.argv[4].encode('utf-8') + identity = sys.argv[4].encode('ascii') else: identity = None