make 'init' more idempotent in case of errors
[lets-encrypt-tiny.git] / mailman-check
1 #!/bin/bash
2 set -e
3 ## Usage:
4 ##   ./mailman-check
5 ## Checks all the mailman lists for bad configuration, and prints further details if it finds one.
6
7 cd /var/lib/mailman/lists
8 for list in *; do
9     config_list  -i /dev/stdin "$list" <<EOF
10 if not ((mlist.dmarc_moderation_action in (1, 2) and mlist.dmarc_quarantine_moderation_action == 1) or mlist.from_is_list in (1, 2)):
11     print "List",mlist.real_name,"by",(', '.join(mlist.owner)),"is not configured to deal with DMARC."
12 if mlist.reply_goes_to_list != 0 and not mlist.first_strip_reply_to:
13     print "List",mlist.real_name,"by",(', '.join(mlist.owner)),"provides an inconsistent Reply-To treatment."
14 EOF
15 done