Moved reject tracker out of function

This commit is contained in:
myve 2025-02-27 20:03:27 +00:00
commit d1b726ab48

View file

@ -1,20 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# Notify if rejected emails were found # Notify if rejected emails were found
function monitor-rejects while true
{ do
while true bash -c 'tail -n +0 --pid=$$ -f /var/log/mail/maillog* | grep --line-buffered -F -v -f /var/log/mail/reject.log | { sed "/NOQUEUE: reject/q" && kill $$ ;}'
do reject="$(grep "NOQUEUE: reject" /var/log/mail/maillog* | grep -F -v -f /var/log/mail/reject.log)"
bash -c 'tail -n +0 --pid=$$ -f /var/log/mail/maillog* | grep --line-buffered -F -v -f /var/log/mail/reject.log | { sed "/NOQUEUE: reject/q" && kill $$ ;}' echo ${reject} >>/var/log/mail/reject.log
local reject="$(grep "NOQUEUE: reject" /var/log/mail/maillog* | grep -F -v -f /var/log/mail/reject.log)" cat <<- mail | sendmail reject@${MYVEMAIL_DOMAIN}
echo ${reject} >>/var/log/mail/reject.log From: reject@${MYVEMAIL_DOMAIN}
cat <<- mail | sendmail reject@${MYVEMAIL_DOMAIN} To: reject@${MYVEMAIL_DOMAIN}
From: reject@${MYVEMAIL_DOMAIN} Subject: Rejected email found
To: reject@${MYVEMAIL_DOMAIN}
Subject: Rejected email found
${reject} ${reject}
mail mail
done done &
}
monitor-rejects &