- Make domain checks case insensitive for determining if signing should be

done (LP: #1815311)
This commit is contained in:
Scott Kitterman
2019-02-11 14:55:35 -05:00
parent ea2b612e8d
commit b1abbf9d61
2 changed files with 8 additions and 6 deletions
+2
View File
@@ -1,4 +1,6 @@
1.0.1 UNRELEASED 1.0.1 UNRELEASED
- Make domain checks case insensitive for determining if signing should be
done (LP: #1815311)
- Add additional Sendmail configuration information to README from OpenDKIM - Add additional Sendmail configuration information to README from OpenDKIM
update based on input from Дилян Палаузов (LP: #1801619) update based on input from Дилян Палаузов (LP: #1801619)
- Add information on Ed25519 key creation to README (LP: #1815313) - Add information on Ed25519 key creation to README (LP: #1815313)
+6 -6
View File
@@ -131,7 +131,7 @@ class dkimMilter(Milter.Base):
if lname == 'from': if lname == 'from':
fname, self.author = parseaddr(val) fname, self.author = parseaddr(val)
try: try:
self.fdomain = self.author.split('@')[1] self.fdomain = self.author.split('@')[1].lower()
except IndexError as er: except IndexError as er:
self.fdomain = '' # self.author was not a proper email address self.fdomain = '' # self.author was not a proper email address
if (milterconfig.get('Syslog') and if (milterconfig.get('Syslog') and
@@ -228,7 +228,7 @@ class dkimMilter(Milter.Base):
'd={3})'.format(self.getsymval('i'), 'd={3})'.format(self.getsymval('i'),
d.signature_fields.get(b'a'), d.signature_fields.get(b'a'),
d.signature_fields.get(b's'), d.signature_fields.get(b's'),
d.domain)) d.domain.lower()))
if privateEd25519: if privateEd25519:
d = dkim.DKIM(txt) d = dkim.DKIM(txt)
h = d.sign(milterconfig.get('SelectorEd25519'), self.fdomain, h = d.sign(milterconfig.get('SelectorEd25519'), self.fdomain,
@@ -244,7 +244,7 @@ class dkimMilter(Milter.Base):
'd={3})'.format(self.getsymval('i'), 'd={3})'.format(self.getsymval('i'),
d.signature_fields.get(b'a'), d.signature_fields.get(b'a'),
d.signature_fields.get(b's'), d.signature_fields.get(b's'),
d.domain)) d.domain.lower()))
except dkim.DKIMException as x: except dkim.DKIMException as x:
if milterconfig.get('Syslog'): if milterconfig.get('Syslog'):
syslog.syslog('DKIM: {0}'.format(x)) syslog.syslog('DKIM: {0}'.format(x))
@@ -292,8 +292,8 @@ class dkimMilter(Milter.Base):
'd={3})'.format(self.getsymval('i'), 'd={3})'.format(self.getsymval('i'),
d.signature_fields.get(b'a'), d.signature_fields.get(b'a'),
d.signature_fields.get(b's'), d.signature_fields.get(b's'),
d.domain)) d.domain.lower()))
self.dkim_domain = d.domain self.dkim_domain = d.domain.lower()
else: else:
if milterconfig.get('DiagnosticDirectory'): if milterconfig.get('DiagnosticDirectory'):
fd, fname = tempfile.mkstemp(".dkim") fd, fname = tempfile.mkstemp(".dkim")
@@ -303,7 +303,7 @@ class dkimMilter(Milter.Base):
syslog.syslog('DKIM: Fail (saved as {0})' syslog.syslog('DKIM: Fail (saved as {0})'
.format(fname)) .format(fname))
else: else:
syslog.syslog('DKIM: Fail ({0})'.format(d.domain)) syslog.syslog('DKIM: Fail ({0})'.format(d.domain.lower()))
if res: if res:
result = 'pass' result = 'pass'
else: else: