summaryrefslogtreecommitdiff
path: root/openwrt/package/arpd/patches/pcap-and-arg.patch
diff options
context:
space:
mode:
Diffstat (limited to 'openwrt/package/arpd/patches/pcap-and-arg.patch')
-rw-r--r--openwrt/package/arpd/patches/pcap-and-arg.patch75
1 files changed, 0 insertions, 75 deletions
diff --git a/openwrt/package/arpd/patches/pcap-and-arg.patch b/openwrt/package/arpd/patches/pcap-and-arg.patch
deleted file mode 100644
index 7750e2928c..0000000000
--- a/openwrt/package/arpd/patches/pcap-and-arg.patch
+++ /dev/null
@@ -1,75 +0,0 @@
---- arpd/arpd.c Sun Feb 9 05:20:40 2003
-+++ arpd/arpd.c.new Mon Aug 1 00:50:40 2005
-@@ -70,7 +70,7 @@
- static void
- usage(void)
- {
-- fprintf(stderr, "Usage: arpd [-d] [-i interface] [net]\n");
-+ fprintf(stderr, "Usage: arpd [-d] [-i interface] [-a 'pcap_expr'] [{host|net|range} ...]\n");
- exit(1);
- }
-
-@@ -182,7 +182,7 @@
- }
-
- static void
--arpd_init(char *dev, int naddresses, char **addresses)
-+arpd_init(char *dev, char *and_pcap_exp, int naddresses, char **addresses)
- {
- struct bpf_program fcode;
- char filter[1024], ebuf[PCAP_ERRBUF_SIZE], *dst;
-@@ -214,9 +214,13 @@
- errx(1, "bad interface configuration: not IP or Ethernet");
- arpd_ifent.intf_addr.addr_bits = IP_ADDR_BITS;
-
-- snprintf(filter, sizeof(filter), "arp %s%s%s and not ether src %s",
-+ snprintf(filter, sizeof(filter), "arp %s%s%s and not ether src %s%s%s%s",
- dst ? "and (" : "", dst ? dst : "", dst ? ")" : "",
-- addr_ntoa(&arpd_ifent.intf_link_addr));
-+ addr_ntoa(&arpd_ifent.intf_link_addr),
-+ and_pcap_exp ? " and (" : "",
-+ and_pcap_exp ? and_pcap_exp : "",
-+ and_pcap_exp ? ")" : ""
-+ );
-
- if ((arpd_pcap = pcap_open_live(dev, 128, 0, 500, ebuf)) == NULL)
- errx(1, "pcap_open_live: %s", ebuf);
-@@ -465,14 +469,14 @@
- {
- struct event recv_ev;
- extern int (*event_sigcb)(void);
-- char *dev;
-+ char *dev, *and_pcap_exp;
- int c, debug;
- FILE *fp;
-
- dev = NULL;
- debug = 0;
-
-- while ((c = getopt(argc, argv, "di:h?")) != -1) {
-+ while ((c = getopt(argc, argv, "a:di:h?")) != -1) {
- switch (c) {
- case 'd':
- debug = 1;
-@@ -480,6 +484,9 @@
- case 'i':
- dev = optarg;
- break;
-+ case 'a':
-+ and_pcap_exp = optarg;
-+ break;
- default:
- usage();
- break;
-@@ -489,9 +496,9 @@
- argv += optind;
-
- if (argc == 0)
-- arpd_init(dev, 0, NULL);
-+ arpd_init(dev, and_pcap_exp, 0, NULL);
- else
-- arpd_init(dev, argc, argv);
-+ arpd_init(dev, and_pcap_exp, argc, argv);
-
- if ((fp = fopen(PIDFILE, "w")) == NULL)
- err(1, "fopen");