aboutsummaryrefslogtreecommitdiff
path: root/etc/periodic/monthly
diff options
context:
space:
mode:
authorBrian Somers <brian@FreeBSD.org>2000-09-14 17:19:15 +0000
committerBrian Somers <brian@FreeBSD.org>2000-09-14 17:19:15 +0000
commit9ed55d11927f19588b8aef6f62573088ef326533 (patch)
treec31f792ea5c6e9dc64b4548ce1eac04f000541b2 /etc/periodic/monthly
parentcb144e905c51d496dc25e6c2e9c99ba603d00a02 (diff)
downloadsrc-9ed55d11927f19588b8aef6f62573088ef326533.tar.gz
src-9ed55d11927f19588b8aef6f62573088ef326533.zip
Another overhaul of the periodic stuff.
All periodic sub-scripts <larf> now have their return codes interpreted by periodic(8). Output may be masked based on variable values in periodic.conf. It's also now possible to email periodic output to arbitrary addresses, or to send it to a log file, examples of which can be found in newsyslog.conf. The upshot of it all should be no discernable changes to the default behaviour of periodic(8). PR: 21250
Notes
Notes: svn path=/head/; revision=65843
Diffstat (limited to 'etc/periodic/monthly')
-rwxr-xr-xetc/periodic/monthly/200.accounting20
-rwxr-xr-xetc/periodic/monthly/999.local11
2 files changed, 23 insertions, 8 deletions
diff --git a/etc/periodic/monthly/200.accounting b/etc/periodic/monthly/200.accounting
index 5444ea860bba..f808bbf8a853 100755
--- a/etc/periodic/monthly/200.accounting
+++ b/etc/periodic/monthly/200.accounting
@@ -14,14 +14,20 @@ fi
case "$monthly_accounting_enable" in
[Yy][Ee][Ss])
W=/var/log/wtmp
- if [ -f $W.0 ]
+ if [ ! -f $W.0 ]
then
- if [ -x /usr/sbin/ac ]
- then
- echo ""
- echo "Doing login accounting:"
+ echo '$monthly_accounting_enable is set but' \
+ "$W.0 doesn't exist"
+ rc=2
+ else
+ echo ""
+ echo "Doing login accounting:"
- ac -p -w $W.0 | sort -nr +1
- fi
+ rc=$(ac -p -w $W.0 | sort -nr +1 | tee /dev/stderr | wc -l)
+ [ $rc -gt 0 ] && rc=1
fi;;
+
+ *) rc=0;;
esac
+
+exit $rc
diff --git a/etc/periodic/monthly/999.local b/etc/periodic/monthly/999.local
index b5d8aeda1c25..a70a14f8258e 100755
--- a/etc/periodic/monthly/999.local
+++ b/etc/periodic/monthly/999.local
@@ -11,6 +11,7 @@ then
source_periodic_confs
fi
+rc=0
for script in $monthly_local
do
case "$script" in
@@ -20,7 +21,15 @@ do
echo ""
echo "Running $script:"
- sh $script
+ sh $script || rc=3
+ else
+ echo "$script: No such file"
+ [ $rc -lt 2 ] && rc=2
fi;;
+ *)
+ echo "$script: Not an absolute path"
+ [ $rc -lt 2 ] && rc=2;;
esac
done
+
+exit $rc