summaryrefslogtreecommitdiffstats
path: root/net-mgmt/arpwatch-devel
diff options
context:
space:
mode:
authornbm <nbm@FreeBSD.org>2001-08-23 14:45:02 +0000
committernbm <nbm@FreeBSD.org>2001-08-23 14:45:02 +0000
commit648793487c8ef5edb4e5fcabc6b8d7b57534d253 (patch)
treebfe020c13c2f0399efd18ed07a333d126528c720 /net-mgmt/arpwatch-devel
parent59842353320018b64f7fe5c7293d166b6393e0d5 (diff)
downloadFreeBSD-ports-648793487c8ef5edb4e5fcabc6b8d7b57534d253.zip
FreeBSD-ports-648793487c8ef5edb4e5fcabc6b8d7b57534d253.tar.gz
arpwatch package will now install an arp.dat file, meaning arpwatch from
the package will work by default. Additionally, setting arpwatch_interfaces in the rc.conf system will allow you to specify which interfaces arpwatches will run on. By default (ie, variable empty or not set), it will run on the first non-local interface it finds. Approved by: brian (thanks!)
Diffstat (limited to 'net-mgmt/arpwatch-devel')
-rw-r--r--net-mgmt/arpwatch-devel/Makefile1
-rw-r--r--net-mgmt/arpwatch-devel/files/arpwatch.sh28
-rw-r--r--net-mgmt/arpwatch-devel/pkg-plist3
3 files changed, 29 insertions, 3 deletions
diff --git a/net-mgmt/arpwatch-devel/Makefile b/net-mgmt/arpwatch-devel/Makefile
index 44dbbc0..20ed2db 100644
--- a/net-mgmt/arpwatch-devel/Makefile
+++ b/net-mgmt/arpwatch-devel/Makefile
@@ -7,6 +7,7 @@
PORTNAME= arpwatch
PORTVERSION= 2.1.a11
+PORTREVISION= 1
CATEGORIES= net
MASTER_SITES= http://www.Awfulhak.org/arpwatch/ \
ftp://ftp.ee.lbl.gov/
diff --git a/net-mgmt/arpwatch-devel/files/arpwatch.sh b/net-mgmt/arpwatch-devel/files/arpwatch.sh
index 1f4ad20..0725462 100644
--- a/net-mgmt/arpwatch-devel/files/arpwatch.sh
+++ b/net-mgmt/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'
diff --git a/net-mgmt/arpwatch-devel/pkg-plist b/net-mgmt/arpwatch-devel/pkg-plist
index 2d3d476..d186c23 100644
--- a/net-mgmt/arpwatch-devel/pkg-plist
+++ b/net-mgmt/arpwatch-devel/pkg-plist
@@ -1,10 +1,11 @@
sbin/arpwatch
sbin/arpsnmp
-@unexec test -f %D/arpwatch/arp.dat && test -s %D/arpwatch/arp.dat || rm -f %D/arpwatch/arp.dat
arpwatch/arp2ethers
arpwatch/ethercodes.dat
arpwatch/d.awk
arpwatch/e.awk
arpwatch/p.awk
etc/rc.d/arpwatch.sh
+@unexec test -f %D/arpwatch/arp.dat && test -s %D/arpwatch/arp.dat || rm -f %D/arpwatch/arp.dat
+@exec test -f %D/arpwatch/arp.dat || touch %D/arpwatch/arp.dat
@dirrm arpwatch
OpenPOWER on IntegriCloud