diff options
author | brian <brian@FreeBSD.org> | 2005-01-11 02:08:53 +0000 |
---|---|---|
committer | brian <brian@FreeBSD.org> | 2005-01-11 02:08:53 +0000 |
commit | 845566c7e871990df59a079ee30e775e68415e09 (patch) | |
tree | 64a1eddcd870b7d7ed65334a0b047078eeb399a8 | |
parent | db72d98ac137d32b12ac2d2064b0d5faec4567a3 (diff) | |
download | FreeBSD-src-845566c7e871990df59a079ee30e775e68415e09.zip FreeBSD-src-845566c7e871990df59a079ee30e775e68415e09.tar.gz |
Adjust the mail reject output so that it gives an abreviated reason for the
reject. For example:
Checking for rejected mail hosts:
48 getherbalnow.info (451... resolve)
46 absorb.com (451... resolve)
4 tgmart01.codns.com (553... exist)
3 kali.com.cn (451... resolve)
2 genie.com (451... resolve)
1 zv.qy (553... exist)
1 zd.hinet.hr (553... exist)
....
The bit in parenthesis is the reject code and the last word on the line -
enough to give the admin a better chance of seeing real problems (hopefully!).
While I'm here, remove the "<" at the start of rejects coming from "from"
addresses without a name@ part.
I had to rewrite the patch given by the submitter as this script has been
sed'ified (used to be perl) and I think the reject code is useful....
PR: 17377
Idea from: root at ns dot internet dot dk
MFC after: 7 days
-rwxr-xr-x | etc/periodic/daily/460.status-mail-rejects | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/etc/periodic/daily/460.status-mail-rejects b/etc/periodic/daily/460.status-mail-rejects index fa95d8c..f8122b9 100755 --- a/etc/periodic/daily/460.status-mail-rejects +++ b/etc/periodic/daily/460.status-mail-rejects @@ -51,7 +51,7 @@ case "$daily_status_mail_rejects_enable" in done cat /var/log/maillog } | - sed -n -E "s/^$start"'.*ruleset=check_[^ ]+,[ ]+arg1=(<[^@]+@)?([^>,]+).*reject=.*/\2/p' | + sed -n -E "s/^$start"'.*ruleset=check_[^ \t]+,[ \t]+arg1=<([^@]+@)?([^>,]+).*reject=([^ \t]*)[ \t].*[ \t]([a-zA-Z0-9_.]+)$/\2 (\3... \4)/p' | sort -f | uniq -ic | sort -fnr | tee /dev/stderr | wc -l) [ $rc -gt 0 ] && rc=1 fi;; |