1
1

724 Коммитов

Автор SHA1 Сообщение Дата
ralcini
e28f12c788 Add authentication functions to libiperf (#713)
Fixes #712.  A subsequent commit will add some information to the libiperf manual page.
2018-04-27 13:39:28 -07:00
Phil Levchenko
cbea72b6ee Add --repeating-payload option to the client side (#726)
This option simulates payload in iperf2, which is just repetitive pattern
(ASCII '0..9' repeating), as opposed to iperf3 where payload is random.
It might help in testing and reveal problems in networking gear with hardware
compression (including WiFi access points), where iperf2 and iperf3 perform
differently, just based on payload entropy.
2018-04-20 07:25:24 -07:00
Bruce A. Mah
6332d84016
Wordsmith warning message from #721 / #709. 2018-04-20 07:21:23 -07:00
Kai Borowiak
22508a21b0 Add warning if JSON output is used with explicit report format (#721)
Fixes #709.
2018-04-20 07:17:39 -07:00
Ji Jianwen
3e58489a58 Fix -B with some SCTP tests, which is part of #678 (#715)
Got the following error when running server side with -B option:

Server side:
    ./iperf3 -s -B <server_ipv4_address>
    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    iperf3: error - unable to start stream listener: Bad file descriptor
    -----------------------------------------------------------

Client side:
    ./iperf3 -c <server_ipv4_address> --sctp
    iperf3: error - unable to start stream listener: No such file or directory

Similar fix as below for TCP:
    commit eb1cfe5e162d08efdf18fa12cd6627cfdcd675a7
    Author: Bruce A. Mah <bmah@es.net>
    Date:   Fri Aug 1 16:24:14 2014 -0700

        Another iteration on issue #193, fixes -B with some TCP tests.

Signed-off-by: Jianwen Ji <jijianwen@gmail.com>
2018-03-23 16:10:38 -07:00
Kai Borowiak
c0a441756a Add ToS Byte to iperf API (#719)
* Add ToS byte to iperf API

* Add function prototype to manual page
2018-03-23 06:28:20 -07:00
Jenkins BBVA
4fe72e1979 Add Solaris 10 portable_endian.h (#711)
Add htonll/ntohll if not defined
2018-03-09 10:28:48 -08:00
Bruce A. Mah
ff1ea4e54d
Regen. 2018-02-28 13:24:06 -08:00
Bruce A. Mah
6731b2152a
Version number bumps for iperf-3.5. Also fix a typo in release notes.
Towards #707.
2018-02-28 13:21:59 -08:00
Bruce A. Mah
c0055199b5
Fix issue 692 (#705)
Don't count data for tests received after the end of a test.
This prevents is from reporting an incorrect number of bytes
received at the end of the test, which doesn't match up with the
sum of the data received during the test intervals.
Log late receives if debugging mode enabled.

Fixes #692.
2018-02-23 15:36:25 -08:00
Bruce A. Mah
8740c8cf8e
Close credentials file when we're done reading it. (#704)
Fixes #701.
2018-02-22 17:25:25 -08:00
Bruce A. Mah
4a46483341
Merge branch 'master' of github.com:/esnet/iperf 2018-02-22 12:09:51 -08:00
Bruce A. Mah
63ae66353a
Comment on a few unused states in the state machine. 2018-02-22 12:08:50 -08:00
Jason Leschnik
a6123ce7fb Change the wording on bind parameter documentation for clarity (#702) 2018-02-21 12:23:36 -08:00
Bruce A. Mah
e147de5387
Version number bumps for iperf-3.4. 2018-02-12 14:08:45 -08:00
Bruce A. Mah
e7aa59b6b8
Make --cport work without --bind (#697).
This commit also adds SCTP support for --cport.

Fixes #616.
2018-02-12 10:30:23 -08:00
Bruce A. Mah
47450ad9e1
Fix a server-side crash with --verbose and a client with multiple connections. (#696)
This was caused by a stale / invalid pointer reference that didn't even
make any sense in context anyway.  Fixes #686.
2018-01-26 13:35:45 -08:00
Bruce A. Mah
bd85edb80a
If we're sending output to stdout, then make errors go to stderr. (#695)
No effect on JSON format output or output to a file.

Submitted by @cygnus2048, fixes #688.
2018-01-26 11:38:15 -08:00
Bruce A. Mah
cf325910bd
Make IPv6 flow labels work correctly where they didn't before. (#694)
This can happen with multiple parallel streams or with two single
stream tests run close together in time.

The fix is to allow flow labels to be reused by multiple sockets
simultaneously or within their timeout.

Submitted by @cygnus2048 and fixes #689.
2018-01-26 11:29:33 -08:00
Bruce A. Mah
b481169a5f
Fix large values of -p on FreeBSD by setting a large listen(2) backlog. (#693)
Might be useful for other platforms as well (no effects on Linux
because the semantics of listen(2) are subtly different there).
Submitted by Matt Macy.  Fixes #691.
2018-01-26 11:19:21 -08:00
Bruce A. Mah
46cb4b4b90
Fix regression that caused client to close control connection prematurely. (#682)
The user-visible symptom was messages of the following form on the
server:

iperf3: the client has unexpectedly closed the connection

This bug was introduced in #597 and was present in iperf 3.2 and 3.3.

Fixes #677.
2018-01-03 12:03:48 -08:00
Suresh Sundriyal
a5e327b442 Include signal.h + time.h. (#680)
Required to avoid implicit declarations of 'signal()' and 'time()'; which
causes compilation to error out while compiling a statically linked binary.
2018-01-03 12:00:27 -08:00
Bruce A. Mah
1e93fdcf88
Fix comparison when checking for time skew when using authentication. (#674)
Fixes #673.

Submitted by @FuzzyStatic, reviewed by @ralcini.
2018-01-02 14:55:01 -08:00
Bruce A. Mah
eddfb8267e
Fix a couple of problems with the help message for the --length option.
* The canonical long-form option name is "length", not "len".

* The default length for UDP should be displayed in bytes not KB.
2017-11-27 09:50:50 -08:00
Bruce A. Mah
c0225583af
Fix a compiler warning on FreeBSD related to getline(3). 2017-11-16 14:22:55 -08:00
Bruce A. Mah
19329249d1
Fix some compile-time warnings on macOS (#671)
* Attempt to quiet a warning with print(3) formatting. As a part of this, factor out PRIu64 support / compatibility (added in #664) into a header file and make it more portable by taking into account the size of a long integer. Based on email conversation with: @pprindeville.

* Follow-up to pull request #669, fixing compiler warnings on platforms that don't have HAVE_TCP_CONGESTION defined.
2017-11-16 14:12:24 -08:00
Tobias Klausmann
f61355e3e1 Make help and manpage a bit clearer about TOS and DSCP values (#670)
Since iperf3 uses strtol() to parse these values, the user can specify
them with 0 prefix for octals and 0x for hex values.
2017-11-16 09:18:40 -08:00
Todd C. Miller
b6072241bf Add missing saved_errno dance around some close(2) calls. (#669) 2017-11-14 14:29:41 -08:00
Todd C. Miller
34f878a2c0 Remove unused functions (#668)
Namely, getsock_tcp_mss(), set_tcp_options() and iperf_test_reset().
Also fix a typo in the libiperf manual;
iperf_test_reset() was listed instead of iperf_reset_test().
2017-11-14 13:35:29 -08:00
Bruce A. Mah
222da46ba9
Follow-on to pull-request #665...update manpage and comments.
These reflect support for -A on Windows.
2017-11-13 13:00:10 -08:00
Boris Okunev
5b27ea39a7 Implemented -A flag for Windows (#665)
TODO:  Need to update some documentation that reflects `-A` is applicable to Windows.  @bmah888 to do this.
2017-11-13 12:54:34 -08:00
Todd C. Miller
480824e3c1 Remove a few unnecessary headers and unused functions. (#667)
* EXIT_SUCCESS and EXIT_FAILURE are defined in stdlib.h, not sysexits.h
so no need to include the latter.

* No need to include pthread.h.

* Remove the no longer used delay() function.
This also removes the reliance on nanosleep().

* Remove get_tcp_windowsize() and set_tcp_windowsize() which are unused.
These days, iperf uses get/setsockopt() with SO_SNDBUF SO_RCVBUF directly.
2017-11-11 10:26:59 -08:00
Bruce A. Mah
73b02f9819
Implement daemon(3) for systems that don't have it.
Fixes (and based on a patch in) #369, with some reworking by @bmah888 and @pprindeville.
2017-11-11 10:12:55 -08:00
Bruce A. Mah
95d408962a
Add function declaration for our getline() compat implementation.
Should have been a part of #663, which fixes #607.
2017-11-10 12:04:35 -08:00
Bruce A. Mah
d06415822a
Regen after merge of #663. 2017-11-08 10:19:49 -08:00
Bruce A. Mah
cb2dcd3f6d
Provide a getline(3) implementation for systems without it. (#663)
The getline(3) implementation comes from NetBSD's file(1) command.
This should make compiling work on macOS pre 10.7.  Fixes #607.
2017-11-08 10:18:30 -08:00
Philip Prindeville
d88f4cecf3 Fix 3.3 build warnings (#664)
* Fix warnings about _GNU_SOURCE being redefined.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

* Fix warnings of format-specified mismatching type

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

* Simplify endianness checks

Linux can be built with too many types of C run-time library and it's
not reasonable to have to enumerate all of them, especially since at
least one of them (MUSL) goes out of its way to not be easily
detectable.

Instead, leverage autoconf better for Linux/BSD to detect either
<endian.h> or <sys/endian.h> directly.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

* Sys headers should not be included directly

There's usually a top-level header which then includes the sys/
descendent.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-11-08 09:29:26 -08:00
Boris Okunev
d60f6234d5 Issue #659 (#660)
Ignore nonsensical TCP MSS when trying to compute the default UDP packet size.  This fix seems to be primarily needed for Windows systems, but it's a good bit of sanity checking to do in any case.
2017-10-27 14:38:08 -07:00
Bruce A. Mah
010fc7e6c8 Don't overwrite a PID file corresponding to a valid process. (#654)
This fixes a problem described in issue #623 where the PID file
opened by a running instance of iperf3 could be overwritten /
deleted by a subsequent invocation of iperf3.
2017-10-25 10:04:26 -07:00
Bruce A. Mah
24da2caa09 Fix memory leak introduced in 1460aa3433769db1f5660e7819b669e5414e9b42. (#652)
Pointed out by:  @pprindeville
Should have been found by:  @bmah888
2017-10-13 11:01:06 -07:00
ralcini
1460aa3433 fix for https://github.com/esnet/iperf/issues/650 (#651)
Reset authentication token between tests.  Fixes #650.
2017-10-11 14:03:57 -07:00
Bruce A. Mah
b5640ac6c2 Clear TOS value when resetting test parameters. (#647)
This addresses a problem where the --tos parameter would incorrectly
"stick" on the server, causing wrong TOS values to be inserted into
packets during --reverse tests.  Fixes #639.
2017-10-11 12:10:11 -07:00
Bruce A. Mah
720a0a3e63 Allow the client to pass a duration of 0 to the server. (#648)
Seems to fix #645.
2017-10-11 11:05:55 -07:00
Bruce A. Mah
25f5947512 Fix a problem formatting very large numbers. (#642)
Avoid walking off the end of an array when trying to format a number larger than 1000T.

Motivated by #641, as reported by @shingchuang, but slightly
reimplemented.
2017-10-04 10:15:19 -07:00
Malte
b2900fd710 Delete outdated comment
This comment became outdated with cba8584b2
2017-10-04 02:09:30 +02:00
Bruce A. Mah
ca954c7668
Reverse the order of tests for better legibility and logical sense.
Suggested by @pprindeville.
2017-09-19 09:14:24 -07:00
Bruce A. Mah
d6a6751746
Two fixes for a warning for possibly-too-large UDP packets.
1.  Make sure we have a valid TCP MSS on the path when comparing
the UDP block size.

2.  Fix a redundant "warning".

This should fix a bug observed on Windows but not (so far) on any
UNIX-like platforms.  Fixes #608.
2017-09-18 15:17:18 -07:00
Bruce A. Mah
7cf95d205d
Regen. 2017-08-14 13:46:35 -07:00
Philip Prindeville
517ad2248f Add required RSA header for OpenSSL (#622)
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-08-01 11:16:07 -07:00
Bruce A. Mah
dadbd25838
Fix spelling mistake in manpage.
Fixes #610, pointed out by @borenius-dfn-de.
2017-07-17 08:22:45 -07:00