summaryrefslogtreecommitdiffstats
path: root/package/arpwatch/patches/013_debian_opt_allsubnets
diff options
context:
space:
mode:
Diffstat (limited to 'package/arpwatch/patches/013_debian_opt_allsubnets')
-rw-r--r--package/arpwatch/patches/013_debian_opt_allsubnets103
1 files changed, 103 insertions, 0 deletions
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;