From f8a5e0e788e58628b8d73c28003bb379b1a92e5f Mon Sep 17 00:00:00 2001 From: Kurt Jaeger Date: Mon, 16 Feb 2015 06:16:28 +0000 Subject: [PATCH] benchmarks/nuttcp: 6.1.2 -> 7.3.2 - take maintainer - new distsite - changes since 2008 o Allow longer server info timeout for third party via --idle-data-timeout o Added feature to specify source port with "-p#:#" and "-P#:#" o Add "-g" option to specify multicast IP address to use o Clean up really confused transmit code for IPv4/IPv6 SSM multicast o Bug fix from Aristeu Rozanski: Crash caused by closing TCP_ADV_WIN_SCALE file even if open failed o Fix bug with server CPU affinity being parsed as %X instead of %d For non-sinkmode insure complete network block is written to stdout Above fixes nuttscp bug seen with --copy-dir getting premature EOF o Not every system has ERESTART added in 7.1.4, wrapped in ifdef o Fix non-Linux systems to properly count TCP retrans for multiple streams o Detect EOD for non-sinkmode UDP transfers o Suppress bogus warning when using maximum size UDP packet o Terminate non-sinkmode after specified file size with "-n" option o Allow multilink aggregation with "-N##m" option to work for receive o Add "-sz" zero copy option for non-sinkmode when input is a regular file o Remove "-Sf" forced server mode from Usage: statement o Fix zeroing of clientaddr6 during server cleanup o Fix freeaddrinfo() processing during cleanup o Change manually started oneshot server to have parent process just exit o Provide summary TCP retrans info for multi-stream TCP o Fix bug with retrans interval info when -fparse o Add "+stride" or "+n.n.n.n" syntax for multi-stream TCP (IPv4) o Fix third party bug with "-xc" option adding extraneous 't' character o Add optional client-side name resolution for third party host o Add "-N##m" option for multilink aggregation for multiple streams o Add "-xc#/#" and "-P#/#" options to Usage: statement o Enable jitter measurements with "-j" option o Enable one-way delay measurements with "-o" option o Fix bug with RTT and -fparse o Change ctl/data port checks to < 1024 instead of < 5000 o Fix "--idle-data-timeout" Usage: statement for new default minimum o Improve transmit performance with "-i" by setting poll() timeout to 0 o Don't output interval retrans info if non-sinkmode (for nuttscp) o Skip check for unACKed data at end of transfer if -DBROKEN_UNACKED o Play nice with iperf (change default data port to 5101) o Delay sending of server "OK" until after successful server bind() o Client check for server errors before starting data transfer o Continue checking for server output while draining client transmission o Correct "server not ACKing data" error message (server -> receiver) o Add "--packet-burst" option for Rob o Fix "--idle-data-timeout" Usage: statement for client o Improve accuracy of retrans info timing synchronization (client xmitter) o Allow rate limit to be exceeded temporarily by n packets ("-Rixxx/n") o Allow setting server CPU affinity from client via "-xcs" option o Allow setting client & server CPU affinity via third party o Allow passing of third party control port via "-Pctlport/ctlport3" o Up default idle data minimum to 15 sec to better handle net transients o Don't reset nstream until after last use (fix getaddrinfo() memory leak) o Fix bug with simultaneous server connections to manually started server o Fix Usage: statement: "--idle-data-timeout" both server & client option o Don't reset priority on server cleanup o Fix priority output for "-fparse" o Fix bad third party bug causing >= 1 minute transfers to silently fail o Fix Usage: statement: "--idle-data-timeout" not just a server option o Added IPv6 and SSM MC support Ported from Rob's 5.5.5 based code by Bill Fink o Fix client lockup with third party when network problem (for scripts) o Bugfix: set chk_idle_data on client (now also checks no data received) o Use argv[0] instead of "nuttcp" for third party o Bugfix: give error message again on error starting server o Timeout client accept() too and give nice error message (for scripts) PR: 197475 Submitted by: pi Approved by: Andrew Clark (old maintainer) --- benchmarks/nuttcp/Makefile | 45 +++++++++++++++++-------------------- benchmarks/nuttcp/distinfo | 16 +++++++++---- benchmarks/nuttcp/pkg-descr | 2 +- benchmarks/nuttcp/pkg-plist | 3 --- 4 files changed, 33 insertions(+), 33 deletions(-) diff --git a/benchmarks/nuttcp/Makefile b/benchmarks/nuttcp/Makefile index ab87f2d235f6..fbb4bb8da58a 100644 --- a/benchmarks/nuttcp/Makefile +++ b/benchmarks/nuttcp/Makefile @@ -2,27 +2,24 @@ # $FreeBSD$ PORTNAME= nuttcp -PORTVERSION= 6.1.2 +PORTVERSION= 7.3.2 CATEGORIES= benchmarks net -MASTER_SITES= ftp://ftp.lcp.nrl.navy.mil/pub/${PORTNAME}/ \ - ftp://ftp.lcp.nrl.navy.mil/pub/${PORTNAME}/beta/:beta -DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ - ${NUTTSCPDISTFILE}:beta -EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} +MASTER_SITES= http://nuttcp.net/nuttcp/ +DISTFILES= beta/${PORTNAME}-${PORTVERSION}.c beta/${NUTTSCPDISTFILE} latest/${PORTNAME}.8 latest/examples.txt latest/LICENSE latest/README +EXTRACT_ONLY= # none +WRKSRC= ${WRKDIR} -MAINTAINER= andrewclarkii@gmail.com +MAINTAINER= pi@FreeBSD.org COMMENT= TCP/UDP network testing tool -USES= tar:bzip2 shebangfix -SHEBANG_FILES= ../nuttscp -MAKEFILE= /dev/null -ALL_TARGET= ${PORTNAME} +USES= shebangfix +SHEBANG_FILES= nuttscp -NUTTSCPVERSION= 1.7 +NUTTSCPVERSION= 2.2 NUTTSCPDISTFILE=nuttscp-${NUTTSCPVERSION} OPTIONS_DEFINE= NUTTSCP -OPTIONS_DEFAULT= NUTTSCP +OPTIONS_DEFAULT=NUTTSCP NUTTSCP_DESC= Install script for copying files over nuttcp OPTIONS_SUB= yes @@ -31,11 +28,15 @@ NUTTSCP_USES= perl5 .include post-extract: - @${CP} ${DISTDIR}/${DIST_SUBDIR}/${NUTTSCPDISTFILE} ${WRKDIR}/nuttscp + ${CP} ${DISTDIR}/beta/${NUTTSCPDISTFILE} ${WRKDIR}/nuttscp + ${CP} ${DISTDIR}/beta/${PORTNAME}-${PORTVERSION}.c ${WRKDIR}/ + ${CP} ${DISTDIR}/latest/${PORTNAME}.8 ${WRKDIR}/ + ${CP} ${DISTDIR}/latest/LICENSE ${WRKDIR}/ + ${CP} ${DISTDIR}/latest/README ${WRKDIR}/ + ${CP} ${DISTDIR}/latest/examples.txt ${WRKDIR}/ -post-patch: - ${FIND} ${WRKSRC}/ -type f -exec \ - ${REINPLACE_CMD} 's|/usr/local|${PREFIX}|g' {} + +do-build: + cd ${WRKDIR} && ${CC} -o ${PORTNAME} nuttcp-${PORTVERSION}.c do-install: . if ${PORT_OPTIONS:MNUTTSCP} @@ -43,18 +44,12 @@ do-install: ( cd ${STAGEDIR}${PREFIX}/bin; ${LN} -sf nuttscp nuttrcp ) . endif - ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/ - ${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.8 ${STAGEDIR}${MAN8PREFIX}/man/man8/ + ${INSTALL_PROGRAM} ${WRKDIR}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_MAN} ${WRKDIR}/${PORTNAME}.8 ${STAGEDIR}${MAN8PREFIX}/man/man8/ ${MKDIR} ${STAGEDIR}${DATADIR}/ . for file in LICENSE README examples.txt ${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${DATADIR}/ . endfor - ${MKDIR} ${STAGEDIR}${PREFIX}/etc/xinetd.d/ -. for file in ${PORTNAME} ${PORTNAME}4 ${PORTNAME}6 - ${INSTALL_DATA} ${WRKSRC}/xinetd.d/${file} \ - ${STAGEDIR}${PREFIX}/etc/xinetd.d/ -. endfor - .include diff --git a/benchmarks/nuttcp/distinfo b/benchmarks/nuttcp/distinfo index 2c0389734543..3785e8a98636 100644 --- a/benchmarks/nuttcp/distinfo +++ b/benchmarks/nuttcp/distinfo @@ -1,4 +1,12 @@ -SHA256 (nuttcp-6.1.2.tar.bz2) = 054e96d9d68fe917df6f25fab15c7755bdd480f6420d7d48d9194a1a52378169 -SIZE (nuttcp-6.1.2.tar.bz2) = 77169 -SHA256 (nuttscp-1.7) = 71901d572ff2b472d2a3b7e1e4804c9d875b07e1a31e994b5f33d45d19111962 -SIZE (nuttscp-1.7) = 18582 +SHA256 (beta/nuttcp-7.3.2.c) = 4deb98a21bb8d2f75dff95436f85d616cdf321b50f29b2bf5f0ff9a0d42b0d62 +SIZE (beta/nuttcp-7.3.2.c) = 265085 +SHA256 (beta/nuttscp-2.2) = 0874f2f87b8def21bd3d1b18dab449e3d97648100d0c824af109eba897e2160d +SIZE (beta/nuttscp-2.2) = 28729 +SHA256 (latest/nuttcp.8) = 83f10cb19e11e37a00fa78ad1f87afc02e5250777e91e78bdf2f2485d372e2c5 +SIZE (latest/nuttcp.8) = 16157 +SHA256 (latest/examples.txt) = eb94d5424880164cae4b4b5d8f4ab25299cb3396a32c4dcb136e9718c0844938 +SIZE (latest/examples.txt) = 5933 +SHA256 (latest/LICENSE) = ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 +SIZE (latest/LICENSE) = 17987 +SHA256 (latest/README) = 7ad8dcb72bd72afed8f32a13d3f81614b659afacdfa91ca57b41ff20cd4806a1 +SIZE (latest/README) = 5666 diff --git a/benchmarks/nuttcp/pkg-descr b/benchmarks/nuttcp/pkg-descr index 15b02f142ae9..d4a20dcd1a1d 100644 --- a/benchmarks/nuttcp/pkg-descr +++ b/benchmarks/nuttcp/pkg-descr @@ -9,4 +9,4 @@ nuttcp is based on nttcp, but have several useful features such as a server mode, rate limiting, multiple parallel streams, and timer based usage. -WWW: http://www.lcp.nrl.navy.mil/nuttcp/ +WWW: http://nuttcp.net/ diff --git a/benchmarks/nuttcp/pkg-plist b/benchmarks/nuttcp/pkg-plist index 68616ec00c62..234d5ab5fa18 100644 --- a/benchmarks/nuttcp/pkg-plist +++ b/benchmarks/nuttcp/pkg-plist @@ -4,7 +4,4 @@ bin/nuttcp %%DATADIR%%/LICENSE %%DATADIR%%/README %%DATADIR%%/examples.txt -etc/xinetd.d/nuttcp -etc/xinetd.d/nuttcp4 -etc/xinetd.d/nuttcp6 man/man8/nuttcp.8.gz