mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-12-28 22:36:24 +01:00
52 lines
858 B
Bash
Executable File
52 lines
858 B
Bash
Executable File
#!/bin/sh -
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# If there is a global system configuration file, suck it in.
|
|
#
|
|
if [ -r /etc/defaults/periodic.conf ]
|
|
then
|
|
. /etc/defaults/periodic.conf
|
|
source_periodic_confs
|
|
fi
|
|
|
|
oldmask=$(umask)
|
|
umask 066
|
|
case "$monthly_accounting_enable" in
|
|
[Yy][Ee][Ss])
|
|
W=/var/log/utx.log
|
|
rc=0
|
|
remove=NO
|
|
if [ ! -f $W.0 ]
|
|
then
|
|
if [ -f $W.0.gz ]
|
|
then
|
|
remove=YES
|
|
zcat $W.0.gz > $W.0 || rc=1
|
|
elif [ -f $W.0.bz2 ]
|
|
then
|
|
remove=YES
|
|
bzcat $W.0.bz2 > $W.0 || rc=1
|
|
else
|
|
echo '$monthly_accounting_enable is set but' \
|
|
"$W.0 doesn't exist"
|
|
rc=2
|
|
fi
|
|
fi
|
|
if [ $rc -eq 0 ]
|
|
then
|
|
echo ""
|
|
echo "Doing login accounting:"
|
|
|
|
rc=$(ac -p -w $W.0 | sort -nr -k 2 | tee /dev/stderr | wc -l)
|
|
[ $rc -gt 0 ] && rc=1
|
|
fi
|
|
[ $remove = YES ] && rm -f $W.0;;
|
|
|
|
*) rc=0;;
|
|
esac
|
|
|
|
umask $oldmask
|
|
exit $rc
|