Fix segfault when trying to use qdisc_fast #108307 by jens zettelmeyer.
authorMike Frysinger <vapier@gentoo.org>
Fri, 7 Oct 2005 00:33:45 +0000 (00:33 +0000)
committerMike Frysinger <vapier@gentoo.org>
Fri, 7 Oct 2005 00:33:45 +0000 (00:33 +0000)
Package-Manager: portage-2.0.53_rc4

sys-apps/iproute2/ChangeLog
sys-apps/iproute2/Manifest
sys-apps/iproute2/files/digest-iproute2-2.6.11.20050330-r1 [new file with mode: 0644]
sys-apps/iproute2/files/iproute2-2.6.11.20050330-tc-check-qdisc-features.patch [new file with mode: 0644]
sys-apps/iproute2/iproute2-2.6.11.20050330-r1.ebuild [new file with mode: 0644]

index 9fd78a3efff24b5ed931d209903355f8e1ec0fd3..b964b67ccda1fb535c10ea712f3268e899452906 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for sys-apps/iproute2
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/ChangeLog,v 1.40 2005/08/09 22:33:50 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/ChangeLog,v 1.41 2005/10/07 00:33:45 vapier Exp $
+
+*iproute2-2.6.11.20050330-r1 (07 Oct 2005)
+
+  07 Oct 2005; Mike Frysinger <vapier@gentoo.org>
+  +files/iproute2-2.6.11.20050330-tc-check-qdisc-features.patch,
+  +iproute2-2.6.11.20050330-r1.ebuild:
+  Fix segfault when trying to use qdisc_fast #108307 by jens zettelmeyer.
 
   09 Aug 2005; Mike Frysinger <vapier@gentoo.org>
   +files/iproute2-2.6.11.20050330-stack.patch,
index 8eb6f85417b4da7467e4602b3e2725264a1de379..83b5afc3af5398aa81cccb155208e6bd53e17d17 100644 (file)
@@ -1,34 +1,37 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-MD5 f655e89f2904cde2d5477888e4093223 iproute2-2.6.7.20040608-r1.ebuild 2370
-MD5 709dbf98dc0700958ab5e1c5401e8f38 iproute2-2.6.10.20050124.ebuild 1881
-MD5 d3cde7b6b34b2e85954f70dc2742ac63 iproute2-2.6.10.20050112-r1.ebuild 1791
-MD5 d0dad7daa0e6d356fc35f778fed36006 metadata.xml 225
-MD5 c85837da88acbf2b1650f1bc8a1170d0 iproute2-2.6.11.20050310-r1.ebuild 1953
-MD5 988666dfd51295a76a3d0c57d5140462 iproute2-2.6.11.20050310-r2.ebuild 1959
-MD5 8de523c2d0b0cbaa916f3ae704261b92 iproute2-2.6.11.20050330.ebuild 1990
-MD5 eb96723fc5fe2484d9393a9c5d57b5d2 ChangeLog 10279
+MD5 b87ce094df3e9fea62fdd5b93220a4ba ChangeLog 10552
+MD5 d3a321fa8b70eef6df11d7343a14fd02 files/2.4.7.20020116-hfsc.patch 9507
+MD5 2469b9a3673ce5a18fa92cfb7c98a71f files/2.6.12-rc1-esfq.patch 5677
+MD5 d0071e387038661c76eefb2c8e6b5c46 files/2.6.7.20040608-misc-deb-fixes.patch 632
 MD5 24a69d69fb222231a8d0f4358743190f files/2.6.7.20040608-misc-gentoo-fixes.patch 3970
-MD5 6076b8af87231defd7a1c2db9473c299 files/iproute2-2.6.11.20050310-dsmark-qdisc.patch 1354
-MD5 01450900cfa9fb721b061db655723598 files/2.6.9.20041106-esfq.patch 5621
-MD5 efc13e1a9a4a7bd080305d540ff5d48d files/digest-iproute2-2.6.7.20040608-r1 75
-MD5 b44fead085cc41126320e2bde31bc129 files/digest-iproute2-2.6.10.20050124 76
 MD5 15351b34e440824e7d161876d4b01c3c files/2.6.9.20041019-wrr.patch 14150
-MD5 d0071e387038661c76eefb2c8e6b5c46 files/2.6.7.20040608-misc-deb-fixes.patch 632
-MD5 f2f62bc9b7aa8ad751e47fa11a952976 files/iproute2-2.6.11.20050330-wrr.patch 13574
-MD5 2469b9a3673ce5a18fa92cfb7c98a71f files/2.6.12-rc1-esfq.patch 5677
+MD5 01450900cfa9fb721b061db655723598 files/2.6.9.20041106-esfq.patch 5621
 MD5 5375310c6504f47ed3050805eb2675bc files/digest-iproute2-2.6.10.20050112-r1 76
+MD5 b44fead085cc41126320e2bde31bc129 files/digest-iproute2-2.6.10.20050124 76
+MD5 9b7de448bf17e80895da676709f9e93e files/digest-iproute2-2.6.11.20050310-r1 74
+MD5 9b7de448bf17e80895da676709f9e93e files/digest-iproute2-2.6.11.20050310-r2 74
 MD5 c697aa743be2a6d8eb675cc5e02877e3 files/digest-iproute2-2.6.11.20050330 74
-MD5 6cfe7abf202c01359e341709237fc2df files/iproute2-2.6.11.20050330-stack.patch 306
+MD5 c697aa743be2a6d8eb675cc5e02877e3 files/digest-iproute2-2.6.11.20050330-r1 74
+MD5 efc13e1a9a4a7bd080305d540ff5d48d files/digest-iproute2-2.6.7.20040608-r1 75
+MD5 6076b8af87231defd7a1c2db9473c299 files/iproute2-2.6.11.20050310-dsmark-qdisc.patch 1354
 MD5 b98e894fb240a70345248f67b6b8caff files/iproute2-2.6.11.20050330-parallel-build.patch 685
-MD5 9b7de448bf17e80895da676709f9e93e files/digest-iproute2-2.6.11.20050310-r2 74
-MD5 9b7de448bf17e80895da676709f9e93e files/digest-iproute2-2.6.11.20050310-r1 74
-MD5 d3a321fa8b70eef6df11d7343a14fd02 files/2.4.7.20020116-hfsc.patch 9507
+MD5 6cfe7abf202c01359e341709237fc2df files/iproute2-2.6.11.20050330-stack.patch 306
+MD5 6af5cf770337ca0eaad9f75b1c2555bb files/iproute2-2.6.11.20050330-tc-check-qdisc-features.patch 769
+MD5 f2f62bc9b7aa8ad751e47fa11a952976 files/iproute2-2.6.11.20050330-wrr.patch 13574
+MD5 d3cde7b6b34b2e85954f70dc2742ac63 iproute2-2.6.10.20050112-r1.ebuild 1791
+MD5 709dbf98dc0700958ab5e1c5401e8f38 iproute2-2.6.10.20050124.ebuild 1881
+MD5 c85837da88acbf2b1650f1bc8a1170d0 iproute2-2.6.11.20050310-r1.ebuild 1953
+MD5 988666dfd51295a76a3d0c57d5140462 iproute2-2.6.11.20050310-r2.ebuild 1959
+MD5 3d6ac614cd0209e1d663628ec1a6ae73 iproute2-2.6.11.20050330-r1.ebuild 2050
+MD5 8de523c2d0b0cbaa916f3ae704261b92 iproute2-2.6.11.20050330.ebuild 1990
+MD5 f655e89f2904cde2d5477888e4093223 iproute2-2.6.7.20040608-r1.ebuild 2370
+MD5 d0dad7daa0e6d356fc35f778fed36006 metadata.xml 225
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.2 (GNU/Linux)
 
-iD8DBQFDC7eUgIKl8Uu19MoRAgwYAJ9nu7FC8G8ikh7GjIHfyuN0p1bedQCfQhQO
-w7POLFns7uuDyX8Bw5G9bc4=
-=g1WH
+iD8DBQFDRcLKgIKl8Uu19MoRAliNAJ43TYCABQQ4bTjWPdzW/3MlAZaBEQCeK7Bg
+aoz6X9zFjSuq2SsJ61mZnEw=
+=ei0F
 -----END PGP SIGNATURE-----
diff --git a/sys-apps/iproute2/files/digest-iproute2-2.6.11.20050330-r1 b/sys-apps/iproute2/files/digest-iproute2-2.6.11.20050330-r1
new file mode 100644 (file)
index 0000000..f938b1e
--- /dev/null
@@ -0,0 +1 @@
+MD5 e705f26b5ae93e0332e46ae3ff15d934 iproute2-2.6.11-050330.tar.gz 347051
diff --git a/sys-apps/iproute2/files/iproute2-2.6.11.20050330-tc-check-qdisc-features.patch b/sys-apps/iproute2/files/iproute2-2.6.11.20050330-tc-check-qdisc-features.patch
new file mode 100644 (file)
index 0000000..2c1c277
--- /dev/null
@@ -0,0 +1,29 @@
+Make sure BODY is initialized before we use it and make sure the specified
+q_disc supports option parsing before calling parse_qopt()
+
+http://bugs.gentoo.org/108307
+
+--- tc/tc.c
++++ tc/tc.c
+@@ -38,7 +38,7 @@
+ int force = 0;
+ struct rtnl_handle rth;
+ 
+-static void *BODY;    /* cached handle dlopen(NULL) */
++static void *BODY = NULL;     /* cached handle dlopen(NULL) */
+ static struct qdisc_util * qdisc_list;
+ static struct filter_util * filter_list;
+ 
+--- tc/tc_qdisc.c
++++ tc/tc_qdisc.c
+@@ -126,6 +126,10 @@
+               addattr_l(&req.n, sizeof(req), TCA_RATE, &est, sizeof(est));
+ 
+       if (q) {
++              if (!q->parse_qopt) {
++                      fprintf(stderr, "qdisc '%s' does not support option parsing\n", k);
++                      return -1;
++              }
+               if (q->parse_qopt(q, argc, argv, &req.n))
+                       return 1;
+       } else {
diff --git a/sys-apps/iproute2/iproute2-2.6.11.20050330-r1.ebuild b/sys-apps/iproute2/iproute2-2.6.11.20050330-r1.ebuild
new file mode 100644 (file)
index 0000000..ae25611
--- /dev/null
@@ -0,0 +1,78 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-2.6.11.20050330-r1.ebuild,v 1.1 2005/10/07 00:33:45 vapier Exp $
+
+inherit eutils toolchain-funcs
+
+MY_PV=${PV%.*}
+SNAP=${PV##*.}
+SNAP=${SNAP:2}
+DESCRIPTION="kernel routing and traffic control utilities"
+HOMEPAGE="http://developer.osdl.org/dev/iproute2/"
+SRC_URI="http://developer.osdl.org/dev/iproute2/download/${PN}-${MY_PV}-${SNAP}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="atm berkdb minimal"
+
+RDEPEND="!minimal? ( berkdb? ( sys-libs/db ) )
+       atm? ( net-dialup/linux-atm )"
+DEPEND="${RDEPEND}
+       >=virtual/os-headers-2.4.21"
+
+S=${WORKDIR}/${PN}-${MY_PV}-${SNAP}
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       sed -i -e "s:-O2:${CFLAGS}:" Makefile || die "sed Makefile failed"
+       epatch "${FILESDIR}"/${P}-stack.patch
+       epatch "${FILESDIR}"/${P}-parallel-build.patch
+       epatch "${FILESDIR}"/${P}-tc-check-qdisc-features.patch
+       #68948 - esfq/wrr patches
+       epatch \
+               "${FILESDIR}"/2.6.12-rc1-esfq.patch \
+               "${FILESDIR}"/${P}-wrr.patch
+       # don't build arpd if USE=-berkdb #81660
+       use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile
+       # Multilib fixes
+       sed -i 's:/usr/local:/usr:' tc/m_ipt.c
+       sed -i "s:/usr/lib/tc:/usr/$(get_libdir)/tc:g" \
+               tc/Makefile tc/tc.c tc/q_netem.c || die
+}
+
+src_compile() {
+       echo -n 'TC_CONFIG_ATM:=' > Config
+       use atm \
+               && echo 'y' >> Config \
+               || echo 'n' >> Config
+
+       local SUBDIRS="lib ip tc misc netem"
+       use minimal && SUBDIRS="lib tc"
+       emake \
+               CC="$(tc-getCC)" \
+               AR="$(tc-getAR)" \
+               SUBDIRS="${SUBDIRS}" \
+               || die "make"
+}
+
+src_install() {
+       if use minimal; then
+               into /
+               dosbin tc/tc || die "minimal"
+               return 0
+       fi
+
+       make \
+               DESTDIR="${D}" \
+               SBINDIR=/sbin \
+               DOCDIR=/usr/share/doc/${PF} \
+               install \
+               || die "make install failed"
+       if use berkdb ; then
+               # bug 47482, arpd doesn't need to be in /sbin
+               dodir /usr/sbin
+               mv "${D}"/sbin/arpd "${D}"/usr/sbin/
+       fi
+}