diff options
Diffstat (limited to 'package')
| -rw-r--r-- | package/Config.in | 2 | ||||
| -rw-r--r-- | package/Makefile | 2 | ||||
| -rw-r--r-- | package/arpwatch/Config.in | 6 | ||||
| -rw-r--r-- | package/arpwatch/Makefile | 69 | ||||
| -rw-r--r-- | package/arpwatch/arpwatch.control | 6 | ||||
| -rw-r--r-- | package/arpwatch/patches/005_debian_fhs | 103 | ||||
| -rw-r--r-- | package/arpwatch/patches/010_debian_getopt_patchable | 87 | ||||
| -rw-r--r-- | package/arpwatch/patches/011_debian_opt_sendmail_path | 163 | ||||
| -rw-r--r-- | package/arpwatch/patches/012_debian_opt_nopromisc | 90 | ||||
| -rw-r--r-- | package/arpwatch/patches/013_debian_opt_allsubnets | 103 | ||||
| -rw-r--r-- | package/arpwatch/patches/014_debian_opt_mailto | 161 | ||||
| -rw-r--r-- | package/arpwatch/patches/021_debian_arp2ethers | 90 | ||||
| -rw-r--r-- | package/nocatsplash/Config.in | 10 | ||||
| -rw-r--r-- | package/nocatsplash/Makefile | 71 | ||||
| -rw-r--r-- | package/nocatsplash/nocatsplash.control | 11 | 
15 files changed, 974 insertions, 0 deletions
| diff --git a/package/Config.in b/package/Config.in index d06abd75e..00e0b73eb 100644 --- a/package/Config.in +++ b/package/Config.in @@ -36,7 +36,9 @@ source "package/nfs-server/Config.in"  source "package/ser/Config.in"  source "package/wol/Config.in"  source "package/chillispot/Config.in" +source "package/nocatsplash/Config.in"  source "package/fping/Config.in" +source "package/arpwatch/Config.in"  comment "Libraries"  source "package/zlib/Config.in" diff --git a/package/Makefile b/package/Makefile index 63b3cb11e..3cad94ad5 100644 --- a/package/Makefile +++ b/package/Makefile @@ -3,6 +3,7 @@ include $(TOPDIR)/rules.mk  package-y:=openwrt  package-$(BR2_PACKAGE_ARPTABLES) += arptables +package-$(BR2_PACKAGE_ARPWATCH) += arpwatch  package-$(BR2_PACKAGE_BRIDGE) += bridge  package-$(BR2_PACKAGE_BUSYBOX) += busybox  package-$(BR2_PACKAGE_CHILLISPOT) += chillispot @@ -26,6 +27,7 @@ package-$(BR2_PACKAGE_MATRIXSSL) += matrixssl  package-$(BR2_PACKAGE_MICROPERL) += microperl  package-$(BR2_PACKAGE_NCURSES) += ncurses  package-$(BR2_PACKAGE_NFSD) += nfs-server +package-$(BR2_PACKAGE_NOCATSPLASH) += nocatsplash  package-$(BR2_PACKAGE_OPENSSL) += openssl  package-$(BR2_PACKAGE_OPENNTPD) += openntpd  package-$(BR2_PACKAGE_OPENVPN) += openvpn diff --git a/package/arpwatch/Config.in b/package/arpwatch/Config.in new file mode 100644 index 000000000..b2ff795aa --- /dev/null +++ b/package/arpwatch/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_ARPWATCH +	tristate "arpwatch" +	default m +	help +	  Ethernet monitor program for keeping track of ethernet/ip address pairings +	   diff --git a/package/arpwatch/Makefile b/package/arpwatch/Makefile new file mode 100644 index 000000000..43e0025c9 --- /dev/null +++ b/package/arpwatch/Makefile @@ -0,0 +1,69 @@ +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=arpwatch +PKG_VERSION:=2.1a11 +PKG_RELEASE:=1 +PKG_MD5SUM:=9ecd00db892737431b0e524f3e52e19e + +PKG_SOURCE_URL:=http://nbd.vd-s.ath.cx/openwrt +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_CAT:=zcat +PKG_IPK:=$(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk +PKG_IPK_DIR:=$(PKG_BUILD_DIR)/ipkg + +$(DL_DIR)/$(PKG_SOURCE): +	$(SCRIPT_DIR)/download.pl $(DL_DIR) $(PKG_SOURCE) $(PKG_MD5SUM) $(PKG_SOURCE_URL) + +$(PKG_BUILD_DIR)/.unpacked: $(DL_DIR)/$(PKG_SOURCE) +	$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - +	touch $(PKG_BUILD_DIR)/.unpacked + +$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.unpacked +	(cd $(PKG_BUILD_DIR); rm -rf config.cache; \ +		$(TARGET_CONFIGURE_OPTS) \ +		CFLAGS="$(TARGET_CFLAGS)" \ +		./configure \ +		--target=$(GNU_TARGET_NAME) \ +		--host=$(GNU_TARGET_NAME) \ +		--build=$(GNU_HOST_NAME) \ +		--prefix=/usr \ +		--exec-prefix=/usr \ +		--bindir=/usr/bin \ +		--sbindir=/usr/sbin \ +		--libexecdir=/usr/lib \ +		--sysconfdir=/etc \ +		--datadir=/usr/share \ +		--localstatedir=/var \ +		--mandir=/usr/man \ +		--infodir=/usr/info \ +		$(DISABLE_NLS) \ +		$(DISABLE_LARGEFILE) \ +	); +	touch $(PKG_BUILD_DIR)/.configured + +$(PKG_BUILD_DIR)/$(PKG_NAME): $(PKG_BUILD_DIR)/.configured +	$(MAKE) CC=$(TARGET_CC) -C $(PKG_BUILD_DIR) + +$(PKG_IPK): $(PKG_BUILD_DIR)/$(PKG_NAME) +	$(SCRIPT_DIR)/make-ipkg-dir.sh $(PKG_IPK_DIR) $(PKG_NAME).control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH) +	mkdir -p $(PKG_IPK_DIR)/usr/sbin +	cp $(PKG_BUILD_DIR)/arpwatch $(PKG_IPK_DIR)/usr/sbin/ +	cp $(PKG_BUILD_DIR)/arpsnmp $(PKG_IPK_DIR)/usr/sbin/ +	$(STRIP) $(PKG_IPK_DIR)/usr/sbin/* +	mkdir -p $(PACKAGE_DIR) +	$(IPKG_BUILD) $(PKG_IPK_DIR) $(PACKAGE_DIR) + +$(IPKG_STATE_DIR)/info/$(PKG_NAME).list: $(PKG_IPK) +	$(IPKG) install $(PKG_IPK) + +source: $(DL_DIR)/$(PKG_SOURCE) +prepare: $(PKG_BUILD_DIR)/.unpacked +compile: $(PKG_IPK) +install: $(IPKG_STATE_DIR)/info/$(PKG_NAME).list + +clean: +	rm -rf $(PKG_BUILD_DIR) +	rm -f $(PKG_IPK) diff --git a/package/arpwatch/arpwatch.control b/package/arpwatch/arpwatch.control new file mode 100644 index 000000000..85467d2a7 --- /dev/null +++ b/package/arpwatch/arpwatch.control @@ -0,0 +1,6 @@ +Package: arpwatch +Priority: optional +Section: net +Maintainer: Felix Fietkau <nbd@vd-s.ath.cx> +Source: buildroot internal +Description: Ethernet monitor program for keeping track of ethernet/ip address pairings diff --git a/package/arpwatch/patches/005_debian_fhs b/package/arpwatch/patches/005_debian_fhs new file mode 100644 index 000000000..44d9635b7 --- /dev/null +++ b/package/arpwatch/patches/005_debian_fhs @@ -0,0 +1,103 @@ +Index: arpwatch/Makefile.in +diff -u arpwatch/Makefile.in:1.1.1.1 arpwatch/Makefile.in:1.1.1.1.10.1 +--- arpwatch/Makefile.in:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/Makefile.in	Tue Apr 17 13:53:29 2001 +@@ -31,7 +31,8 @@ + # Pathname of directory to install the man page + MANDEST = @mandir@ + # Pathname of directory to install database file +-ARPDIR = $(prefix)/arpwatch ++ARPDIR = /var/lib/arpwatch ++ETHERCODES = /usr/share/arpwatch/ethercodes.dat +  + # VPATH + srcdir = @srcdir@ +@@ -45,7 +46,8 @@ + PROG = arpwatch + CCOPT = @V_CCOPT@ + INCLS = -I. @V_INCLS@ +-DEFS = -DDEBUG @DEFS@ -DARPDIR=\"$(ARPDIR)\" -DPATH_SENDMAIL=\"$(SENDMAIL)\" ++DEFS = -DDEBUG @DEFS@ -DARPDIR=\"$(ARPDIR)\" -DPATH_SENDMAIL=\"$(SENDMAIL)\" \ ++	-DETHERCODES=\"$(ETHERCODES)\" +  + # Standard CFLAGS + CFLAGS = $(CCOPT) $(DEFS) $(INCLS) +Index: arpwatch/arpsnmp.8 +diff -u arpwatch/arpsnmp.8:1.1.1.1 arpwatch/arpsnmp.8:1.1.1.1.10.1 +--- arpwatch/arpsnmp.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpsnmp.8	Tue Apr 17 13:53:29 2001 +@@ -1,4 +1,4 @@ +-.\" @(#) $Id$ (LBL) ++.\" @(#) $Id$ (LBL) + .\" + .\" Copyright (c) 1996, 1997, 1999, 2000 + .\"	The Regents of the University of California.  All rights reserved. +@@ -69,9 +69,9 @@ + .na + .nh + .nf +-/usr/operator/arpwatch - default directory ++/var/lib/arpwatch - default directory + arp.dat - ethernet/ip address database +-ethercodes.dat - vendor ethernet block list ++/usr/share/arpwatch/ethercodes.dat - vendor ethernet block list + .ad + .hy + .fi +Index: arpwatch/arpwatch.8 +diff -u arpwatch/arpwatch.8:1.1.1.1 arpwatch/arpwatch.8:1.1.1.1.10.1 +--- arpwatch/arpwatch.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.8	Tue Apr 17 13:53:29 2001 +@@ -1,4 +1,4 @@ +-.\" @(#) $Id$ (LBL) ++.\" @(#) $Id$ (LBL) + .\" + .\" Copyright (c) 1992, 1994, 1996, 1997, 2000 + .\"	The Regents of the University of California.  All rights reserved. +@@ -152,9 +152,9 @@ + .na + .nh + .nf +-/usr/operator/arpwatch - default directory ++/var/lib/arpwatch - default directory + arp.dat - ethernet/ip address database +-ethercodes.dat - vendor ethernet block list ++/usr/share/arpwatch/ethercodes.dat - vendor ethernet block list + .ad + .hy + .fi +Index: arpwatch/arpwatch.h +diff -u arpwatch/arpwatch.h:1.1.1.1 arpwatch/arpwatch.h:1.1.1.1.10.1 +--- arpwatch/arpwatch.h:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.h	Tue Apr 17 13:53:29 2001 +@@ -1,7 +1,7 @@ + /* @(#) $Id$ (LBL) */ +  + #define ARPFILE "arp.dat" +-#define ETHERCODES "ethercodes.dat" ++/* #define ETHERCODES "ethercodes.dat" */ + #define CHECKPOINT (15*60)		/* Checkpoint time in seconds */ +  + #define MEMCMP(a, b, n) memcmp((char *)a, (char *)b, n) +Index: arpwatch/bihourly +diff -u arpwatch/bihourly:1.1.1.1 arpwatch/bihourly:1.1.1.1.10.1 +--- arpwatch/bihourly:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/bihourly	Tue Apr 17 13:53:29 2001 +@@ -6,7 +6,7 @@ + PATH=$PATH:/usr/local/sbin + export PATH + # +-cd /usr/operator/arpwatch ++cd /var/lib/arpwatch + # + list=`cat list` + cname=`cat cname` +@@ -14,7 +14,7 @@ + # + alist="" + for r in $list; do \ +-	./arpfetch $r $cname > $r 2> $errs ++	arpfetch $r $cname > $r 2> $errs + 	if test -s $errs; then + 		echo "arpfetch $r failed:" + 		sed -e 's/^/    /' $errs diff --git a/package/arpwatch/patches/010_debian_getopt_patchable b/package/arpwatch/patches/010_debian_getopt_patchable new file mode 100644 index 000000000..7577e0b9f --- /dev/null +++ b/package/arpwatch/patches/010_debian_getopt_patchable @@ -0,0 +1,87 @@ +Index: arpwatch/arpsnmp.c +diff -u arpwatch/arpsnmp.c:1.1.1.1 arpwatch/arpsnmp.c:1.1.1.1.2.1 +--- arpwatch/arpsnmp.c:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpsnmp.c	Tue Apr 17 13:47:57 2001 +@@ -78,6 +78,10 @@ + 	register char *cp; + 	register int op, i; + 	char errbuf[256]; ++	char options[] = ++		"d" ++		"f:" ++	; +  + 	if ((cp = strrchr(argv[0], '/')) != NULL) + 		prog = cp + 1; +@@ -90,7 +94,7 @@ + 	} +  + 	opterr = 0; +-	while ((op = getopt(argc, argv, "df:")) != EOF) ++	while ((op = getopt(argc, argv, options)) != EOF) + 		switch (op) { +  + 		case 'd': +@@ -181,9 +185,14 @@ + usage(void) + { + 	extern char version[]; ++	char usage[] = ++		"[-d] " ++		"[-f datafile] " ++		"file [...]\n" ++	; +  + 	(void)fprintf(stderr, "Version %s\n", version); + 	(void)fprintf(stderr, +-	    "usage: %s [-d] [-f datafile] file [...]\n", prog); ++	    "usage: %s %s", prog, usage); + 	exit(1); + } +Index: arpwatch/arpwatch.c +diff -u arpwatch/arpwatch.c:1.1.1.1 arpwatch/arpwatch.c:1.1.1.1.2.1 +--- arpwatch/arpwatch.c:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.c	Tue Apr 17 13:47:57 2001 +@@ -153,6 +153,14 @@ + 	register char *interface, *rfilename; + 	struct bpf_program code; + 	char errbuf[PCAP_ERRBUF_SIZE]; ++	char options[] = ++		"d" ++		"f:" ++		"i:" ++		"n:" ++		"N" ++		"r:" ++	; +  + 	if (argv[0] == NULL) + 		prog = "arpwatch"; +@@ -170,7 +178,7 @@ + 	interface = NULL; + 	rfilename = NULL; + 	pd = NULL; +-	while ((op = getopt(argc, argv, "df:i:n:Nr:")) != EOF) ++	while ((op = getopt(argc, argv, options)) != EOF) + 		switch (op) { +  + 		case 'd': +@@ -748,9 +756,16 @@ + usage(void) + { + 	extern char version[]; ++	char usage[] = ++		"[-dN] " ++		"[-f datafile] " ++		"[-i interface] " ++		"[-n net[/width]] " ++		"[-r file] " ++		"\n" ++	; +  + 	(void)fprintf(stderr, "Version %s\n", version); +-	(void)fprintf(stderr, "usage: %s [-dN] [-f datafile] [-i interface]" +-	    " [-n net[/width]] [-r file]\n", prog); ++	(void)fprintf(stderr, "usage: %s %s", prog, usage); + 	exit(1); + } diff --git a/package/arpwatch/patches/011_debian_opt_sendmail_path b/package/arpwatch/patches/011_debian_opt_sendmail_path new file mode 100644 index 000000000..4b2014db3 --- /dev/null +++ b/package/arpwatch/patches/011_debian_opt_sendmail_path @@ -0,0 +1,163 @@ +Index: arpwatch/arpsnmp.8 +diff -u arpwatch/arpsnmp.8:1.1.1.1 arpwatch/arpsnmp.8:1.1.1.1.4.1 +--- arpwatch/arpsnmp.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpsnmp.8	Tue Apr 17 13:49:16 2001 +@@ -30,7 +30,12 @@ + ] [ + .B -f + .I datafile ++] [ ++.B -s ++.I sendmail_path + ] ++.br ++.ti +8 + .I file + [ + .I ... +@@ -54,6 +59,13 @@ + flag is used to set the ethernet/ip address database filename. + The default is + .IR arp.dat . ++.LP ++The ++.B -s ++flag is used to specify the path to the sendmail program. ++Any program that takes the option -odi and then text from stdin ++can be substituted. This is useful for redirecting reports ++to log files instead of mail. (Debian specific) + .LP + Note that an empty + .I arp.dat +Index: arpwatch/arpsnmp.c +diff -u arpwatch/arpsnmp.c:1.1.1.1.2.1 arpwatch/arpsnmp.c:1.1.1.1.2.1.2.1 +--- arpwatch/arpsnmp.c:1.1.1.1.2.1	Tue Apr 17 13:47:57 2001 ++++ arpwatch/arpsnmp.c	Tue Apr 17 13:49:16 2001 +@@ -67,6 +67,7 @@ + __dead	void usage(void) __attribute__((volatile)); +  + char *prog; ++char *path_sendmail = PATH_SENDMAIL; +  + extern int optind; + extern int opterr; +@@ -81,6 +82,7 @@ + 	char options[] = + 		"d" + 		"f:" ++		"s:" + 	; +  + 	if ((cp = strrchr(argv[0], '/')) != NULL) +@@ -109,6 +111,10 @@ + 			arpfile = optarg; + 			break; +  ++		case 's': ++			path_sendmail = optarg; ++			break; ++ + 		default: + 			usage(); + 		} +@@ -188,6 +194,7 @@ + 	char usage[] = + 		"[-d] " + 		"[-f datafile] " ++		"[-s sendmail_path] " + 		"file [...]\n" + 	; +  +Index: arpwatch/arpwatch.8 +diff -u arpwatch/arpwatch.8:1.1.1.1 arpwatch/arpwatch.8:1.1.1.1.4.1 +--- arpwatch/arpwatch.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.8	Tue Apr 17 13:49:16 2001 +@@ -44,6 +44,12 @@ + .B -r + .I file + ] ++.br ++.ti +8 ++[ ++.B -s ++.I sendmail_path ++] + .ad + .SH DESCRIPTION + .B Arpwatch +@@ -93,6 +99,13 @@ + of reading from the network. In this case, + .B arpwatch + does not fork. ++.LP ++The ++.B -s ++flag is used to specify the path to the sendmail program. ++Any program that takes the option -odi and then text from stdin ++can be substituted. This is useful for redirecting reports ++to log files instead of mail. (Debian specific) + .LP + Note that an empty + .I arp.dat +Index: arpwatch/arpwatch.c +diff -u arpwatch/arpwatch.c:1.1.1.1.2.1 arpwatch/arpwatch.c:1.1.1.1.2.1.2.1 +--- arpwatch/arpwatch.c:1.1.1.1.2.1	Tue Apr 17 13:47:57 2001 ++++ arpwatch/arpwatch.c	Tue Apr 17 13:49:16 2001 +@@ -106,6 +106,7 @@ + #endif +  + char *prog; ++char *path_sendmail = PATH_SENDMAIL; +  + int can_checkpoint; + int swapped; +@@ -160,6 +161,7 @@ + 		"n:" + 		"N" + 		"r:" ++		"s:" + 	; +  + 	if (argv[0] == NULL) +@@ -210,6 +212,10 @@ + 			rfilename = optarg; + 			break; +  ++		case 's': ++			path_sendmail = optarg; ++			break; ++ + 		default: + 			usage(); + 		} +@@ -761,7 +767,8 @@ + 		"[-f datafile] " + 		"[-i interface] " + 		"[-n net[/width]] " +-		"[-r file] " ++		"[-r file]\n\t" ++		"[-s sendmail_path] " + 		"\n" + 	; +  +Index: arpwatch/report.c +diff -u arpwatch/report.c:1.1.1.1 arpwatch/report.c:1.1.1.1.4.1 +--- arpwatch/report.c:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/report.c	Tue Apr 17 13:49:16 2001 +@@ -235,6 +235,7 @@ + report(register char *title, register u_int32_t a, register u_char *e1, +     register u_char *e2, register time_t *t1p, register time_t *t2p) + { ++        extern char *path_sendmail; + 	register char *cp, *hn; + 	register int fd, pid; + 	register FILE *f; +@@ -242,7 +243,7 @@ + 	char *fmt = "%20s: %s\n"; + 	char *watcher = WATCHER; + 	char *watchee = WATCHEE; +-	char *sendmail = PATH_SENDMAIL; ++	char *sendmail = path_sendmail; + 	char *unknown = "<unknown>"; + 	char buf[132]; + 	static int init = 0; diff --git a/package/arpwatch/patches/012_debian_opt_nopromisc b/package/arpwatch/patches/012_debian_opt_nopromisc new file mode 100644 index 000000000..37fdd5d08 --- /dev/null +++ b/package/arpwatch/patches/012_debian_opt_nopromisc @@ -0,0 +1,90 @@ +Index: arpwatch/arpwatch.8 +diff -u arpwatch/arpwatch.8:1.1.1.1 arpwatch/arpwatch.8:1.1.1.1.6.1 +--- arpwatch/arpwatch.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.8	Tue Apr 17 13:50:23 2001 +@@ -29,6 +29,8 @@ + [ + .B -dN + ] [ ++.B -p ++] [ + .B -f + .I datafile + ] [ +@@ -81,6 +83,15 @@ + The + .B -N + flag disables reporting any bogons. ++.LP ++The ++.B -p ++flag disables promiscuous operation.  ARP broadcasts get through hubs without ++having the interface in promiscuous mode, while saving considerable resources ++that would be wasted on processing gigabytes of non-broadcast traffic.  OTOH, ++setting promiscuous mode does not mean getting 100% traffic that would concern ++.B arpwatch . ++YMMV. (Debian specific) + .LP + The + .B -r +Index: arpwatch/arpwatch.c +diff -u arpwatch/arpwatch.c:1.1.1.1.2.1 arpwatch/arpwatch.c:1.1.1.1.2.1.4.1 +--- arpwatch/arpwatch.c:1.1.1.1.2.1	Tue Apr 17 13:47:57 2001 ++++ arpwatch/arpwatch.c	Tue Apr 17 13:50:23 2001 +@@ -159,6 +159,7 @@ + 		"i:" + 		"n:" + 		"N" ++		"p" + 		"r:" + 	; +  +@@ -206,6 +207,10 @@ + 			++nobogons; + 			break; +  ++		case 'p': ++			++nopromisc; ++			break; ++ + 		case 'r': + 			rfilename = optarg; + 			break; +@@ -277,7 +282,7 @@ + 		snaplen = max(sizeof(struct ether_header), + 		    sizeof(struct fddi_header)) + sizeof(struct ether_arp); + 		timeout = 1000; +-		pd = pcap_open_live(interface, snaplen, 1, timeout, errbuf); ++		pd = pcap_open_live(interface, snaplen, !nopromisc, timeout, errbuf); + 		if (pd == NULL) { + 			syslog(LOG_ERR, "pcap open %s: %s", interface, errbuf); + 			exit(1); +@@ -758,6 +763,7 @@ + 	extern char version[]; + 	char usage[] = + 		"[-dN] " ++		"[-p] " + 		"[-f datafile] " + 		"[-i interface] " + 		"[-n net[/width]] " +Index: arpwatch/util.c +diff -u arpwatch/util.c:1.1.1.1 arpwatch/util.c:1.1.1.1.6.1 +--- arpwatch/util.c:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/util.c	Tue Apr 17 13:50:23 2001 +@@ -61,6 +61,7 @@ +  + int debug = 0; + int initializing = 1;			/* true if initializing */ ++int nopromisc = 0;			/* don't activate promisc mode */ +  + /* syslog() helper routine */ + void +Index: arpwatch/util.h +diff -u arpwatch/util.h:1.1.1.1 arpwatch/util.h:1.1.1.1.6.1 +--- arpwatch/util.h:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/util.h	Tue Apr 17 13:50:23 2001 +@@ -17,3 +17,4 @@ +  + extern int debug; + extern int initializing; ++extern int nopromisc; diff --git a/package/arpwatch/patches/013_debian_opt_allsubnets b/package/arpwatch/patches/013_debian_opt_allsubnets new file mode 100644 index 000000000..df61eeae6 --- /dev/null +++ b/package/arpwatch/patches/013_debian_opt_allsubnets @@ -0,0 +1,103 @@ +Index: arpwatch/arpwatch.8 +diff -u arpwatch/arpwatch.8:1.1.1.1 arpwatch/arpwatch.8:1.1.1.1.8.1 +--- arpwatch/arpwatch.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.8	Tue Apr 17 13:51:23 2001 +@@ -27,6 +27,8 @@ + .na + .B arpwatch + [ ++.B -a ++] [ + .B -dN + ] [ + .B -f +@@ -53,6 +55,17 @@ + uses + .BR pcap (3) + to listen for arp packets on a local ethernet interface. ++.LP ++.B -a ++By default, ++.B arpwatch ++reports bogons (unless ++.B -N ++is given) for IP addresses that are in the same subnet than the ++first IP address of the default interface.  If this option is ++specified, ++.B arpwatch ++will report bogons about every IP addresses. (Debian specific) + .LP + The + .B -d +Index: arpwatch/arpwatch.c +diff -u arpwatch/arpwatch.c:1.1.1.1.2.1 arpwatch/arpwatch.c:1.1.1.1.2.1.6.1 +--- arpwatch/arpwatch.c:1.1.1.1.2.1	Tue Apr 17 13:47:57 2001 ++++ arpwatch/arpwatch.c	Tue Apr 17 13:51:23 2001 +@@ -154,6 +154,7 @@ + 	struct bpf_program code; + 	char errbuf[PCAP_ERRBUF_SIZE]; + 	char options[] = ++		"a" + 		"d" + 		"f:" + 		"i:" +@@ -181,6 +182,10 @@ + 	while ((op = getopt(argc, argv, options)) != EOF) + 		switch (op) { +  ++		case 'a': ++			++allsubnets; ++			break; ++ + 		case 'd': + 			++debug; + #ifndef DEBUG +@@ -389,7 +394,7 @@ + 	/* Watch for bogons */ + 	if (isbogon(sia)) { + 		dosyslog(LOG_INFO, "bogon", sia, sea, sha); +-		return; ++		if (!allsubnets) return; + 	} +  + 	/* Watch for ethernet broadcast */ +@@ -538,7 +543,7 @@ + 	/* Watch for bogons */ + 	if (isbogon(sia)) { + 		dosyslog(LOG_INFO, "bogon", sia, sea, sha); +-		return; ++		if (!allsubnets) return; + 	} +  + 	/* Watch for ethernet broadcast */ +@@ -757,6 +762,7 @@ + { + 	extern char version[]; + 	char usage[] = ++		"[-a] " + 		"[-dN] " + 		"[-f datafile] " + 		"[-i interface] " +Index: arpwatch/util.c +diff -u arpwatch/util.c:1.1.1.1 arpwatch/util.c:1.1.1.1.8.1 +--- arpwatch/util.c:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/util.c	Tue Apr 17 13:51:24 2001 +@@ -59,6 +59,7 @@ + u_char zero[6] = { 0, 0, 0, 0, 0, 0 }; + u_char allones[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; +  ++int allsubnets = 0;			/* watch all attached subnets */ + int debug = 0; + int initializing = 1;			/* true if initializing */ +  +Index: arpwatch/util.h +diff -u arpwatch/util.h:1.1.1.1 arpwatch/util.h:1.1.1.1.8.1 +--- arpwatch/util.h:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/util.h	Tue Apr 17 13:51:24 2001 +@@ -15,5 +15,6 @@ + extern u_char zero[6]; + extern u_char allones[6]; +  ++extern int allsubnets; + extern int debug; + extern int initializing; diff --git a/package/arpwatch/patches/014_debian_opt_mailto b/package/arpwatch/patches/014_debian_opt_mailto new file mode 100644 index 000000000..50e7491af --- /dev/null +++ b/package/arpwatch/patches/014_debian_opt_mailto @@ -0,0 +1,161 @@ +Index: arpwatch/arpsnmp.8 +diff -u arpwatch/arpsnmp.8:1.1.1.1 arpwatch/arpsnmp.8:1.1.1.1.12.1 +--- arpwatch/arpsnmp.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpsnmp.8	Tue Apr 17 13:54:38 2001 +@@ -28,6 +28,9 @@ + [ + .B -d + ] [ ++.B -m ++.I addr ++] [ + .B -f + .I datafile + ] +@@ -48,6 +51,13 @@ + flag is used enable debugging. This also inhibits mailing the reports. + Instead, they are sent to + .IR stderr . ++.LP ++The ++.B -m ++option is used to specify the e-mail address to which reports will be ++sent.  By default, reports are sent to ++.I root ++on the local machine. (Debian specific) + .LP + The + .B -f +Index: arpwatch/arpsnmp.c +diff -u arpwatch/arpsnmp.c:1.1.1.1.2.1 arpwatch/arpsnmp.c:1.1.1.1.2.1.8.1 +--- arpwatch/arpsnmp.c:1.1.1.1.2.1	Tue Apr 17 13:47:57 2001 ++++ arpwatch/arpsnmp.c	Tue Apr 17 13:54:38 2001 +@@ -80,6 +80,7 @@ + 	char errbuf[256]; + 	char options[] = + 		"d" ++		"m:" + 		"f:" + 	; +  +@@ -105,6 +106,10 @@ + #endif + 			break; +  ++		case 'm': ++			mailaddress = optarg; ++			break; ++ + 		case 'f': + 			arpfile = optarg; + 			break; +@@ -187,6 +192,7 @@ + 	extern char version[]; + 	char usage[] = + 		"[-d] " ++		"[-m addr ] " + 		"[-f datafile] " + 		"file [...]\n" + 	; +Index: arpwatch/arpwatch.8 +diff -u arpwatch/arpwatch.8:1.1.1.1 arpwatch/arpwatch.8:1.1.1.1.12.1 +--- arpwatch/arpwatch.8:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arpwatch.8	Tue Apr 17 13:54:38 2001 +@@ -38,6 +38,10 @@ + .br + .ti +8 + [ ++.B -m ++.I addr ++] ++[ + .B -n + .IR net [/ width + ]] [ +@@ -69,6 +73,13 @@ + The + .B -i + flag is used to override the default interface. ++.LP ++The ++.B -m ++option is used to specify the e-mail address to which reports will be ++sent.  By default, reports are sent to ++.I root ++on the local machine. (Debian specific) + .LP + The + .B -n +Index: arpwatch/arpwatch.c +diff -u arpwatch/arpwatch.c:1.1.1.1.2.1 arpwatch/arpwatch.c:1.1.1.1.2.1.8.1 +--- arpwatch/arpwatch.c:1.1.1.1.2.1	Tue Apr 17 13:47:57 2001 ++++ arpwatch/arpwatch.c	Tue Apr 17 13:54:38 2001 +@@ -157,6 +157,7 @@ + 		"d" + 		"f:" + 		"i:" ++		"m:" + 		"n:" + 		"N" + 		"r:" +@@ -197,6 +198,10 @@ + 			interface = optarg; + 			break; +  ++		case 'm': ++			mailaddress = optarg; ++			break; ++ + 		case 'n': + 			if (!addnet(optarg)) + 				usage(); +@@ -760,6 +765,7 @@ + 		"[-dN] " + 		"[-f datafile] " + 		"[-i interface] " ++		"[-m addr] " + 		"[-n net[/width]] " + 		"[-r file] " + 		"\n" +Index: arpwatch/report.c +diff -u arpwatch/report.c:1.1.1.1 arpwatch/report.c:1.1.1.1.12.1 +--- arpwatch/report.c:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/report.c	Tue Apr 17 13:54:38 2001 +@@ -240,7 +240,7 @@ + 	register FILE *f; + 	char tempfile[64], cpu[64], os[64]; + 	char *fmt = "%20s: %s\n"; +-	char *watcher = WATCHER; ++	char *watcher = mailaddress; + 	char *watchee = WATCHEE; + 	char *sendmail = PATH_SENDMAIL; + 	char *unknown = "<unknown>"; +Index: arpwatch/util.c +diff -u arpwatch/util.c:1.1.1.1 arpwatch/util.c:1.1.1.1.12.1 +--- arpwatch/util.c:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/util.c	Tue Apr 17 13:54:38 2001 +@@ -50,10 +50,12 @@ + #include "ec.h" + #include "file.h" + #include "util.h" ++#include "addresses.h" +  + char *arpdir = ARPDIR; + char *arpfile = ARPFILE; + char *ethercodes = ETHERCODES; ++char *mailaddress = WATCHER; +  + /* Broadcast ethernet addresses */ + u_char zero[6] = { 0, 0, 0, 0, 0, 0 }; +Index: arpwatch/util.h +diff -u arpwatch/util.h:1.1.1.1 arpwatch/util.h:1.1.1.1.12.1 +--- arpwatch/util.h:1.1.1.1	Tue Apr 17 13:31:37 2001 ++++ arpwatch/util.h	Tue Apr 17 13:54:38 2001 +@@ -11,6 +11,7 @@ + extern char *arpfile; + extern char *oldarpfile; + extern char *ethercodes; ++extern char *mailaddress; +  + extern u_char zero[6]; + extern u_char allones[6]; diff --git a/package/arpwatch/patches/021_debian_arp2ethers b/package/arpwatch/patches/021_debian_arp2ethers new file mode 100644 index 000000000..e50b03af1 --- /dev/null +++ b/package/arpwatch/patches/021_debian_arp2ethers @@ -0,0 +1,90 @@ +Index: arpwatch/arp2ethers +diff -u arpwatch/arp2ethers:1.1.1.1 arpwatch/arp2ethers:1.1.1.1.14.1 +--- arpwatch/arp2ethers:1.1.1.1	Tue Apr 17 13:31:36 2001 ++++ arpwatch/arp2ethers	Tue Apr 17 13:56:38 2001 +@@ -1,5 +1,5 @@ +-#!/bin/csh -f +-# @(#) $Id$ (LBL) ++#!/bin/sh ++# @(#) $Header$ (LBL) + # + # Convert arp.dat to ethers format + # +@@ -12,12 +12,74 @@ + #	- append "-old", "-old1", etc. as necessary + #	- sort + # ++# 1999-04-12	KELEMEN Peter <fuji@debian.org> ++#	Use sh(1) instead of csh(1). ++# ++# 2000-03-21	Erik Warmelink <erik@selwerd.nl> ++#	Use next instead of continue in included p.awk. +  + sort +2rn arp.dat | \ +     awk 'NF == 4 { print }' | \ +-    awk -f p.awk | \ ++# 1999-04-12	KELEMEN Peter <fuji@debian.org> ++#    awk -f p.awk | \ ++    awk ' ++# Only print the first ethernet address seen ++ ++{ ++	e = $1 ++	if (seen[e]) ++		next ++	seen[e] = 1 ++	print $0 ++} ++    ' | \ +     egrep -v '\.[0-9][0-9]*$' | \ +     sed -e 's/	.*	/	/' | \ +-    awk -f d.awk | \ +-    awk -f e.awk | \ ++# 1999-04-12	KELEMEN Peter <fuji@debian.org> ++#    awk -f d.awk | \ ++    awk ' ++# DECnet hacking ++ ++BEGIN { ++	n = 0 ++	sdecnet = "aa:0:4:" ++	ldecnet = length(sdecnet) ++} ++ ++{ ++	++n ++	e[n] = $1 ++	h[n] = $2 ++	if (sdecnet == substr($1, 1, ldecnet)) ++		decnet[$2] = 1 ++} ++ ++END { ++	for (i = 1; i <= n; ++i) { ++		if (decnet[h[i]] && sdecnet != substr(e[i], 1, ldecnet)) ++			h[i] = h[i] "-ip" ++		print e[i] "\t" h[i] ++	} ++} ++    ' | \ ++# 1999-04-12	KELEMEN Peter <fuji@debian.org> ++#    awk -f e.awk | \ ++    awk ' ++# Add -old suffix to ethers file, as required. Assumed sorted input ++ ++{ ++	if (!seen[$2]) { ++		seen[$2] = 1 ++		print ++		next ++	} ++	h = $2 "-old" ++	s = h ++	for (n = 1; seen[h]; ++n) ++		h = s n ++	seen[h] = 1 ++	print $1 "\t" h ++	next ++} ++    ' | \ +     sort diff --git a/package/nocatsplash/Config.in b/package/nocatsplash/Config.in new file mode 100644 index 000000000..87954826d --- /dev/null +++ b/package/nocatsplash/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_NOCATSPLASH +	tristate "NoCatSplash" +	default m +	help +	 NoCatSplash is an Open Public Network Gateway Daemon. +	 It performs as a [captive/open/active] portal. When run on a gateway/router +	 on a network, all web requests are redirected until the client either logs +	 in or clicks "I Accept" to an AUP. The gateway daemon then changes the +	 firewall rules on the gateway to pass traffic for that client (based on IP +	 address and MAC address). diff --git a/package/nocatsplash/Makefile b/package/nocatsplash/Makefile new file mode 100644 index 000000000..d5d6b3653 --- /dev/null +++ b/package/nocatsplash/Makefile @@ -0,0 +1,71 @@ +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=nocatsplash +PKG_VERSION:=0.92 +PKG_RELEASE:=1 +PKG_MD5SUM:=e0fcc0effe52e63bc31070d16d0b4a81 + +PKG_SOURCE_URL:=http://wifi.rulez.org/~josephus/ +PKG_SOURCE:=NoCatSplash-$(PKG_VERSION).tar.gz +PKG_BUILD_DIR:=$(BUILD_DIR)/NoCatSplash-$(PKG_VERSION) +PKG_CAT:=zcat +PKG_IPK:=$(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk +PKG_IPK_DIR:=$(PKG_BUILD_DIR)/ipkg + +$(DL_DIR)/$(PKG_SOURCE): +	$(SCRIPT_DIR)/download.pl $(DL_DIR) $(PKG_SOURCE) $(PKG_MD5SUM) $(PKG_SOURCE_URL) + +$(PKG_BUILD_DIR)/.unpacked: $(DL_DIR)/$(PKG_SOURCE) +	$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - +	touch $(PKG_BUILD_DIR)/.unpacked + +$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.unpacked +	(cd $(PKG_BUILD_DIR); rm -rf config.cache; \ +		$(TARGET_CONFIGURE_OPTS) \ +		CFLAGS="$(TARGET_CFLAGS)" \ +		./configure \ +		--target=$(GNU_TARGET_NAME) \ +		--host=$(GNU_TARGET_NAME) \ +		--build=$(GNU_HOST_NAME) \ +		--prefix=/usr \ +		--exec-prefix=/usr \ +		--bindir=/usr/bin \ +		--sbindir=/usr/sbin \ +		--libexecdir=/usr/lib \ +		--sysconfdir=/etc \ +		--datadir=/usr/share \ +		--localstatedir=/var \ +		--mandir=/usr/man \ +		--infodir=/usr/info \ +		$(DISABLE_NLS) \ +		$(DISABLE_LARGEFILE) \ +	); +	touch $(PKG_BUILD_DIR)/.configured + +$(PKG_BUILD_DIR)/src/splashd: $(PKG_BUILD_DIR)/.configured +	$(MAKE) -C $(PKG_BUILD_DIR) \ +		CC=$(TARGET_CC) \ +		GLIB_CFLAGS="-I$(STAGING_DIR)/usr/include/glib-1.2 -I$(STAGING_DIR)/usr/lib/glib/include" \ +		GLIB_LIBS="-L$(STAGING_DIR)/usr/lib -lglib" \ +		LIBS="-L$(STAGING_DIR)/usr/lib -lglib" + +$(PKG_IPK): $(PKG_BUILD_DIR)/src/splashd +	$(SCRIPT_DIR)/make-ipkg-dir.sh $(PKG_IPK_DIR) $(PKG_NAME).control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH) +	$(MAKE) -C $(PKG_BUILD_DIR) DESTDIR=$(PKG_IPK_DIR) install +	$(STRIP) $(PKG_IPK_DIR)/usr/sbin/splashd +	mkdir -p $(PACKAGE_DIR) +	$(IPKG_BUILD) $(PKG_IPK_DIR) $(PACKAGE_DIR) + +$(IPKG_STATE_DIR)/info/$(PKG_NAME).list: $(PKG_IPK) +	$(IPKG) install $(PKG_IPK) + +source: $(DL_DIR)/$(PKG_SOURCE) +prepare: $(PKG_BUILD_DIR)/.unpacked +compile: $(PKG_IPK) +install: $(IPKG_STATE_DIR)/info/$(PKG_NAME).list + +clean: +	rm -rf $(PKG_BUILD_DIR) +	rm -f $(PKG_IPK) diff --git a/package/nocatsplash/nocatsplash.control b/package/nocatsplash/nocatsplash.control new file mode 100644 index 000000000..4bbcb4e35 --- /dev/null +++ b/package/nocatsplash/nocatsplash.control @@ -0,0 +1,11 @@ +Package: nocatsplash +Priority: optional +Section: net +Maintainer: Felix Fietkau <nbd@vd-s.ath.cx> +Source: buildroot internal +Description: NoCatSplash is an Open Public Network Gateway Daemon. + It performs as a [captive/open/active] portal. When run on a gateway/router + on a network, all web requests are redirected until the client either logs + in or clicks "I Accept" to an AUP. The gateway daemon then changes the + firewall rules on the gateway to pass traffic for that client (based on IP + address and MAC address). | 
