^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: bad signature data$
^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: DKIM-Signature field added \(s=.+, d=.+\)$
^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: DKIM verification successful$
^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: failed to parse (A|a)uthentication-(R|r)esults: header field$
^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: key retrieval failed \(s=.+, d=.+\): '.+' (query timed out|record not found|reply was unexpected type [[:digit:]]+|unexpected reply class/type \(-1/-1\))$
^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: message has signatures from .+$
# Following rule isn't $-terminated to allow matching both normal lines as well as those including error messages
^(\w{3} [ :[:digit:]]{11}|[0-9T:.+-]{32}) [._[:alnum:]-]+ opendkim\[[[:digit:]]+\]: [[:xdigit:]]+: s=.+ d=.+ a=.+ SSL
