From 62de1738a47a94b77d2c2bec5cb857d7a5a8d8d0 Mon Sep 17 00:00:00 2001 From: wollman Date: Wed, 8 Jan 2003 18:51:45 +0000 Subject: Do not do manually what sendmail(8) can do better automatically. Tell sendmail to clean up its own host status cache. The error condition handling could probably be done better. --- etc/defaults/periodic.conf | 5 ++--- etc/periodic/daily/150.clean-hoststat | 29 ++++------------------------- 2 files changed, 6 insertions(+), 28 deletions(-) (limited to 'etc') diff --git a/etc/defaults/periodic.conf b/etc/defaults/periodic.conf index 14f2282..6213f25 100644 --- a/etc/defaults/periodic.conf +++ b/etc/defaults/periodic.conf @@ -60,9 +60,8 @@ daily_clean_rwho_days=7 # If not modified for daily_clean_rwho_verbose="YES" # Mention files deleted # 150.clean-hoststat -daily_clean_hoststat_enable="YES" # Delete .hoststat daily -daily_clean_hoststat_days=3 # If not modified for -daily_clean_hoststat_verbose="YES" # Mention files deleted +daily_clean_hoststat_enable="YES" # Purge sendmail MX + # host cache daily # 200.backup-passwd daily_backup_passwd_enable="YES" # Backup passwd & group diff --git a/etc/periodic/daily/150.clean-hoststat b/etc/periodic/daily/150.clean-hoststat index dba3009..473c45b 100755 --- a/etc/periodic/daily/150.clean-hoststat +++ b/etc/periodic/daily/150.clean-hoststat @@ -14,34 +14,13 @@ fi case "$daily_clean_hoststat_enable" in [Yy][Ee][Ss]) - if [ -z "$daily_clean_hoststat_days" ]; then - echo '$daily_clean_hoststat_enable is enabled but' \ - '$daily_clean_hoststat_days is not set' - rc=2 - elif [ ! -d /var/spool/.hoststat ]; then - echo '$daily_clean_hoststat_enable is enabled but' \ - "/var/spool/.hoststat doesn't exist" + if [ -z "$(sendmail -bh 2>&1)" ]; then rc=2 else echo "" - echo "Removing stale files from /var/spool/.hoststat:" - - case "$daily_clean_hoststat_verbose" in - [Yy][Ee][Ss]) - print=-print;; - *) - print=;; - esac - - if [ -d /var/spool/.hoststat ]; then - cd /var/spool/.hoststat - rc=$(find . ! -name . -mtime +$daily_clean_hoststat_days \ - -delete $print | tee /dev/stderr | wc -l) - [ -z "$print" ] && rc=0 - [ $rc -gt 1 ] && rc=1 - else - rc=3 - fi + echo "Removing stale entries from sendmail host status cache:" + rc=0 + sendmail -bH || rc=1 fi;; *) rc=0;; -- cgit v1.1