1
1
Граф коммитов

762 Коммитов

Автор SHA1 Сообщение Дата
Bruce A. Mah
b7ab2b4b25
Make the server more tolerant of most types of errors encountered
during tests.

We used to exit if 5 consecutive errors were encountered.  Instead,
only exit if certain types of fatal errors happen.
2016-06-03 09:26:05 -07:00
Bruce A. Mah
4dcb275b5b
Make error handling on the control channel more robust. 2016-06-03 09:25:14 -07:00
Bruce A. Mah
ed94082be2
Fix a buffer overflow / heap corruption issue that could occur if a
malformed JSON string was passed on the control channel.  This issue,
present in the cJSON library, was already fixed upstream, so was
addressed here in iperf3 by importing a newer version of cJSON (plus
local ESnet modifications).

Discovered and reported by Dave McDaniel, Cisco Talos.

Based on a patch by @dopheide-esnet, with input from @DaveGamble.

Cross-references:  TALOS-CAN-0164, ESNET-SECADV-2016-0001,
CVE-2016-4303
2016-06-03 09:23:59 -07:00
Bruce A. Mah
a5f5765c8c
Regen. 2016-05-26 09:49:16 -07:00
Bruce A. Mah
9915746a8b
Squashed commit of the following:
commit 2dc03630a736be2ae9f64823aabb5776e7074c2a
Merge: 61e325c 0da552c
Author: Bruce A. Mah <bmah@es.net>
Date:   Thu May 26 09:40:58 2016 -0700

    Merge branch 'master' into issue-325

commit 61e325c5d0a4e7a9823221ce507db0f478fc98b5
Merge: 227992f ccbcee6
Author: Bruce A. Mah <bmah@es.net>
Date:   Thu May 26 11:09:54 2016 -0400

    Merge branch 'issue-325' of github.com:esnet/iperf into issue-325

    Conflicts:
    	src/iperf3.1

commit 227992f366e7f4895b6762011576ba22a42a752e
Author: Bruce A. Mah <bmah@es.net>
Date:   Thu May 26 11:07:01 2016 -0400

    Don't set SO_MAX_PACING_RATE if the rate is 0.  Also tweak some help text.

    Towards #325, in response to feedback from @bltierney.

commit ccbcee6366d50ec632fc00eb11fde8a886f8febe
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 09:19:41 2016 -0700

    Fix manpage formatting for consistency.

commit 90ac5a9ce09bd746ca5f943a8226ab864da3ebf8
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 12:14:16 2016 -0400

    Add some documentation for fair-queueing per-socket pacing.

    For #325.

commit 5571059870f7aefefb574816de70b6406848888f
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 11:55:44 2016 -0400

    Change the fair-queueing socket pacing logic in response to feedback.

    By default, on platforms where per-socket pacing is available, it
    will be used.  If not available, iperf3 will fall back to application-
    level pacing.

    The --no-fq-socket-pacing option can be used to forcibly disable
    fair-queueing per-socket pacing.  (The earlier --socket-pacing option
    has been removed.)

    Tested on CentOS 7, more testing on other platforms is required to
    be sure it didn't break the old application-level pacing behavior.

    For #325.

commit 3e3f506fe9f375a5771c9e3ddfe8677c1a7146e7
Merge: 50a379e 3b23112
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 09:54:39 2016 -0400

    Merge branch 'master' into issue-325

commit 50a379eddfa89d1313d2aeeb62a6fbc82f00ea17
Author: Bruce A. Mah <bmah@es.net>
Date:   Sat Apr 16 02:55:42 2016 -0400

    Regen.

commit 200d3fe3917b3d298bdf52a0bde32c47cf2727b0
Author: Bruce A. Mah <bmah@es.net>
Date:   Sat Apr 16 02:41:32 2016 -0400

    Checkpoint for initial work on #325 to add socket pacing.

    This works only on Linux and depends on the availability of
    the SO_MAX_PACING_RATE socket option and the fq queue discipline.
    Use --socket-pacing to use SO_MAX_PACING_RATE instead of the
    default iperf3 user-level rate limiting; in either case, the
    --bandwidth parameter controls the desired rate.

    Lightly tested with both --tcp and --udp, normal and --reverse.
    Real testing requires analysis of packet timestamps between
    multiple hosts.
2016-05-26 09:47:48 -07:00
g-coder
0da552c390 Safe programming practice. Added va_end. (#425)
In file iperf_util.c:
Function 'va_start' is called at line:327. But, 'va_end' is not called before returning from function 'iperf_json_printf()' at line:352 and line:355. 
The va_end performs cleanup for the argp object initialized by a call to va_start. If va_end is not called before a function that calls va_start returns, the behavior is undefined.

Applied Fix: added va_end before returning from the function.
2016-05-26 09:06:16 -07:00
g-coder
8fcfc2479f DEREF_AFTER_NULL in src/iperf_error.c (#423)
DEREF_AFTER_NULL: pointer ‘test’ at line:77 is passed as an argument to function iperf_delete_pidfile(), in which it is dereferenced at iperf_api.c:2832.
Pointer ‘test’ can be NULL and dereferencing a NULL pointer causes seg-fault.

Applied Fix: pointer ‘test’ is checked for NULL before passing it to function iperf_delete_pidfile().
2016-05-26 08:47:29 -07:00
Joe McEachern
3b2311263a Add fix for #412 (#414)
* Add fix for #412
This prevents negative loss counters with UDP when omit is used

* Track the original start time and bytes omitted. This allows the
throttle function to work after the omit timer fires. This is
a fix for issue #419.

* Remove changes to switch the bandwidth to received instead of sent bandwidth

* Roll back bandwidth sent vs received changes
2016-05-20 11:40:18 -07:00
Bruce A. Mah
f88486443c
Fix build on FreeBSD 11-CURRENT, as described in issue #413.
This caused by a combination of the iperf3 build somehow using
the system queue.h on FreeBSD 11 (possibly only on this platform)
and TAILQ_END not being defined in the system queue.h.

Expanding the TAILQ_END macro to NULL seems to solve the problem.

Submitted by:	@rbgarga
2016-05-20 10:05:24 -07:00
Monte Goode
897687ac0f Mods to summed output after meeting. 2016-04-18 12:22:59 -07:00
Monte Goode
8d94dc289d Add the row header to the --sum output. 2016-04-11 14:18:53 -07:00
Monte Goode
471aa5f133 New summing format. Still need row header from brian. 2016-04-11 12:18:21 -07:00
Monte Goode
2d3eb211f6 Quick linting pass and get the CR chars out of there so it'll actually run from a shell. :) 2016-04-11 10:07:04 -07:00
Bruce A. Mah
4fbdab392c Merge pull request #377 from quasoft/forceflush
Add option `--forceflush` to force flushing of output at the end of each interval
2016-03-25 10:44:20 -07:00
QuaSoft
08a2de459b Add command line option --forceflush to allow user to request flushing of output at the end of each interval.
Fixes #299
2016-03-06 16:47:02 +02:00
Bruce A. Mah
fab327943f
Update Web site for iperf-3.1.2. 2016-02-01 16:34:01 -08:00
Bruce A. Mah
cb25dfe687
Update copyright dates in a couple of places. 2016-02-01 14:01:54 -08:00
Bruce A. Mah
670c18584b
Get rid of nan values when there were no packets in a UDP interval.
This was causing some headaches for code trying to parse JSON.
Also revise a prior partial fix that hard-coded 100% loss for the
case of zero packets.

Partially fixes #278.

Merge candidate for 3.0 and 3.1 bugfix branches.
2016-01-28 16:04:33 -08:00
Brian Tierney
3cf50d9856 added additional project 2016-01-03 08:16:52 -08:00
Brian Tierney
c50b5ea849 adding scripts to generate gnuplots from iperf3 data 2015-12-15 15:26:55 -08:00
Bruce A. Mah
224ae8c764
Fix a bug where we printed the incorrect value for out-of-order UDP packets.
Fixes #329, submitted by @bhegardt.

While here, add this value to the JSON output.
2015-11-20 08:31:09 -08:00
Bruce A. Mah
0e7921a7b4
Update for iperf-3.1.1.
Belatedly add news item for iperf3 project development status.

Move remaining 2014 news items to "Older News" section.
2015-11-19 10:32:01 -08:00
Bruce A. Mah
1fb00f8ccc Revert "Version bumps, release notes for iperf 3.1.1."
This reverts commit 0eeb788eeb.
2015-11-18 14:26:46 -08:00
Bruce A. Mah
0eeb788eeb Version bumps, release notes for iperf 3.1.1. 2015-11-18 14:19:25 -08:00
Bruce A. Mah
ccec14eb51 Update README.
Reflect current support/maintenance status, add a few new known issues,
bump copyright date.
2015-11-18 10:26:05 -08:00
Bruce A. Mah
956d115851 Improve command error handling.
Exit with non-zero exit code if server mode has too many errors.

Properly detect complain about non-numeric arguments to -A, -L, and -S.

Implement range checks for argument to -S.

Fixes #316.
2015-11-18 09:40:24 -08:00
Bruce A. Mah
44485b5b88
Fix a bug where the -T title option was not being output correctly
in JSON output.

Fixes #292.

Patch from:	@SLX-WI
2015-11-17 10:47:47 -08:00
Bruce A. Mah
6e48bb2a5d
Markup fixes in manpages for Debian compatibility.
Fixes #291.

Merge candidate for 3.1 stable release if applicable.
2015-11-16 12:00:36 -08:00
Bruce A. Mah
7b2abbc59a
Rename the recently-added template member in the iperf_test structure
to improve C++ compatibility.

Fixes #323.
2015-11-16 11:22:15 -08:00
Bruce A. Mah
e396134952
Update for 3.1 release. 2015-10-16 12:57:31 -07:00
Bruce A. Mah
b49566681d Regen. 2015-10-16 10:01:09 -07:00
Bruce A. Mah
8774140404 Bump version numbers and dates for iperf 3.1. 2015-10-16 10:00:30 -07:00
Bruce A. Mah
01319ccf37 Merge branch 'master' of github.com:/esnet/iperf 2015-10-14 15:22:54 -07:00
Bruce A. Mah
736d144e03 Minor release notes tweak. 2015-10-14 15:22:31 -07:00
Bruce A. Mah
d256e644d3 Merge pull request #311 from tniessen/master
Fix bug in iperf_new_stream leading to EINVAL
2015-10-11 22:12:19 -07:00
Tobias Nießen
20585b9896 Fix bug in iperf_new_stream leading to EINVAL
Fix invocation of snprintf in iperf_new_stream to prevent mkstemp from producing EINVAL.
2015-10-11 15:58:52 +02:00
Bruce A. Mah
ee306250d7 Merge pull request #288 from yeahdongcn/master
Add tmp_path in order to make the template path workable on iOS.
2015-10-07 13:05:32 -07:00
Bruce A. Mah
156a5eb163 Merge pull request #305 from teto/getdomain_fix
Fixes a smashing stack problem as described in https://bugzilla.kernel.org/show_bug.cgi?id=104601
2015-10-07 12:59:01 -07:00
R0CKSTAR
9a3775091b Change tmp_path to template and use snprintf instead of strcpy 2015-09-21 11:07:41 +08:00
Matthieu Coudron
eb3faee64f Fixes a smashing stack problem as described in https://bugzilla.kernel.org/show_bug.cgi?id=104601 2015-09-19 14:08:47 +02:00
R0CKSTAR
7baf44a8b9 Missing one file 2015-08-03 09:40:53 +08:00
R0CKSTAR
01b82c9e3c Add tmp_path in order to make the template path workable on iOS. 2015-08-03 00:01:02 +08:00
Bruce A. Mah
fe1c2246a4
Regen. 2015-07-07 14:14:14 -07:00
Bruce A. Mah
b4094dbf35
Turn the crank again for another 3.1 beta release. 2015-07-07 14:13:33 -07:00
Bruce A. Mah
ba6cd6a9a5 Fix problems in RPM spec file.
Specifically, remove an unneeded dependency on libuuid and fix up
set of doc files to be installed to match reality.

Tested on CentOS 6.
2015-07-07 14:04:26 -07:00
Bruce A. Mah
466a86f9db Regen. 2015-06-30 13:46:17 -07:00
Bruce A. Mah
3a4d684d44
Bump version number. 2015-06-30 13:45:50 -07:00
Bruce A. Mah
883a465a72
Fix tarball generation (it was missing a file) and regen build goop.
Found by:	@arlake228
2015-06-30 13:19:38 -07:00
Bruce A. Mah
1e20601ffd
Regen. 2015-06-19 11:28:13 -07:00
Bruce A. Mah
b6a2021c0b
Bump version number and manpage rev dates for 3.1b1. 2015-06-19 11:27:16 -07:00