128263Spst#!/bin/sh
228263Spst#
350472Speter# $FreeBSD$
428263Spst#
561981Sbrian# Remove stale files in /var/preserve
661981Sbrian#
728263Spst
861981Sbrian# If there is a global system configuration file, suck it in.
961981Sbrian#
1061981Sbrianif [ -r /etc/defaults/periodic.conf ]
1161981Sbrianthen
1261981Sbrian    . /etc/defaults/periodic.conf
1361981Sbrian    source_periodic_confs
1461981Sbrianfi
1528320Spst
1661981Sbriancase "$daily_clean_preserve_enable" in
1761981Sbrian    [Yy][Ee][Ss])
1865843Sbrian	if [ -z "$daily_clean_preserve_days" ]
1961981Sbrian	then
2065843Sbrian	    echo '$daily_clean_preserve_enable is set but' \
2165843Sbrian		'$daily_clean_preserve_days is not'
2265843Sbrian	    rc=2
2365843Sbrian	elif [ ! -d /var/preserve ]
2465843Sbrian	then
2565843Sbrian	    echo '$daily_clean_preserve_enable is set but /var/preserve' \
2665843Sbrian		"doesn't exist"
2765843Sbrian	    rc=2
2865843Sbrian	else
2961981Sbrian	    echo ""
3061981Sbrian	    echo "Removing stale files from /var/preserve:"
3161981Sbrian
3265843Sbrian	    if cd /var/preserve
3365843Sbrian	    then
3465843Sbrian		case "$daily_clean_preserve_verbose" in
3565843Sbrian		    [Yy][Ee][Ss])
3665843Sbrian			print=-print;;
3765843Sbrian		    *)
3865843Sbrian			print=;;
3965843Sbrian		esac
4061981Sbrian
4165843Sbrian		rc=$(find . ! -name . -mtime +$daily_clean_preserve_days \
4265843Sbrian		    -delete $print | tee /dev/stderr | wc -l)
4365843Sbrian		[ -z "$print" ] && rc=0
4465843Sbrian		[ $rc -gt 1 ] && rc=1
4565843Sbrian	    else
4665843Sbrian		rc=3
4765843Sbrian	    fi
4861981Sbrian	fi;;
4965843Sbrian
5065843Sbrian    *)  rc=0;;
5161981Sbrianesac
5265843Sbrian
5365843Sbrianexit $rc
54