[BACK]Return to monthly CVS log [TXT][DIR] Up to [local] / src / etc

File: [local] / src / etc / monthly (download)

Revision 1.11, Sun May 10 19:27:25 2009 UTC (15 years, 1 month ago) by schwarze
Branch: MAIN
Changes since 1.10: +2 -2 lines

avoid unnecessary changes of the output
in order not to annoy parser scripts and their owners (like henning@)

#
#	$OpenBSD: monthly,v 1.11 2009/05/10 19:27:25 schwarze Exp $
#
umask 022

PARTOUT=/var/log/monthly.part
MAINOUT=/var/log/monthly.out
install -o 0 -g 0 -m 600    /dev/null $PARTOUT
install -o 0 -g 0 -m 600 -b /dev/null $MAINOUT

start_part() {
	TITLE=$1
	exec > $PARTOUT 2>&1
}

end_part() {
	exec >> $MAINOUT 2>&1
	test -s $PARTOUT || return
	echo ""
	echo "$TITLE"
	cat $PARTOUT
}

next_part() {
	end_part
	start_part "$1"
}

run_script() {
	f=/etc/$1
	test -e $f || return
	if [ `stat -f '%Sp%u' $f | cut -b1,6,9,11-` != '---0' ]; then
		echo "$f has insecure permissions, skipping:"
		ls -l $f
		return
	fi
	. $f
}

start_part "Running monthly.local:"
run_script "monthly.local"

end_part
rm -f $PARTOUT
                        
[ -s $MAINOUT ] && mail -s "`hostname` monthly output" root < $MAINOUT