Add print-802_11.c patch for bug 168916. Thanks to Executioner <executioner at phobik...
authorMarcelo Góes <vanquirius@gentoo.org>
Fri, 2 Mar 2007 02:31:52 +0000 (02:31 +0000)
committerMarcelo Góes <vanquirius@gentoo.org>
Fri, 2 Mar 2007 02:31:52 +0000 (02:31 +0000)
Package-Manager: portage-2.1.1-r2

net-analyzer/tcpdump/ChangeLog
net-analyzer/tcpdump/files/digest-tcpdump-3.9.5-r2 [new file with mode: 0644]
net-analyzer/tcpdump/files/tcpdump-3.9.5-print-802_11.c.diff [new file with mode: 0644]
net-analyzer/tcpdump/tcpdump-3.9.5-r2.ebuild [new file with mode: 0644]

index 1bffb1a210830bef455bb8ffa27ac4ab5dc0e9ff..4d84529a96517a117f7b6cabf5bf32d83ac67eaa 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for net-analyzer/tcpdump
-# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-analyzer/tcpdump/ChangeLog,v 1.87 2006/12/18 20:12:49 eroyf Exp $
+# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-analyzer/tcpdump/ChangeLog,v 1.88 2007/03/02 02:31:52 vanquirius Exp $
+
+*tcpdump-3.9.5-r2 (02 Mar 2007)
+
+  02 Mar 2007; Marcelo Goes <vanquirius@gentoo.org>
+  +files/tcpdump-3.9.5-print-802_11.c.diff, -tcpdump-3.9.3.ebuild,
+  -tcpdump-3.9.4.ebuild, +tcpdump-3.9.5-r2.ebuild:
+  Add print-802_11.c patch for bug 168916. Thanks to Executioner <executioner
+  at phobik dot org>. Also, removing old ebuilds.
 
   18 Dec 2006; Alexander H. Færøy <eroyf@gentoo.org>
   tcpdump-3.9.4-r3.ebuild:
diff --git a/net-analyzer/tcpdump/files/digest-tcpdump-3.9.5-r2 b/net-analyzer/tcpdump/files/digest-tcpdump-3.9.5-r2
new file mode 100644 (file)
index 0000000..c7b2ab6
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 2135e7b1f09af0eaf66d2af822bed44a tcpdump-3.9.5.tar.gz 712411
+RMD160 e0409ad55deda1b2a74950522720610c6c94d771 tcpdump-3.9.5.tar.gz 712411
+SHA256 6a1617253f12bf2ac440eeb8709baeb907c6b801442bf2229a6bb84489cf38f4 tcpdump-3.9.5.tar.gz 712411
diff --git a/net-analyzer/tcpdump/files/tcpdump-3.9.5-print-802_11.c.diff b/net-analyzer/tcpdump/files/tcpdump-3.9.5-print-802_11.c.diff
new file mode 100644 (file)
index 0000000..a1f107d
--- /dev/null
@@ -0,0 +1,11 @@
+--- tcpdump/print-802_11.c     2006/06/13 22:25:30     1.42
++++ tcpdump/print-802_11.c     2007/02/01 02:18:18     1.43
+@@ -264,7 +264,7 @@
+                       if (pbody->tim.length <= 3)
+                               break;
+-                      if (pbody->rates.length > sizeof pbody->tim.bitmap)
++                      if (pbody->tim.length - 3 > sizeof pbody->tim.bitmap)
+                               return;
+                       if (!TTEST2(*(p + offset), pbody->tim.length - 3))
+                               return;
diff --git a/net-analyzer/tcpdump/tcpdump-3.9.5-r2.ebuild b/net-analyzer/tcpdump/tcpdump-3.9.5-r2.ebuild
new file mode 100644 (file)
index 0000000..dd46e41
--- /dev/null
@@ -0,0 +1,78 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-analyzer/tcpdump/tcpdump-3.9.5-r2.ebuild,v 1.1 2007/03/02 02:31:52 vanquirius Exp $
+
+inherit flag-o-matic toolchain-funcs eutils
+
+DESCRIPTION="A Tool for network monitoring and data acquisition"
+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 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="ssl ipv6 samba"
+
+DEPEND="net-libs/libpcap
+       ssl? ( >=dev-libs/openssl-0.9.6m )"
+
+pkg_setup() {
+       if use samba ; then
+               ewarn
+               ewarn "CAUTION !!! CAUTION !!! CAUTION"
+               ewarn
+               ewarn "You're about to compile tcpdump with samba printing support"
+               ewarn "Upstream tags it as 'possibly-buggy SMB printer'"
+               ewarn "So think twice whether this is fine with you"
+               ewarn
+               ewarn "CAUTION !!! CAUTION !!! CAUTION"
+               ewarn
+               ewarn "(Giving you 10 secs to think about it)"
+               ewarn
+               ebeep 5
+               epause 5
+       fi
+}
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       # bug 168916 - off-by-one heap overflow in 802.11 printer
+       epatch "${FILESDIR}"/${P}-print-802_11.c.diff
+}
+
+src_compile() {
+       # tcpdump needs some optymalization. see bug #108391
+       ( ! is-flag -O? || is-flag -O0 ) && append-flags -O
+
+       replace-flags -O[3-9] -O2
+       filter-flags -finline-functions
+
+       # Fix wrt bug #48747
+       if [[ $(gcc-major-version) -gt 3 ]] || \
+               [[ $(gcc-major-version) -eq 3 && $(gcc-minor-version) -ge 4 ]]
+       then
+               filter-flags -funit-at-a-time
+               append-flags -fno-unit-at-a-time
+       fi
+
+       local myconf
+       if ! use ssl ; then
+               myconf="--without-crypto"
+       fi
+
+       econf \
+               $(use_enable ipv6) \
+               $(use_enable samba smb) \
+               ${myconf} || die "configure failed"
+
+       make CCOPT="$CFLAGS" || die "make failed"
+}
+
+src_install() {
+       dosbin tcpdump || die
+       doman tcpdump.1
+       dodoc *.awk
+       dodoc README FILES VERSION CHANGES
+}