diff options
author | Bertrand Jacquin <beber@meleeweb.net> | 2011-07-26 20:20:58 +0200 |
---|---|---|
committer | Bertrand Jacquin <beber@meleeweb.net> | 2011-07-26 20:20:58 +0200 |
commit | 1d84a361d5c302d358dfa4701e73b1d309a9cf38 (patch) | |
tree | f3425dcf3796260d1376eea994de2a87502d8597 /net-analyzer | |
parent | net-analyzer/iptraf-ng: #376157 (diff) | |
download | portage-1d84a361d5c302d358dfa4701e73b1d309a9cf38.tar.xz |
net-analyzer/tcpreplay: #375679
https://bugs.gentoo.org/show_bug.cgi?id=375679
Diffstat (limited to 'net-analyzer')
-rw-r--r-- | net-analyzer/tcpreplay/Manifest | 4 | ||||
-rw-r--r-- | net-analyzer/tcpreplay/files/tcpreplay-3.4.4-crash.patch | 38 | ||||
-rw-r--r-- | net-analyzer/tcpreplay/files/tcpreplay-BJA-cross.diff | 88 | ||||
-rw-r--r-- | net-analyzer/tcpreplay/tcpreplay-3.4.4-r1.ebuild | 60 |
4 files changed, 190 insertions, 0 deletions
diff --git a/net-analyzer/tcpreplay/Manifest b/net-analyzer/tcpreplay/Manifest new file mode 100644 index 00000000..2e376556 --- /dev/null +++ b/net-analyzer/tcpreplay/Manifest @@ -0,0 +1,4 @@ +AUX tcpreplay-3.4.4-crash.patch 999 RMD160 ea9cc29a1479d600493e57ec79ae9ad3244b6be8 SHA1 310bb774108bab593435120ccf96dfc4080804e1 SHA256 1880eccd2616836df6e255757f0683d9c3a9d127848514741f3825f53e560af8 +AUX tcpreplay-BJA-cross.diff 1750 RMD160 69e8c8c9a7a82bccf45a232dac09dc9a2092aad4 SHA1 25857d74272bce168824ea624877c1fd056f54b6 SHA256 443c81eb8e1b74da73a0d761a989f3fc7c494771997192e8687318311db99f90 +DIST tcpreplay-3.4.4.tar.gz 947179 RMD160 672812755ff39b284044b08cba32c574ab2b7e70 SHA1 9e4cca81cfbfb919f8759e1a27ce1b3b963ff3b8 SHA256 7a809c58ddec86407fd6e5597ac883d7874a19bea81d716bb2b1c6e3b0e7b58f +EBUILD tcpreplay-3.4.4-r1.ebuild 1651 RMD160 80fe62059d3f5a64144aaa2e777076f311dbe320 SHA1 321c96e9ef4d33d3a42dab2587c019d25df83358 SHA256 4383c5f7ee6d0077c11cfd2cdd5ed5db95624f60e75b07593c06b4f5e0f87500 diff --git a/net-analyzer/tcpreplay/files/tcpreplay-3.4.4-crash.patch b/net-analyzer/tcpreplay/files/tcpreplay-3.4.4-crash.patch new file mode 100644 index 00000000..09875054 --- /dev/null +++ b/net-analyzer/tcpreplay/files/tcpreplay-3.4.4-crash.patch @@ -0,0 +1,38 @@ +=== modified file 'src/common/cidr.c' +--- src/common/cidr.c 2010-10-29 13:00:54 +0000 ++++ src/common/cidr.c 2010-10-29 13:09:01 +0000 +@@ -85,11 +85,12 @@ + destroy_cidr(tcpr_cidr_t * cidr) + { + +- if (cidr != NULL) ++ if (cidr != NULL) { + if (cidr->next != NULL) + destroy_cidr(cidr->next); + +- safe_free(cidr); ++ safe_free(cidr); ++ } + return; + + } +@@ -667,7 +668,7 @@ + cidr2iplist(tcpr_cidr_t * cidr, char delim) + { + char *list = NULL; +- char ipaddr[16]; ++ char ipaddr[16], tempbuff[20]; + u_int32_t size, addr, first, last, numips; + struct in_addr in; + +@@ -694,7 +695,8 @@ + /* loop through all but the last one */ + for (addr = first; addr < last; addr++) { + in.s_addr = htonl(addr); +- snprintf(ipaddr, 17, "%s%c", inet_ntoa(in), delim); ++ snprintf(tempbuff, 17, "%s%c", inet_ntoa(in), delim); ++ memcpy(ipaddr, tempbuff, 16); + dbgx(2, "%s", ipaddr); + strlcat(list, ipaddr, size); + } + diff --git a/net-analyzer/tcpreplay/files/tcpreplay-BJA-cross.diff b/net-analyzer/tcpreplay/files/tcpreplay-BJA-cross.diff new file mode 100644 index 00000000..21ee7ee1 --- /dev/null +++ b/net-analyzer/tcpreplay/files/tcpreplay-BJA-cross.diff @@ -0,0 +1,88 @@ +--- configure.ac.ori 2011-07-19 20:21:01.000000000 +0200 ++++ configure.ac 2011-07-19 20:25:06.000000000 +0200 +@@ -402,7 +402,6 @@ + + dnl 0.9.6 (which is still thinks it is 0.9.5 due to a bug) introduces an important + dnl fix for OSX. See: http://tcpreplay.synfin.net/trac/ticket/167 +-libpcap_version_096=no + AC_RUN_IFELSE(AC_LANG_PROGRAM([[ + #include <string.h> + #include <stdlib.h> +@@ -419,11 +418,12 @@ + exit(0); + + exit(1); +-]]), [ +- libpcap_version_096=yes +-]) ++]]), ++ [libpcap_version_096=yes], ++ [libpcap_version_096=no], ++ [libpcap_version_096=yes] ++) + +-libpcap_ver8=no + AC_RUN_IFELSE(AC_LANG_PROGRAM([[ + #include <string.h> + #include <stdlib.h> +@@ -444,13 +444,12 @@ + exit(0); + + exit(1); +-]]), [ +- libpcap_ver8=yes +-], [ +- libpcap_ver8=no +-]) ++]]), ++ [libpcap_ver8=yes], ++ [libpcap_ver8=no], ++ [libpcap_ver8=yes] ++) + +-libpcap_ver7=no + AC_RUN_IFELSE(AC_LANG_PROGRAM([[ + #include <string.h> + #include <stdlib.h> +@@ -469,11 +468,11 @@ + exit(0); + + exit(1); +-]]), [ +- libpcap_ver7=yes +-], [ +- libpcap_ver7=no +-]) ++]]), ++ [libpcap_ver7=yes], ++ [libpcap_ver7=no], ++ [libpcap_ver7=yes] ++) + + if test x$libpcap_ver8 = xyes ; then + AC_MSG_RESULT(>= 0.8.0) +@@ -761,8 +760,8 @@ + + have_bpf=no + dnl Check for BSD's BPF +-AC_MSG_CHECKING(for BPF device sending support) +-AC_TRY_RUN([ ++AC_CACHE_CHECK([for BPF device sending support], ac_cv_have_bpf, ++[AC_TRY_RUN([ + #include <stdio.h> + #include <stdlib.h> + #include <sys/types.h> +@@ -796,8 +795,11 @@ + [Do we have BPF device support?]) + AC_MSG_RESULT(yes) + have_bpf=yes +-],[ +- AC_MSG_RESULT(no) ++], ++[AC_MSG_RESULT(no)], ++[AC_MSG_ERROR([cross-compiling, ++ presetting ac_cv_have_bpf=(yes|no) will help])] ++) + ]) + + diff --git a/net-analyzer/tcpreplay/tcpreplay-3.4.4-r1.ebuild b/net-analyzer/tcpreplay/tcpreplay-3.4.4-r1.ebuild new file mode 100644 index 00000000..0476112b --- /dev/null +++ b/net-analyzer/tcpreplay/tcpreplay-3.4.4-r1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/tcpreplay/tcpreplay-3.4.4-r1.ebuild,v 1.3 2011/03/21 08:12:16 tomka Exp $ + +EAPI="2" + +inherit eutils autotools + +DESCRIPTION="replay saved tcpdump or snoop files at arbitrary speeds" +HOMEPAGE="http://tcpreplay.synfin.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 ~sparc x86" +IUSE="debug pcapnav +tcpdump" + +DEPEND=" + >=sys-devel/autogen-5.9.8 + dev-libs/libdnet + >=net-libs/libpcap-0.9 + tcpdump? ( net-analyzer/tcpdump ) + pcapnav? ( net-libs/libpcapnav )" + +RDEPEND="${DEPEND}" + +src_prepare() { + echo "We don't use bundled libopts" > libopts/options.h + epatch ${FILESDIR}/${P}-crash.patch + epatch ${FILESDIR}/${PN}-BJA-cross.diff + + eautoreconf +} + +src_configure() { + # By default it uses static linking. Avoid that, bug 252940 + econf --enable-shared \ + --disable-local-libopts \ + $(use_with tcpdump tcpdump /usr/sbin/tcpdump) \ + $(use_with pcapnav pcapnav-config /usr/bin/pcapnav-config) \ + $(use_enable debug) +} + +src_test() { + if [[ ! ${EUID} -eq 0 ]]; then + ewarn "Some tests were disabled due to FEATURES=userpriv" + ewarn "To run all tests issue the following command as root:" + ewarn " # make -C ${S}/test" + make -C test tcpprep || die "self test failed - see ${S}/test/test.log" + else + make test || { + ewarn "Note, that some tests require eth0 iface to be UP." ; + die "self test failed - see ${S}/test/test.log" ; } + fi +} + +src_install() { + make DESTDIR="${D}" install || die + dodoc README docs/{CHANGELOG,CREDIT,HACKING,TODO} || die +} |