Refactor multi-line datasets so it works with single and multiline (both KeyTable and SigningTable)

This commit is contained in:
Scott Kitterman
2019-10-22 23:33:31 -04:00
parent accabcf217
commit 5349d1b3ae
2 changed files with 32 additions and 20 deletions
+6 -7
View File
@@ -198,14 +198,13 @@ def read_keytable(tablelist, milterconfig):
import syslog
keytabledata = {}
for row in tablelist:
rowl = row.split(',')
for element in rowl:
rowl[rowl.index(element)] = element.strip().strip(',')
if len(rowl) != 3:
for element in row:
row[row.index(element)] = element.strip().strip(',')
if len(row) != 3:
raise dkim.ParameterError('Invalid KeyTable element (need three paramters per row): {0}'
.format(str(rowl)))
key = read_keyfile(rowl[2], milterconfig)
keytabledata.update({rowl[0]:[rowl[1], key]})
.format(str(row)))
key = read_keyfile(row[2], milterconfig)
keytabledata.update({row[0]:[row[1], key]})
return keytabledata
def get_keys(milterconfig):