diff options
-rw-r--r-- | net-analyzer/tcpreplay/Manifest | 1 | ||||
-rw-r--r-- | net-analyzer/tcpreplay/tcpreplay-4.4.3.ebuild | 86 |
2 files changed, 87 insertions, 0 deletions
diff --git a/net-analyzer/tcpreplay/Manifest b/net-analyzer/tcpreplay/Manifest index 8375ad4c3a9f..8e0d9474b8ee 100644 --- a/net-analyzer/tcpreplay/Manifest +++ b/net-analyzer/tcpreplay/Manifest @@ -1 +1,2 @@ DIST tcpreplay-4.4.2.tar.xz 750592 BLAKE2B c1f0bad69eca7e086aeb7100c4a35e2984a81412f81eaf981d969d24510736788e4657b511308b38ffbf88021c23272c51b9265eb2fb08318352d3eb8bed0a2a SHA512 78e5482c0cd70a55aa80167c602b33811fa01203860fab4b2d504da71a95e218356ea0cc85254e12be7cb13b611487a150f13df94f9da274661f71e921bd6045 +DIST tcpreplay-4.4.3.tar.xz 750072 BLAKE2B 218fe1c5faab0fdd75a031afce8f468c85886a4cf21a4d9bd34089bd106756ee0e65e0df605efecb3260ccff266553a44d8ee10249b35524a044c6c5db86fcc7 SHA512 d8186a5faf3fbe5505da34cfc466c0375c4f298c997fe85505ea898c8c1241c16f98269596b682983a3e5cbd8493882334c925ff750d95995f3b13c5b83357cf diff --git a/net-analyzer/tcpreplay/tcpreplay-4.4.3.ebuild b/net-analyzer/tcpreplay/tcpreplay-4.4.3.ebuild new file mode 100644 index 000000000000..f953a68c1c37 --- /dev/null +++ b/net-analyzer/tcpreplay/tcpreplay-4.4.3.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +DESCRIPTION="Utilities for editing and replaying previously captured network traffic" +HOMEPAGE="http://tcpreplay.appneta.com/ https://github.com/appneta/tcpreplay" +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/appneta/tcpreplay" + inherit git-r3 +else + SRC_URI="https://github.com/appneta/${PN}/releases/download/v${PV}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm ~sparc ~x86" +fi + +S="${WORKDIR}"/${P/_/-} + +LICENSE="BSD GPL-3" +SLOT="0" +IUSE="debug pcapnav +tcpdump" + +# libpcapnav for pcapnav-config +BDEPEND=" + net-libs/libpcapnav + >=sys-devel/autogen-5.18.4[libopts] +" +DEPEND=" + dev-libs/libdnet + >=net-libs/libpcap-0.9 + elibc_musl? ( sys-libs/fts-standalone ) + pcapnav? ( net-libs/libpcapnav ) + tcpdump? ( net-analyzer/tcpdump ) +" +RDEPEND="${DEPEND}" + +DOCS=( docs/{CHANGELOG,CREDIT,HACKING,TODO} ) + +PATCHES=( + "${FILESDIR}"/${PN}-4.3.0-enable-pcap_findalldevs.patch +) + +src_prepare() { + default + + sed -i \ + -e 's|#include <dnet.h>|#include <dnet/eth.h>|g' \ + src/common/sendpacket.c || die + sed -i \ + -e 's|@\([A-Z_]*\)@|$(\1)|g' \ + -e '/tcpliveplay_CFLAGS/s|$| $(LDNETINC)|g' \ + -e '/tcpliveplay_LDADD/s|$| $(LDNETLIB)|g' \ + src/Makefile.am || die + + eautoreconf +} + +src_configure() { + use elibc_musl && append-flags "-lfts" + # By default it uses static linking. Avoid that, bug #252940 + econf \ + $(use_enable debug) \ + $(use_with pcapnav pcapnav-config "${BROOT}"/usr/bin/pcapnav-config) \ + $(use_with tcpdump tcpdump "${ESYSROOT}"/usr/sbin/tcpdump) \ + --enable-dynamic-link \ + --enable-local-libopts \ + --enable-shared \ + --with-libdnet \ + --with-testnic2=lo \ + --with-testnic=lo +} + +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" + emake -j1 -C test tcpprep + else + emake -j1 test || { + ewarn "Note that some tests require eth0 iface to be up." + die "self test failed - see ${S}/test/test.log" + } + fi +} |