summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2010-09-14 01:58:24 +0000
committerMike Frysinger <vapier@gentoo.org>2010-09-14 01:58:24 +0000
commit4ad577c95efb9170f0ec0292ae72a826a827a392 (patch)
treeba1fa6273d43e1f7ff2639ba9c1ef2d30915ece0 /net-misc/iputils
parentx86 stable wrt bug #334943 (diff)
downloadgentoo-2-4ad577c95efb9170f0ec0292ae72a826a827a392.tar.gz
gentoo-2-4ad577c95efb9170f0ec0292ae72a826a827a392.tar.bz2
gentoo-2-4ad577c95efb9170f0ec0292ae72a826a827a392.zip
Add fix for arping broadcast handling #337049 by Aleksander Machniak.
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'net-misc/iputils')
-rw-r--r--net-misc/iputils/ChangeLog8
-rw-r--r--net-misc/iputils/files/iputils-20100418-arping-broadcast.patch50
-rw-r--r--net-misc/iputils/iputils-20100418-r1.ebuild74
3 files changed, 131 insertions, 1 deletions
diff --git a/net-misc/iputils/ChangeLog b/net-misc/iputils/ChangeLog
index f85bf3fae605..0afb190f300c 100644
--- a/net-misc/iputils/ChangeLog
+++ b/net-misc/iputils/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-misc/iputils
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/ChangeLog,v 1.86 2010/09/06 20:11:05 ranger Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/ChangeLog,v 1.87 2010/09/14 01:58:24 vapier Exp $
+
+*iputils-20100418-r1 (14 Sep 2010)
+
+ 14 Sep 2010; Mike Frysinger <vapier@gentoo.org> +iputils-20100418-r1.ebuild,
+ +files/iputils-20100418-arping-broadcast.patch:
+ Add fix for arping broadcast handling #337049 by Aleksander Machniak.
06 Sep 2010; Brent Baude <ranger@gentoo.org> iputils-20100418.ebuild:
Marking iputils-20100418 ppc64 for bug 332527
diff --git a/net-misc/iputils/files/iputils-20100418-arping-broadcast.patch b/net-misc/iputils/files/iputils-20100418-arping-broadcast.patch
new file mode 100644
index 000000000000..a5c906346bda
--- /dev/null
+++ b/net-misc/iputils/files/iputils-20100418-arping-broadcast.patch
@@ -0,0 +1,50 @@
+http://bugs.gentoo.org/337049
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=585591
+
+From: Jesper Dangaard Brouer <hawk@comx.dk>
+Subject: [PATCH] iputils: arping fails to set correct broadcast address
+
+From: Paul Martin <pm@debian.org>
+
+There seems to have been introduced a bug in iputils release s20100418.
+
+This patch is based upon git://www.linux-ipv6.org/gitroot/iputils.git
+(git commit fe342ca3148)
+
+The regression is caused by commit 56018bf1b3
+ arping: Support link-layer type with larger link-layer address.
+
+As reported by: Paul Martin <pm@debian.org> in Debian bugreport #585591.
+
+ There's a logic error in the function that parses the interface's
+ broadcast address, causing it not to fill the broadcast address array
+ correctly.
+
+Please apply.
+
+Reported-by: Paul Martin <pm@debian.org>
+Tested-by: Jesper Dangaard Brouer <hawk@comx.dk>
+Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk>
+---
+ arping.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/arping.c b/arping.c
+index 9bd6927..2613a12 100644
+--- a/arping.c
++++ b/arping.c
+@@ -336,7 +336,7 @@ void set_device_broadcast(char *device, unsigned char *ba, size_t balen)
+ }
+
+ for (p = ba, ch = 0; p < ba + balen; p++, ch += 3)
+- *p++ = strtoul(brdcast->value + ch * 3, NULL, 16);
++ *p = strtoul(brdcast->value + ch, NULL, 16);
+
+ return;
+ }
+
+
+
+
+
+
diff --git a/net-misc/iputils/iputils-20100418-r1.ebuild b/net-misc/iputils/iputils-20100418-r1.ebuild
new file mode 100644
index 000000000000..1369b0d1ee7f
--- /dev/null
+++ b/net-misc/iputils/iputils-20100418-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/iputils-20100418-r1.ebuild,v 1.1 2010/09/14 01:58:24 vapier Exp $
+
+inherit flag-o-matic eutils toolchain-funcs
+
+DESCRIPTION="Network monitoring tools including ping and ping6"
+HOMEPAGE="http://www.linux-foundation.org/en/Net:Iputils"
+SRC_URI="http://www.skbuff.net/iputils/iputils-s${PV}.tar.bz2
+ mirror://gentoo/iputils-s${PV}-manpages.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux"
+IUSE="doc idn ipv6 SECURITY_HAZARD ssl static"
+
+# sysfsutils is needed for libsysfs which is used by arping only
+RDEPEND="!net-misc/rarpd
+ ssl? ( dev-libs/openssl )
+ idn? ( net-dns/libidn )
+ sys-fs/sysfsutils"
+DEPEND="${RDEPEND}
+ virtual/os-headers"
+
+S=${WORKDIR}/${PN}-s${PV}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/021109-uclibc-no-ether_ntohost.patch
+ epatch "${FILESDIR}"/${PN}-20100418-arping-broadcast.patch #337049
+ epatch "${FILESDIR}"/${PN}-20100418-openssl.patch #335436
+ epatch "${FILESDIR}"/${PN}-20100418-so_mark.patch #335347
+ epatch "${FILESDIR}"/${PN}-20100418-makefile.patch
+ epatch "${FILESDIR}"/${PN}-20100418-proper-libs.patch #332703
+ epatch "${FILESDIR}"/${PN}-20100418-printf-size.patch
+ epatch "${FILESDIR}"/${PN}-20100418-aliasing.patch
+ epatch "${FILESDIR}"/${PN}-20071127-kernel-ifaddr.patch
+ epatch "${FILESDIR}"/${PN}-20070202-idn.patch #218638
+ epatch "${FILESDIR}"/${PN}-20100418-ping-CVE-2010-2529.patch #332527
+ use SECURITY_HAZARD && epatch "${FILESDIR}"/${PN}-20071127-nonroot-floodping.patch
+ use static && append-ldflags -static
+ use ssl && append-cppflags -DHAVE_OPENSSL
+ use ipv6 || sed -i -e 's:IPV6_TARGETS=:#IPV6_TARGETS=:' Makefile
+ export IDN=$(use idn && echo yes)
+}
+
+src_compile() {
+ tc-export CC
+ emake || die "make main failed"
+}
+
+src_install() {
+ into /
+ dobin ping || die "ping"
+ use ipv6 && dobin ping6
+ dosbin arping || die "arping"
+ into /usr
+ dosbin tracepath || die "tracepath"
+ use ipv6 && dosbin trace{path,route}6
+ dosbin clockdiff rarpd rdisc ipg tftpd || die "misc sbin"
+
+ fperms 4711 /bin/ping
+ use ipv6 && fperms 4711 /bin/ping6 /usr/sbin/traceroute6
+
+ dodoc INSTALL RELNOTES
+ use ipv6 \
+ && dosym ping.8 /usr/share/man/man8/ping6.8 \
+ || rm -f doc/*6.8
+ rm -f doc/setkey.8
+ doman doc/*.8
+
+ use doc && dohtml doc/*.html
+}