tcpreplay: add recipe

tcpreplay - a suite of GPLv3 licensed tools for UNIX operating systems
which gives you the ability to use previously captured traffic in libpcap
format to test a variety of network devices.

Signed-off-by: Zongchun Yu <Zongchun.Yu@freescale.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
This commit is contained in:
Zongchun Yu 2013-11-26 10:51:54 +08:00 committed by Joe MacDonald
parent d62fe9254a
commit 0501fa0f0b
4 changed files with 146 additions and 0 deletions

View File

@ -0,0 +1,92 @@
Uptream-Status: Pending
Signed-off-by: Zongchun Yu <Zongchun.Yu@freescale.com>
--- a/configure.ac
+++ b/configure.ac
@@ -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])]
+)
])

View File

@ -0,0 +1,17 @@
Uptream-Status: Pending
Signed-off-by: Zongchun Yu <Zongchun.Yu@freescale.com>
Index: tcpreplay-3.4.4/configure.ac
===================================================================
--- tcpreplay-3.4.4.orig/configure.ac
+++ tcpreplay-3.4.4/configure.ac
@@ -389,7 +389,7 @@ CFLAGS="$CFLAGS -I$LPCAPINCDIR"
AC_SEARCH_LIBS([pcap_close], [pcap],
LPCAPLIB="$LIBS",
AC_ERROR([Unable to link libpcap in ${foundpcap}]),
- -lnl)
+ -lnl-3)
AC_SUBST(LPCAPINC)
AC_SUBST(LPCAPLIB)

View File

@ -0,0 +1,15 @@
Uptream-Status: Pending
Signed-off-by: Zongchun Yu <Zongchun.Yu@freescale.com>
--- a/configure.ac
+++ b/configure.ac
@@ -758,6 +758,8 @@
AC_MSG_RESULT(no)
])
+ac_cv_have_bpf=no
+
have_bpf=no
dnl Check for BSD's BPF
AC_CACHE_CHECK([for BPF device sending support], ac_cv_have_bpf,

View File

@ -0,0 +1,22 @@
SUMMARY = "Use previously captured traffic to test network devices"
HOMEPAGE = "http://tcpreplay.synfin.net/"
SECTION = "console/network"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://docs/LICENSE;md5=c33cccf72cc1603e8a72a84811ae3ac8"
SRC_URI = "http://prdownloads.sourceforge.net/tcpreplay/${PV}/tcpreplay-${PV}.tar.gz \
file://tcpreplay-3.4.4-cross-compile.patch \
file://tcpreplay-3.4.4-no-bfp-support.patch \
file://tcpreplay-3.4.4-fix-unable-to-link-libpcap-issue.patch \
"
SRC_URI[md5sum] = "22725feb9b2590809f9350308ec65180"
SRC_URI[sha256sum] = "7a809c58ddec86407fd6e5597ac883d7874a19bea81d716bb2b1c6e3b0e7b58f"
DEPENDS = "libpcap"
EXTRA_OECONF += "--with-libpcap=${STAGING_DIR_HOST}/usr"
inherit siteinfo autotools