diff --git a/main.go b/main.go index aa927dd1984b741171e714471cf9f3f44723f855..c3ef978f290b1382b84d66545b75d66c3db6d986 100644 --- a/main.go +++ b/main.go @@ -216,6 +216,9 @@ func dumpMessages(parser *Parser) { fmt.Printf("Message: %s", m.ID) if m.List != "" { fmt.Printf(" (list=%s)", m.List) + if m.MailmanHeldReason != "" { + fmt.Printf(" - held: %s", m.MailmanHeldReason) + } } fmt.Printf("\n\n") diff --git a/parser.go b/parser.go index f798f9bdb99f93451f7a5c74d8f2501e016d4cfa..191d851925efd7707d9a2e2077c510d41db0c1a1 100644 --- a/parser.go +++ b/parser.go @@ -261,8 +261,8 @@ var matcherSpecs = []struct { {progDovecot, `^lmtp\(([^\)]+)\)<[0-9]+><([^>]+)>: sieve: msgid=([^:]*):(?: .*:)? stored mail into mailbox '([^']*)'`, doSieve}, - {progMailman, `^(\w+) post from (\\S+) held, message-id=([^:]+): (.*)`, doMailmanHeld}, - {progMailman, `^Message discarded, msgid: ([^'#]*)#012.*list: ([^,]*),#012`, doMailmanDiscarded}, + {progMailman, `^(\w+) post from (\S+) held, message-id=([^:]+): (.*)`, doMailmanHeld}, + {progMailman, `^Message discarded, msgid: +([^'#]+)'?#012.*list: ([^,]*),#012`, doMailmanDiscarded}, {progMailman, `^post to (.+) from ([^,]*).*, message-id=([^,]*), success`, doMailmanPost}, }