libpcap: sync with gentoo, v1.6.2 bump

This commit is contained in:
Anton Bolshakov 2014-10-25 02:27:26 +00:00
parent f87e106225
commit 180fa4ff52
10 changed files with 180 additions and 624 deletions

View file

@ -1,11 +1,12 @@
AUX libpcap-1.2.0-cross-linux.patch 583 SHA256 89344641676edfd9dc70b05569ac26a8ac79815fa5df0cf8e2ee77b3f9c5877f SHA512 4249129122f8ae382e086820ac4852d1413e3a7dd1f8db370aace1e94a1b0cf40d5f6d97213ca52e224e02472fed60b03c7f89d0ccd45e44ef0039a432595adb WHIRLPOOL 47598355e51ca3a15f1f817927aa73481c9a02ca15ca57ea487e1b42918a85b53aaa311be991dfc3362a2df3dd9ecee3059738e08760af8d6d9e4770578db3e3
AUX libpcap-1.3.0-canusb.patch 290 SHA256 3518dc59be25c3092df6e133694b4d4372552ff8d25e2371f3fc0f587de83054 SHA512 c3d6138d58c268fcf0799bf74c65ff648f2f7c6e46d3534d3941b9ae678510463388518db3b688ca85e89d79e31dedb147a8cbc9710b8ca0ca4a766913ba8fbf WHIRLPOOL 33225aa8eea3eb74b4d81c6746034d7cf88a0b2fad352888362cf87e565935b326b5a2aa6c4f857c21c44971a0b6b616e33130dd906511ef874e16b2872c8dd1
AUX libpcap-1.3.0-fix-systems-without-ipv6-support.patch 13183 SHA256 14973d5dc09e036281cf507ca7fead8bf352e17dcb949a90942d58e5affda29c SHA512 cdf61a8dfe2cba0a8f3bf84a749c48eb3e75e634880f86acf7225793c921577137eca7579812c0c38a6e128cca58214d0eb614b11ec47d5f6d25d53557d49185 WHIRLPOOL 49c7ac019e969bb18f384e11b77b986417da5d2e4b5986624efe8e4555982c629a68705c1a72c0761552acd7523653ffde426fcc9bbd61aa15a44bb4a38a2417
AUX libpcap-1.3.0-for-inbound-outbount-on-ethernet.patch 534 SHA256 b8d34f425cfd4624b40121fa95bac6e9e14254061fe58d724a162592832c1779 SHA512 2c0a491548d4d5a3825206f75d73adae27407d793190df1a190997b4db6f44048dfc0f4b55fb732b860c70b59e4f03764173c09bf4e8ac7aa259bac7dad88e34 WHIRLPOOL 681eb47c24a2fa67bdcacfd1ee4ec08a2dc720db101db4af86344176ceabec0f919f96d48e1ba75ef207371d7a159e1089d03a60180ca37344245db17102a9df
AUX libpcap-1.5.3-for-inbound-outbount-on-ethernet.patch 534 SHA256 b8d34f425cfd4624b40121fa95bac6e9e14254061fe58d724a162592832c1779 SHA512 2c0a491548d4d5a3825206f75d73adae27407d793190df1a190997b4db6f44048dfc0f4b55fb732b860c70b59e4f03764173c09bf4e8ac7aa259bac7dad88e34 WHIRLPOOL 681eb47c24a2fa67bdcacfd1ee4ec08a2dc720db101db4af86344176ceabec0f919f96d48e1ba75ef207371d7a159e1089d03a60180ca37344245db17102a9df
DIST libpcap-1.3.0.tar.gz 608967 SHA256 41cbd9ed68383afd9f1fda279cb78427d36879d9e34ee707e31a16a1afd872b9 SHA512 c023abb3da7b9f62835fa04ca43b50203d7e3da7b624d09a693c8b02fd531c3845e1c86cbc587ae02816614133f5342585f6a2985fdaf92889fcfaca7bfb8908 WHIRLPOOL 774897ce4dcd1655945313a145399da9db0063967ce246e1c7beb21f038ee4c5bcfe2b4ec7b08316a013fdb33b50781f5195bf169a2ca6f84ddc2bf5bca78f15
AUX libpcap-1.6.1-configure.patch 395 SHA256 dd61d36cfc89bd5c5f67f4b91cde2063f874de8e1456f5e8f426d3faa4109916 SHA512 e9a4ddf9d4102b1b6e450a7a5c9c1e00ea08edfa2d04772d877a209e2292dae14531b51b2c25a80b6bd2a00a76bcfa4d7e4672b399a2c9b7f1f5ff931da70ee6 WHIRLPOOL f6370b1e55411ad906c152fc03201dcccc57b1568efb25d58439956980ccba4fb4f4b8a4fcbe6188782970a81ea790bd71b8855ae3c95b3333a63848271529e8
AUX libpcap-1.6.1-prefix-solaris.patch 807 SHA256 c5bd1a5e0945e6ad06c4455045cf50f251ba6d2ba0386c6bdb20f809c5afffcd SHA512 af76d741784d123d7c2534c85018a102736889f0456420c5ae4b53b6568ec3054de30c4ce755ff6f9ae83abefd2275b379794e5a7cac65ef483ca676bf8883b3 WHIRLPOOL 1049da0979b52c71d783e5979e4b3ea0776f609725c1c288a6c75e8afe102db85f58af1d3f31249c7938d818e68bb569ef18f2c54dcb121b87fbe3c00a089cc3
AUX libpcap-1.6.2-dbus.patch 418 SHA256 115b2ebdfa9b58cda56a8f88c0736258eaa1a8367e57aa5b63173076227fa8b2 SHA512 59626b7ffbb1914feec8950fb6a5694cf8fc9833e07319f95e6608312aa04fca6a519a5b88d1ae365c14aeef188794271995d2e5b4d5bbaea733e81f3b8b8950 WHIRLPOOL 08c496bda4b01b5f3c7fcdd354d0cab0658940f9631a4af4b54a3630270cdc114c4a0eeb3dcda9c6ffcdcac758362ee6a0b93af0888d26ed8f20d6f9edd7bd61
AUX mgmt.h 1066 SHA256 fda9bf6721c986db93a084049c796b8de4f6a9ac7a21406bf22c68ebb9427729 SHA512 071ed2d22ed122e060be4c7dfcfbc6d8b019f47900560a40128c0af18bd7d45c16b7043681c000ccbfd681295a0811d68b18b675deb7f63fe4a2035bee4309eb WHIRLPOOL eb70d761b195326c29f6475f8312f16d019f69f2a213d4f9ab9fde306a18d77f88834fbd57d958fc3460a047487f67c79b71632f0a123b8e24a16b0a75d106b4
DIST libpcap-1.5.3.tar.gz 642352 SHA256 9ae92159c1060f15e6a90f2c4ad227268b6aaa382c316fa49a31c496b9979e93 SHA512 ee487b81ef3c8cd9e0173a252f620bdf2ebfde87bd7a95b38ea4658b47982d09ca86502d4a3473ffeb4388fb19e33d1f614236e22b420077b7ab40d3481f18a3 WHIRLPOOL 3d71f4c5134b2a0eba4d5e47952ddfad784bcde37332a926b68a799226f7fadd45e0e7fc2c12ede3724e89c2470f18ed35768dc12445950116e3b745b867020b
EBUILD libpcap-1.3.0-r1.ebuild 1871 SHA256 caf2d5a973612f5c549c8b1adc17531148010d68155c3fb415e99d8ab7179807 SHA512 e6b6627dcf81bb4303166cf785cfdaabadfddf796dceec9360503250ae036d1637dbd8391455b7f23dd7862d39d506311e037b1a777d401bb78aadfeeb7a0923 WHIRLPOOL 3b62ceef6c7b8ab4c666bf83f9378e73817607c7dd31a5f2400f90fafc151d46c8d9aa0af10bf66b9bd3467418cef5dd165616712b4055bbac93e0e0b6d7b639
DIST libpcap-1.6.2.tar.gz 651237 SHA256 5db3e2998f1eeba2c76da55da5d474248fe19c44f49e15cac8a796a2c7e19690 SHA512 e84fc2192b3ca34df679db6405205aff110d46bc7499b50f6da0c6f4c00381b403a03b632edc33d9314e3b2a17ba7fb876a6e391a2f06b3bd759372d62de485d WHIRLPOOL 4395bd80b02f53d80c4069df0eaa8abbb821b0454f522b468991093269c074a95d2dff360c77db6c9639d5c6558c575b5f7fa571af04e4b0f4f77cf65271e9c2
EBUILD libpcap-1.5.3.ebuild 2011 SHA256 eea34e26f5b616398e79a2cc8eabb29c59b2c69f05e29540d9741b9e4e48b6cc SHA512 e8706a98e9b3222308082962367de16763a46562dfd9a4d66abfce0289dc995d750b477d123fff5fe667fe5cb773d38cb6b866c41464e2e76c2819feab38db88 WHIRLPOOL 0533ef7d4494c069ec93fc0324a19674a7033b556e57cff7d6ee3e78f0b9cbee9e0fbf6a7aab43391e79a490257fbdfbcfcecbc7f11bc48bd98bb7c9ed9f3b56
EBUILD libpcap-1.6.2-r1.ebuild 2131 SHA256 5ce4c8bd5a3b9ffae14b307f89c1705878851f28513ff7370d0d8ba46c5882cd SHA512 4b0e3dbf4a6c712515db292a252f9758dd6c6421d1df9bc1ad8e00d8772e919764ebcc1ad5eabc6dcf88afa66cedd6549a48b2d54f3da58701d298357935cb25 WHIRLPOOL bea0e849fc8f632f216e25c748513eaad7fe5734bb884293946a92512d71a8dc7806ecbb4d99631795adae6519cac74b98f54a787213e13d5486912a988971cb
MISC ChangeLog 25621 SHA256 283ba44b30c878bf78eaa7cfdc3b808d6e55fef77d2f98d3e06a8e5fb626a40c SHA512 93f813023836f22b4e9bf031163afec7d85cb9a4e283de779cca184c8cea9643608e4b57ec67ec3c48b681e45d615fb54cdf5dfb99c2c9421eb68b9c953391b3 WHIRLPOOL 6533002b46cbd4214d5f65395a6a1c5c92f75fbf44e7576d889089cff0fc3df949bcb3c75739309c4c2720d3d76c7976522108976b51ba7db52afb19abf177a5
MISC metadata.xml 423 SHA256 d12419de9bd641cf78030dc7bdb2789c2c932f91ba9687a6073961eb8ff09e4f SHA512 61b591b21bd46a8ae6a20fde2d5cbe6f68250ce7616b11b55b3a270474fe1ac3b4aefcd3c98e9e6470a036ef3c685b3575464de81349137fdf7cd8082ea2d695 WHIRLPOOL a08d3ed4833b2725f68ad8fcca878047a6b7a36188462204dec1fe7f528b6ad4c8698bed8a87a03e52fe5ea7e30fd8464a881408c179e2d7ef085f511aad4475

View file

@ -1,11 +0,0 @@
--- a/configure.in
+++ b/configure.in
@@ -1396,7 +1401,7 @@
AC_ARG_ENABLE([canusb],
[AC_HELP_STRING([--enable-canusb],[enable canusb support @<:@default=yes, if support available@:>@])]
-,enable_canusb=yes)
+)
if test "x$enable_canusb" != "xno" ; then
dnl check for canusb support

View file

@ -1,522 +0,0 @@
From 2ae11347945ebd5bcff0c81c4305c03309918530 Mon Sep 17 00:00:00 2001
From: Guy Harris <guy@alum.mit.edu>
Date: Thu, 27 Sep 2012 19:34:11 -0700
Subject: [PATCH] Support what IPv6 stuff we can without IPv6 address resolution support.
Make the INET6-only code just be code that depends on having
getaddrinfo(), as per a complaint that, on a machine that either doesn't
have getaddrinfo() or doesn't have INET6 enabled, a filter
dst host 127.0.0.1 and (icmp or icmp6 or ((tcp or udp or sctp) and (src
host 127.0.0.1)))
Not having a full IPv6 stack shouldn't keep you from, for example,
having a filter that just checks the packet type field for IPv6 or that
looks at the protocol field in the IPv6 header. You can't check for
IPv6 *hosts* (although we could perhaps allow them to be specified
numerically).
---
gencode.c | 89 ++++-----------------------------------------------------------
scanner.l | 16 ++----------
2 files changed, 7 insertions(+), 98 deletions(-)
diff --git a/gencode.c b/gencode.c
index 0010df5..85e2e8e 100644
--- a/gencode.c
+++ b/gencode.c
@@ -240,9 +240,7 @@ static struct block *gen_linktype(int);
static struct block *gen_snap(bpf_u_int32, bpf_u_int32);
static struct block *gen_llc_linktype(int);
static struct block *gen_hostop(bpf_u_int32, bpf_u_int32, int, int, u_int, u_int);
-#ifdef INET6
static struct block *gen_hostop6(struct in6_addr *, struct in6_addr *, int, int, u_int, u_int);
-#endif
static struct block *gen_ahostop(const u_char *, int);
static struct block *gen_ehostop(const u_char *, int);
static struct block *gen_fhostop(const u_char *, int);
@@ -252,29 +250,23 @@ static struct block *gen_ipfchostop(const u_char *, int);
static struct block *gen_dnhostop(bpf_u_int32, int);
static struct block *gen_mpls_linktype(int);
static struct block *gen_host(bpf_u_int32, bpf_u_int32, int, int, int);
-#ifdef INET6
static struct block *gen_host6(struct in6_addr *, struct in6_addr *, int, int, int);
-#endif
#ifndef INET6
static struct block *gen_gateway(const u_char *, bpf_u_int32 **, int, int);
#endif
static struct block *gen_ipfrag(void);
static struct block *gen_portatom(int, bpf_int32);
static struct block *gen_portrangeatom(int, bpf_int32, bpf_int32);
-#ifdef INET6
static struct block *gen_portatom6(int, bpf_int32);
static struct block *gen_portrangeatom6(int, bpf_int32, bpf_int32);
-#endif
struct block *gen_portop(int, int, int);
static struct block *gen_port(int, int, int);
struct block *gen_portrangeop(int, int, int, int);
static struct block *gen_portrange(int, int, int, int);
-#ifdef INET6
struct block *gen_portop6(int, int, int);
static struct block *gen_port6(int, int, int);
struct block *gen_portrangeop6(int, int, int, int);
static struct block *gen_portrange6(int, int, int, int);
-#endif
static int lookup_proto(const char *, int);
static struct block *gen_protochain(int, int, int);
static struct block *gen_proto(int, int, int);
@@ -2841,11 +2833,9 @@ ethertype_to_ppptype(proto)
proto = PPP_IP;
break;
-#ifdef INET6
case ETHERTYPE_IPV6:
proto = PPP_IPV6;
break;
-#endif
case ETHERTYPE_DN:
proto = PPP_DECNET;
@@ -3053,11 +3043,10 @@ gen_linktype(proto)
case ETHERTYPE_IP:
/* Check for a version number of 4. */
return gen_mcmp(OR_LINK, 0, BPF_B, 0x40, 0xF0);
-#ifdef INET6
+
case ETHERTYPE_IPV6:
/* Check for a version number of 6. */
return gen_mcmp(OR_LINK, 0, BPF_B, 0x60, 0xF0);
-#endif
default:
return gen_false(); /* always false */
@@ -3081,10 +3070,8 @@ gen_linktype(proto)
/*
* Raw IPv6, so no type field.
*/
-#ifdef INET6
if (proto == ETHERTYPE_IPV6)
return gen_true(); /* always true */
-#endif
/* Checking for something other than IPv6; always false */
return gen_false();
@@ -3206,11 +3193,9 @@ gen_linktype(proto)
if (proto == ETHERTYPE_IP)
return (gen_cmp(OR_LINK, offsetof(struct pfloghdr, af),
BPF_B, (bpf_int32)AF_INET));
-#ifdef INET6
else if (proto == ETHERTYPE_IPV6)
return (gen_cmp(OR_LINK, offsetof(struct pfloghdr, af),
BPF_B, (bpf_int32)AF_INET6));
-#endif /* INET6 */
else
return gen_false();
/*NOTREACHED*/
@@ -3228,11 +3213,9 @@ gen_linktype(proto)
default:
return gen_false();
-#ifdef INET6
case ETHERTYPE_IPV6:
return (gen_cmp(OR_LINK, off_linktype, BPF_B,
(bpf_int32)ARCTYPE_INET6));
-#endif /* INET6 */
case ETHERTYPE_IP:
b0 = gen_cmp(OR_LINK, off_linktype, BPF_B,
@@ -3284,13 +3267,11 @@ gen_linktype(proto)
*/
return gen_cmp(OR_LINK, 2, BPF_H, (0x03<<8) | 0xcc);
-#ifdef INET6
case ETHERTYPE_IPV6:
/*
* Check for the special NLPID for IPv6.
*/
return gen_cmp(OR_LINK, 2, BPF_H, (0x03<<8) | 0x8e);
-#endif
case LLCSAP_ISONS:
/*
@@ -3585,7 +3566,6 @@ gen_hostop(addr, mask, dir, proto, src_off, dst_off)
return b1;
}
-#ifdef INET6
static struct block *
gen_hostop6(addr, mask, dir, proto, src_off, dst_off)
struct in6_addr *addr;
@@ -3637,7 +3617,6 @@ gen_hostop6(addr, mask, dir, proto, src_off, dst_off)
gen_and(b0, b1);
return b1;
}
-#endif /*INET6*/
static struct block *
gen_ehostop(eaddr, dir)
@@ -4515,13 +4494,11 @@ gen_host(addr, mask, proto, dir, type)
case Q_MOPRC:
bpf_error("MOPRC host filtering not implemented");
-#ifdef INET6
case Q_IPV6:
bpf_error("'ip6' modifier applied to ip host");
case Q_ICMPV6:
bpf_error("'icmp6' modifier applied to %s", typestr);
-#endif /* INET6 */
case Q_AH:
bpf_error("'ah' modifier applied to %s", typestr);
@@ -4559,7 +4536,6 @@ gen_host(addr, mask, proto, dir, type)
/* NOTREACHED */
}
-#ifdef INET6
static struct block *
gen_host6(addr, mask, proto, dir, type)
struct in6_addr *addr;
@@ -4678,7 +4654,6 @@ gen_host6(addr, mask, proto, dir, type)
}
/* NOTREACHED */
}
-#endif /*INET6*/
#ifndef INET6
static struct block *
@@ -4770,26 +4745,20 @@ gen_proto_abbrev(proto)
case Q_SCTP:
b1 = gen_proto(IPPROTO_SCTP, Q_IP, Q_DEFAULT);
-#ifdef INET6
b0 = gen_proto(IPPROTO_SCTP, Q_IPV6, Q_DEFAULT);
gen_or(b0, b1);
-#endif
break;
case Q_TCP:
b1 = gen_proto(IPPROTO_TCP, Q_IP, Q_DEFAULT);
-#ifdef INET6
b0 = gen_proto(IPPROTO_TCP, Q_IPV6, Q_DEFAULT);
gen_or(b0, b1);
-#endif
break;
case Q_UDP:
b1 = gen_proto(IPPROTO_UDP, Q_IP, Q_DEFAULT);
-#ifdef INET6
b0 = gen_proto(IPPROTO_UDP, Q_IPV6, Q_DEFAULT);
gen_or(b0, b1);
-#endif
break;
case Q_ICMP:
@@ -4817,10 +4786,8 @@ gen_proto_abbrev(proto)
case Q_PIM:
b1 = gen_proto(IPPROTO_PIM, Q_IP, Q_DEFAULT);
-#ifdef INET6
b0 = gen_proto(IPPROTO_PIM, Q_IPV6, Q_DEFAULT);
gen_or(b0, b1);
-#endif
break;
#ifndef IPPROTO_VRRP
@@ -4882,7 +4849,6 @@ gen_proto_abbrev(proto)
b1 = gen_linktype(ETHERTYPE_MOPRC);
break;
-#ifdef INET6
case Q_IPV6:
b1 = gen_linktype(ETHERTYPE_IPV6);
break;
@@ -4893,17 +4859,14 @@ gen_proto_abbrev(proto)
case Q_ICMPV6:
b1 = gen_proto(IPPROTO_ICMPV6, Q_IPV6, Q_DEFAULT);
break;
-#endif /* INET6 */
#ifndef IPPROTO_AH
#define IPPROTO_AH 51
#endif
case Q_AH:
b1 = gen_proto(IPPROTO_AH, Q_IP, Q_DEFAULT);
-#ifdef INET6
b0 = gen_proto(IPPROTO_AH, Q_IPV6, Q_DEFAULT);
gen_or(b0, b1);
-#endif
break;
#ifndef IPPROTO_ESP
@@ -4911,10 +4874,8 @@ gen_proto_abbrev(proto)
#endif
case Q_ESP:
b1 = gen_proto(IPPROTO_ESP, Q_IP, Q_DEFAULT);
-#ifdef INET6
b0 = gen_proto(IPPROTO_ESP, Q_IPV6, Q_DEFAULT);
gen_or(b0, b1);
-#endif
break;
case Q_ISO:
@@ -5047,7 +5008,6 @@ gen_portatom(off, v)
return gen_cmp(OR_TRAN_IPV4, off, BPF_H, v);
}
-#ifdef INET6
static struct block *
gen_portatom6(off, v)
int off;
@@ -5055,7 +5015,6 @@ gen_portatom6(off, v)
{
return gen_cmp(OR_TRAN_IPV6, off, BPF_H, v);
}
-#endif/*INET6*/
struct block *
gen_portop(port, proto, dir)
@@ -5147,7 +5106,6 @@ gen_port(port, ip_proto, dir)
return b1;
}
-#ifdef INET6
struct block *
gen_portop6(port, proto, dir)
int port, proto, dir;
@@ -5220,7 +5178,6 @@ gen_port6(port, ip_proto, dir)
gen_and(b0, b1);
return b1;
}
-#endif /* INET6 */
/* gen_portrange code */
static struct block *
@@ -5325,7 +5282,6 @@ gen_portrange(port1, port2, ip_proto, dir)
return b1;
}
-#ifdef INET6
static struct block *
gen_portrangeatom6(off, v1, v2)
int off;
@@ -5426,7 +5382,6 @@ gen_portrange6(port1, port2, ip_proto, dir)
gen_and(b0, b1);
return b1;
}
-#endif /* INET6 */
static int
lookup_proto(name, proto)
@@ -5561,7 +5516,7 @@ gen_protochain(v, proto, dir)
s[i]->s.k = off_macpl + off_nl;
i++;
break;
-#ifdef INET6
+
case Q_IPV6:
b0 = gen_linktype(ETHERTYPE_IPV6);
@@ -5574,7 +5529,7 @@ gen_protochain(v, proto, dir)
s[i]->s.k = 40;
i++;
break;
-#endif
+
default:
bpf_error("unsupported proto to gen_protochain");
/*NOTREACHED*/
@@ -5601,7 +5556,6 @@ gen_protochain(v, proto, dir)
fix2 = i;
i++;
-#ifdef INET6
if (proto == Q_IPV6) {
int v6start, v6end, v6advance, j;
@@ -5683,9 +5637,7 @@ gen_protochain(v, proto, dir)
/* fixup */
for (j = v6start; j <= v6end; j++)
s[j]->s.jt = s[v6advance];
- } else
-#endif
- {
+ } else {
/* nop */
s[i] = new_stmt(BPF_ALU|BPF_ADD|BPF_K);
s[i]->s.k = 0;
@@ -5829,25 +5781,20 @@ gen_proto(v, proto, dir)
int dir;
{
struct block *b0, *b1;
-#ifdef INET6
#ifndef CHASE_CHAIN
struct block *b2;
#endif
-#endif
if (dir != Q_DEFAULT)
bpf_error("direction applied to 'proto'");
switch (proto) {
case Q_DEFAULT:
-#ifdef INET6
b0 = gen_proto(v, Q_IP, dir);
b1 = gen_proto(v, Q_IPV6, dir);
gen_or(b0, b1);
return b1;
-#else
- /*FALLTHROUGH*/
-#endif
+
case Q_IP:
/*
* For FDDI, RFC 1188 says that SNAP encapsulation is used,
@@ -5998,7 +5945,6 @@ gen_proto(v, proto, dir)
bpf_error("'carp proto' is bogus");
/* NOTREACHED */
-#ifdef INET6
case Q_IPV6:
b0 = gen_linktype(ETHERTYPE_IPV6);
#ifndef CHASE_CHAIN
@@ -6019,7 +5965,6 @@ gen_proto(v, proto, dir)
case Q_ICMPV6:
bpf_error("'icmp6 proto' is bogus");
-#endif /* INET6 */
case Q_AH:
bpf_error("'ah proto' is bogus");
@@ -6276,13 +6221,9 @@ gen_scode(name, q)
bpf_error("illegal port number %d < 0", port);
if (port > 65535)
bpf_error("illegal port number %d > 65535", port);
-#ifndef INET6
- return gen_port(port, real_proto, dir);
-#else
b = gen_port(port, real_proto, dir);
gen_or(gen_port6(port, real_proto, dir), b);
return b;
-#endif /* INET6 */
case Q_PORTRANGE:
if (proto != Q_DEFAULT &&
@@ -6326,13 +6267,9 @@ gen_scode(name, q)
if (port2 > 65535)
bpf_error("illegal port number %d > 65535", port2);
-#ifndef INET6
- return gen_portrange(port1, port2, real_proto, dir);
-#else
b = gen_portrange(port1, port2, real_proto, dir);
gen_or(gen_portrange6(port1, port2, real_proto, dir), b);
return b;
-#endif /* INET6 */
case Q_GATEWAY:
#ifndef INET6
@@ -6480,16 +6417,12 @@ gen_ncode(s, v, q)
if (v > 65535)
bpf_error("illegal port number %u > 65535", v);
-#ifndef INET6
- return gen_port((int)v, proto, dir);
-#else
{
struct block *b;
b = gen_port((int)v, proto, dir);
gen_or(gen_port6((int)v, proto, dir), b);
return b;
}
-#endif /* INET6 */
case Q_PORTRANGE:
if (proto == Q_UDP)
@@ -6506,16 +6439,12 @@ gen_ncode(s, v, q)
if (v > 65535)
bpf_error("illegal port number %u > 65535", v);
-#ifndef INET6
- return gen_portrange((int)v, (int)v, proto, dir);
-#else
{
struct block *b;
b = gen_portrange((int)v, (int)v, proto, dir);
gen_or(gen_portrange6((int)v, (int)v, proto, dir), b);
return b;
}
-#endif /* INET6 */
case Q_GATEWAY:
bpf_error("'gateway' requires a name");
@@ -6805,9 +6734,7 @@ gen_load(proto, inst, size)
case Q_LAT:
case Q_MOPRC:
case Q_MOPDL:
-#ifdef INET6
case Q_IPV6:
-#endif
/*
* The offset is relative to the beginning of
* the network-layer header.
@@ -6916,16 +6843,12 @@ gen_load(proto, inst, size)
gen_and(gen_proto_abbrev(proto), b = gen_ipfrag());
if (inst->b)
gen_and(inst->b, b);
-#ifdef INET6
gen_and(gen_proto_abbrev(Q_IP), b);
-#endif
inst->b = b;
break;
-#ifdef INET6
case Q_ICMPV6:
bpf_error("IPv6 upper-layer protocol is not supported by proto[x]");
/*NOTREACHED*/
-#endif
}
inst->regno = regno;
s = new_stmt(BPF_ST);
@@ -7477,13 +7400,11 @@ gen_multicast(proto)
gen_and(b0, b1);
return b1;
-#ifdef INET6
case Q_IPV6:
b0 = gen_linktype(ETHERTYPE_IPV6);
b1 = gen_cmp(OR_NET, 24, BPF_B, (bpf_int32)255);
gen_and(b0, b1);
return b1;
-#endif /* INET6 */
}
bpf_error("link-layer multicast filters supported only on ethernet/FDDI/token ring/ARCNET/802.11/ATM LANE/Fibre Channel");
/* NOTREACHED */
diff --git a/scanner.l b/scanner.l
index 064e9c8..10ffbcd 100644
--- a/scanner.l
+++ b/scanner.l
@@ -206,20 +206,8 @@ vrrp return VRRP;
carp return CARP;
radio return RADIO;
-ip6 {
-#ifdef INET6
- return IPV6;
-#else
- bpf_error("%s not supported", yytext);
-#endif
- }
-icmp6 {
-#ifdef INET6
- return ICMPV6;
-#else
- bpf_error("%s not supported", yytext);
-#endif
- }
+ip6 return IPV6;
+icmp6 return ICMPV6;
ah return AH;
esp return ESP;
--
1.8.1.1

View file

@ -1,21 +0,0 @@
--- gencode.c.orig 2013-11-07 16:27:52.026496536 +0800
+++ gencode.c 2013-11-07 16:31:37.379512622 +0800
@@ -7507,6 +7507,18 @@
dir);
break;
+ case DLT_EN10MB:
+ /* ethernet flags (including direction) are stored
+ * the byte after the 3-byte magic number */
+ if (dir) {
+ /* match outgoing packets */
+ b0 = gen_mcmp(OR_LINK, 3, BPF_B, 1, 0x01);
+ } else {
+ /* incoming packets */
+ b0 = gen_mcmp(OR_LINK, 3, BPF_B, 0, 0x01);
+ }
+ break;
+
case DLT_IPNET:
if (dir) {
/* match outgoing packets */

View file

@ -0,0 +1,15 @@
Prefix' Darwin systems are single arch, hijack Darwin7 case which assumes this setup
Check for bluetooth/mgmt.h before use
--- a/configure.in
+++ b/configure.in
@@ -1117,7 +1117,7 @@
if test "$enable_universal" != "no"; then
case "$host_os" in
- darwin[0-7].*)
+ darwin**)
#
# Pre-Tiger. Build only for 32-bit PowerPC; no
# need for any special compiler or linker flags.

View file

@ -0,0 +1,36 @@
Prefix' Solaris uses GNU ld
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -415,7 +415,7 @@
aix*)
;;
- freebsd*|netbsd*|openbsd*|dragonfly*|linux*|osf*)
+ freebsd*|solaris*|netbsd*|openbsd*|dragonfly*|linux*|osf*)
#
# Platforms where the linker is the GNU linker
# or accepts command-line arguments like
@@ -429,10 +429,10 @@
PIC_OPT=-fpic
case "$host_cpu" in
- sparc64*)
+ sparc64*|sparcv9*)
case "$host_os" in
- freebsd*|openbsd*)
+ freebsd*|solaris*|openbsd*)
PIC_OPT=-fPIC
;;
esac
@@ -497,7 +497,7 @@
V_SHLIB_OPT="-G -bnoentry -bexpall"
;;
- freebsd*|netbsd*|openbsd*|dragonfly*|linux*)
+ freebsd*|solaris*|netbsd*|openbsd*|dragonfly*|linux*)
#
# "cc" is GCC.
#

View file

@ -0,0 +1,19 @@
--- a/configure.in
+++ b/configure.in
@@ -1633,16 +1633,6 @@
#
AC_MSG_ERROR([Due to freedesktop.org bug 74029, D-Bus capture support is not available on OS X])
;;
- esac
- else
- case "$host_os" in
-
- darwin*)
- #
- # https://bugs.freedesktop.org/show_bug.cgi?id=74029
- #
- ;;
-
*)
AC_CHECK_PROG([PKGCONFIG], [pkg-config], [pkg-config], [no])
if test "x$PKGCONFIG" != "xno"; then

View file

@ -0,0 +1,33 @@
/*
* BlueZ - Bluetooth protocol stack for Linux
*
* Copyright (C) 2010 Nokia Corporation
* Copyright (C) 2010 Marcel Holtmann <marcel@holtmann.org>
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*
*/
#ifndef __packed
#define __packed __attribute__((packed))
#endif
struct mgmt_hdr {
uint16_t opcode;
uint16_t index;
uint16_t len;
} __packed;
#define MGMT_HDR_SIZE 6

View file

@ -1,65 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-libs/libpcap/libpcap-1.3.0-r1.ebuild,v 1.2 2013/02/20 22:57:19 zmedico Exp $
EAPI=4
inherit autotools eutils
DESCRIPTION="A system-independent library for user-level network packet capture"
HOMEPAGE="http://www.tcpdump.org/"
SRC_URI="http://www.tcpdump.org/release/${P}.tar.gz
http://www.jp.tcpdump.org/release/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE="8021xbridge bluetooth ipv6 netlink static-libs canusb"
RDEPEND="bluetooth? ( net-wireless/bluez )
netlink? ( dev-libs/libnl:1.1 )
canusb? ( virtual/libusb )"
DEPEND="${RDEPEND}
sys-devel/flex
virtual/yacc"
DOCS=( CREDITS CHANGES VERSION TODO README{,.dag,.linux,.macosx,.septel} )
src_prepare() {
epatch \
"${FILESDIR}"/${PN}-1.2.0-cross-linux.patch \
"${FILESDIR}"/${PN}-1.3.0-canusb.patch \
"${FILESDIR}"/${P}-fix-systems-without-ipv6-support.patch
use 8021xbridge && epatch "${FILESDIR}"/${P}-for-inbound-outbount-on-ethernet.patch
# Prefix' Solaris uses GNU ld
sed -i -e 's/freebsd\*/freebsd*|solaris*/' \
-e 's/sparc64\*/sparc64*|sparcv9*/' aclocal.m4 || die
eautoreconf
}
src_configure() {
econf \
$(use_enable bluetooth) \
$(use_enable ipv6) \
$(use_enable canusb) \
$(use_with netlink libnl)
}
src_compile() {
emake all shared
}
src_install() {
default
# remove static libraries (--disable-static does not work)
if ! use static-libs; then
find "${ED}" -name '*.a' -exec rm {} + || die
fi
# We need this to build pppd on G/FBSD systems
if [[ "${USERLAND}" == "BSD" ]]; then
insinto /usr/include
doins pcap-int.h
fi
}

View file

@ -0,0 +1,71 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-libs/libpcap/libpcap-1.6.2-r1.ebuild,v 1.4 2014/10/23 14:27:09 pacho Exp $
EAPI=5
inherit autotools eutils multilib-minimal
DESCRIPTION="A system-independent library for user-level network packet capture"
HOMEPAGE="http://www.tcpdump.org/"
SRC_URI="http://www.tcpdump.org/release/${P}.tar.gz
http://www.jp.tcpdump.org/release/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE="8021xbridge bluetooth dbus ipv6 netlink static-libs canusb"
RDEPEND="
bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
canusb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}
sys-devel/flex
virtual/yacc
dbus? ( virtual/pkgconfig[${MULTILIB_USEDEP}] )
"
DOCS=( CREDITS CHANGES VERSION TODO README{,.dag,.linux,.macosx,.septel} )
src_prepare() {
epatch "${FILESDIR}"/${PN}-1.2.0-cross-linux.patch
epatch "${FILESDIR}"/${PN}-1.6.1-configure.patch
epatch "${FILESDIR}"/${PN}-1.6.1-prefix-solaris.patch
epatch "${FILESDIR}"/${PN}-1.6.2-dbus.patch
use 8021xbridge && epatch "${FILESDIR}"/${PN}-1.5.3-for-inbound-outbount-on-ethernet.patch
mkdir bluetooth || die
cp "${FILESDIR}"/mgmt.h bluetooth/ || die
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE="${S}" \
econf \
$(use_enable bluetooth) \
$(use_enable ipv6) \
$(use_enable canusb) \
$(use_enable dbus) \
$(use_with netlink libnl)
}
multilib_src_compile() {
emake all shared
}
multilib_src_install_all() {
# remove static libraries (--disable-static does not work)
if ! use static-libs; then
find "${ED}" -name '*.a' -exec rm {} + || die
fi
prune_libtool_files
# We need this to build pppd on G/FBSD systems
if [[ "${USERLAND}" == "BSD" ]]; then
insinto /usr/include
doins pcap-int.h
fi
}