summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/iputils')
-rw-r--r--net-misc/iputils/ChangeLog6
-rw-r--r--net-misc/iputils/files/digest-iputils-021109-r32
-rw-r--r--net-misc/iputils/files/iputils-021109-ipv6-updates.patch84
-rw-r--r--net-misc/iputils/iputils-021109-r3.ebuild3
4 files changed, 93 insertions, 2 deletions
diff --git a/net-misc/iputils/ChangeLog b/net-misc/iputils/ChangeLog
index e350b6f24880..cf877d282770 100644
--- a/net-misc/iputils/ChangeLog
+++ b/net-misc/iputils/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for net-misc/iputils
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/ChangeLog,v 1.41 2006/06/08 10:57:02 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/ChangeLog,v 1.42 2006/08/20 07:26:41 vapier Exp $
+
+ 20 Aug 2006; Mike Frysinger <vapier@gentoo.org>
+ +files/iputils-021109-ipv6-updates.patch, iputils-021109-r3.ebuild:
+ Handle ipv6 define updates in newer kernels #134751 by Mekong.
08 Jun 2006; Mike Frysinger <vapier@gentoo.org>
+files/iputils-021109-gcc4.patch, iputils-021109-r3.ebuild:
diff --git a/net-misc/iputils/files/digest-iputils-021109-r3 b/net-misc/iputils/files/digest-iputils-021109-r3
index ea769a132e46..2396ba35bbb0 100644
--- a/net-misc/iputils/files/digest-iputils-021109-r3
+++ b/net-misc/iputils/files/digest-iputils-021109-r3
@@ -1 +1,3 @@
MD5 dd10ef3d76480990a2174d2bb0daddaf iputils-ss021109-try.tar.bz2 428335
+RMD160 7786bff8416164906208d47853af83581195c6b6 iputils-ss021109-try.tar.bz2 428335
+SHA256 06ea9c83b5ff1ed02f526ed798a59e949793da1c232457077e75fcc8a10cdcb4 iputils-ss021109-try.tar.bz2 428335
diff --git a/net-misc/iputils/files/iputils-021109-ipv6-updates.patch b/net-misc/iputils/files/iputils-021109-ipv6-updates.patch
new file mode 100644
index 000000000000..f6ccfed6caa4
--- /dev/null
+++ b/net-misc/iputils/files/iputils-021109-ipv6-updates.patch
@@ -0,0 +1,84 @@
+Handle ipv6 define changes
+
+http://bugs.gentoo.org/134751
+
+--- iputils/ping_common.h
++++ iputils/ping_common.h
+@@ -37,6 +37,17 @@
+ #define CLR(bit) (A(bit) &= (~B(bit)))
+ #define TST(bit) (A(bit) & B(bit))
+
++/* handle updates to IPV6 defines */
++#ifndef IPV6_2292PKTINFO
++# define IPV6_2292PKTINFO IPV6_PKTINFO
++#endif
++#ifndef IPV6_2292RTHDR
++# define IPV6_2292RTHDR IPV6_RTHDR
++#endif
++#ifndef IPV6_2292HOPLIMIT
++# define IPV6_2292HOPLIMIT IPV6_HOPLIMIT
++#endif
++
+ /* various options */
+ extern int options;
+ #define F_FLOOD 0x001
+--- iputils/ping6.c
++++ iputils/ping6.c
+@@ -153,7 +153,7 @@ extern struct cmsghdr * inet6_srcrt_init
+
+ cmsg->cmsg_len = sizeof(struct cmsghdr) + sizeof(struct rt0_hdr);
+ cmsg->cmsg_level = SOL_IPV6;
+- cmsg->cmsg_type = IPV6_RTHDR;
++ cmsg->cmsg_type = IPV6_2292RTHDR;
+
+ return cmsg;
+ }
+@@ -372,7 +372,7 @@ int main(int argc, char *argv[])
+ cmsglen += CMSG_SPACE(sizeof(*ipi));
+ cmsg->cmsg_len = CMSG_LEN(sizeof(*ipi));
+ cmsg->cmsg_level = SOL_IPV6;
+- cmsg->cmsg_type = IPV6_PKTINFO;
++ cmsg->cmsg_type = IPV6_2292PKTINFO;
+
+ ipi = (struct in6_pktinfo*)CMSG_DATA(cmsg);
+ memset(ipi, 0, sizeof(*ipi));
+@@ -483,7 +483,7 @@ int main(int argc, char *argv[])
+
+ if (1) {
+ int on = 1;
+- if (setsockopt(icmp_sock, IPPROTO_IPV6, IPV6_HOPLIMIT,
++ if (setsockopt(icmp_sock, IPPROTO_IPV6, IPV6_2292HOPLIMIT,
+ &on, sizeof(on)) == -1) {
+ perror ("can't receive hop limit");
+ exit(2);
+@@ -701,7 +701,7 @@ parse_reply(struct msghdr *msg, int cc,
+
+ for (c = CMSG_FIRSTHDR(msg); c; c = CMSG_NXTHDR(msg, c)) {
+ if (c->cmsg_level != SOL_IPV6 ||
+- c->cmsg_type != IPV6_HOPLIMIT)
++ c->cmsg_type != IPV6_2292HOPLIMIT)
+ continue;
+ if (c->cmsg_len < CMSG_LEN(sizeof(int)))
+ continue;
+--- iputils/tracepath6.c
++++ iputils/tracepath6.c
+@@ -111,7 +111,7 @@ int recverr(int fd, int ttl)
+ if (cmsg->cmsg_level == SOL_IPV6) {
+ if (cmsg->cmsg_type == IPV6_RECVERR) {
+ e = (struct sock_extended_err *)CMSG_DATA(cmsg);
+- } else if (cmsg->cmsg_type == IPV6_HOPLIMIT) {
++ } else if (cmsg->cmsg_type == IPV6_2292HOPLIMIT) {
+ rethops = *(int*)CMSG_DATA(cmsg);
+ }
+ } else if (cmsg->cmsg_level == SOL_IP) {
+@@ -349,8 +349,8 @@ int main(int argc, char **argv)
+ perror("IP_RECVERR");
+ exit(1);
+ }
+- if (setsockopt(fd, SOL_IPV6, IPV6_HOPLIMIT, &on, sizeof(on))) {
+- perror("IPV6_HOPLIMIT");
++ if (setsockopt(fd, SOL_IPV6, IPV6_2292HOPLIMIT, &on, sizeof(on))) {
++ perror("IPV6_2292HOPLIMIT");
+ exit(1);
+ }
+ if (mapped && setsockopt(fd, SOL_IP, IP_RECVTTL, &on, sizeof(on))) {
diff --git a/net-misc/iputils/iputils-021109-r3.ebuild b/net-misc/iputils/iputils-021109-r3.ebuild
index b71b6fdbc29c..b822afec942a 100644
--- a/net-misc/iputils/iputils-021109-r3.ebuild
+++ b/net-misc/iputils/iputils-021109-r3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/iputils-021109-r3.ebuild,v 1.25 2006/06/08 10:57:02 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/iputils-021109-r3.ebuild,v 1.26 2006/08/20 07:26:41 vapier Exp $
inherit flag-o-matic eutils toolchain-funcs
@@ -35,6 +35,7 @@ src_unpack() {
epatch "${FILESDIR}"/${PV}-syserror.patch
epatch "${FILESDIR}"/${PV}-uclibc-no-ether_ntohost.patch
epatch "${FILESDIR}"/${P}-bindnow.patch #77526
+ epatch "${FILESDIR}"/${P}-ipv6-updates.patch #134751
# make iputils work with newer glibc snapshots
epatch "${FILESDIR}"/${P}-linux-udp-header.patch