aboutsummaryrefslogtreecommitdiff
path: root/net/arpwatch-devel/files
diff options
context:
space:
mode:
authorNeil Blakey-Milner <nbm@FreeBSD.org>2001-08-23 14:45:02 +0000
committerNeil Blakey-Milner <nbm@FreeBSD.org>2001-08-23 14:45:02 +0000
commitfe5a0493bd03efaf58d06889df69aa6db4a0e270 (patch)
treef9477631e4c37b17d015b22c27ac2148acba7a44 /net/arpwatch-devel/files
parent11c04b6c8628bd87e89f69a0a7c7ac33c349b830 (diff)
Notes
Diffstat (limited to 'net/arpwatch-devel/files')
-rw-r--r--net/arpwatch-devel/files/arpwatch.sh28
1 files changed, 26 insertions, 2 deletions
diff --git a/net/arpwatch-devel/files/arpwatch.sh b/net/arpwatch-devel/files/arpwatch.sh
index 1f4ad205b3fe..072546207aab 100644
--- a/net/arpwatch-devel/files/arpwatch.sh
+++ b/net/arpwatch-devel/files/arpwatch.sh
@@ -1,5 +1,12 @@
#!/bin/sh
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
+
prog=$(realpath $0) || exit 1
dir=${prog%/*}
PREFIX=${dir%/etc/rc.d}
@@ -12,9 +19,26 @@ fi
case $1 in
start)
- if [ -x "$PREFIX"/sbin/arpwatch -a -d "$PREFIX"/arpwatch ]; then
- "$PREFIX"/sbin/arpwatch && echo -n ' arpwatch'
+ if [ ! -e "$PREFIX"/arpwatch/arp.dat ]; then
+ if [ -e "$PREFIX"/arpwatch/arp.dat- ]; then
+ cp "$PREFIX"/arpwatch/arp.dat- "$PREFIX"/arpwatch/arp.dat
+ else
+ touch "$PREFIX"/arpwarch/arp.dat
+ fi
fi
+
+ case ${arpwatch_interfaces} in
+ '')
+ if [ -x "$PREFIX"/sbin/arpwatch -a -d "$PREFIX"/arpwatch ]; then
+ "$PREFIX"/sbin/arpwatch && echo -n ' arpwatch'
+ fi
+ ;;
+ *)
+ for interface in ${arpwatch_interfaces}; do
+ "$PREFIX"/sbin/arpwatch -i "${interface}" && echo -n " arpwatch(${interface})"
+ done
+ ;;
+ esac
;;
stop)
killall arpwatch && echo -n ' arpwatch'