History log of /iperf/src/iperf_client_api.c (Results 1 – 25 of 97)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 7bdd5b0e 20-Feb-2022 David Bar-On <[email protected]>

Fix for issue 1215 - add TCP option


Revision tags: 3.11
# 76bd67f6 28-Jan-2022 Sarah Larsen <[email protected]>

iperf-3.11 release engineering tasks.

Bump version number, update release notes, rename release notes and tweak
markup. Update copyright year.


# e4428187 08-Jan-2022 David Bar-On <[email protected]>

Fix 1249 - use different ports for each direction when cport and bdir options are set


# 805a4ce1 11-Nov-2021 Bruce A. Mah <[email protected]>

Consistify string lengths for arguments to warning().


# 24753fd7 05-Oct-2021 swlars <[email protected]>

Null checks (#1216)

* Add NULL checks and comment

* Remove comment

* Change printf to iperf_err and add brackets to else

* Add test to iperf_err

* Revert iperf_err to printf


# 0b15c449 23-Sep-2021 Sarah Larsen <[email protected]>

Add comment to clean_up_and_fail


# 1ed0239d 13-Sep-2021 Joakim Sørensen <[email protected]>

Don't exit in cleanup_and_fail


# e919e8c2 03-Sep-2021 a1346054 <[email protected]>

trim excess whitespace


Revision tags: 3.10.1, 3.10
# 2ec43d12 18-May-2021 David Bar-On <[email protected]>

Fix issue #1143 - make sure terminating error message is inside the JSON output


# 1e33e721 14-Apr-2021 Bruce A. Mah <[email protected]>

fix: Handle correctly some errors on initial client connect. (#1139)

This is a mostly-cosmetic reimplementation of pull request #1128.

Original commit log:

Fix two issues that caused an active

fix: Handle correctly some errors on initial client connect. (#1139)

This is a mostly-cosmetic reimplementation of pull request #1128.

Original commit log:

Fix two issues that caused an active TCP test to terminate if a new
connection request was received while in streams creation phase.
One issue was in iperf_tcp_accept() - after identifying that the cookies
of the new connection if from a new client, error was returned which
caused the active test to terminate. The other issue was in
iperf_run_server() where congestion alg was set for the new client,
although the stream to it was already closed by iperf_tcp_accept().
That also cause the active test to terminate.

Another minor issue that was fixed is that after a client received a
failure state (negative state) from the server, iperf_client_end()
still tried to send back IPERF_DONE to the server. That caused the
client to issue failure message of "unable to send control message:
Connection reset by peer" instead of "the server is busy running a test".

Originally submitted by: @davidBar-On

show more ...


# 8464c3c2 09-Apr-2021 Bruce A. Mah <[email protected]>

fix: Don't try to close the control connection if it never got opened. (#1136)

This prevents an "undefined socket" error, which can be incorrect if
the control connection didn't get opened due to a

fix: Don't try to close the control connection if it never got opened. (#1136)

This prevents an "undefined socket" error, which can be incorrect if
the control connection didn't get opened due to a (for example)
"connection refused" type error.

This can be tested by running iperf3 in client mode and pointing it
towards a non-existent (or not-running) server.

Fixes #1129 (#1132 was an earlier, partial fix).

show more ...


# 53a68308 15-Mar-2021 David Bar-On <[email protected]>

Fix issue 1061 - not fail in WSL1 when cannot get default congestion alg name (#1126)


# 8ffe72e2 26-Feb-2021 David Bar-On <[email protected]>

enh: Add --rcv-timeout option (#1125)

Enhancement to PR #1101 - add --rcv-timeout option to allow setting the timeout for receiving packet from the sender in a running test, instead of the constant

enh: Add --rcv-timeout option (#1125)

Enhancement to PR #1101 - add --rcv-timeout option to allow setting the timeout for receiving packet from the sender in a running test, instead of the constant 120 seconds set in #1101. This is to allow short timeout, so the server will not be "busy" for long time doing nothing. Also, the resolution is set to ms (with minimum of 100ms), as at least in fast networks that may be required.

Since both the server and the client can be a sender, the option is allowed for both. The server setting is for all tests - the client is not sending its --rcv-timeout setting to the server.

While changing the help message, few printf constants from other help lines were changed to parameters.

show more ...


# 41089978 06-Feb-2021 Hamid Anvari <[email protected]>

Fix/Optimize test termination condition check (#1114)

`test->done` represents the test completion.
In some modes, duration-based (-t) test, and file-transfer (-F) in particular,
the `test->done`

Fix/Optimize test termination condition check (#1114)

`test->done` represents the test completion.
In some modes, duration-based (-t) test, and file-transfer (-F) in particular,
the `test->done` is set during the timeout handler or file-transfer functions.
For such configurations, and in general, `test->done` being set is sufficient
condition for terminating the test.

This commit generalizes the condition check to `test->done`,
removing the clause which limtis this condition case to duration-based test only.

show more ...


# 21581a72 22-Dec-2020 Bruce A. Mah <[email protected]>

enh: Support SO_BINDTODEVICE (#1097)

This lets iperf work better with multi-homed machines and
VRF.

Fixes #1089.

Based on a patch by Ben Greear <[email protected]> via PR #817.

Co-au

enh: Support SO_BINDTODEVICE (#1097)

This lets iperf work better with multi-homed machines and
VRF.

Fixes #1089.

Based on a patch by Ben Greear <[email protected]> via PR #817.

Co-authored-by: Ben Greear <[email protected]>

show more ...


# 97a1d11a 26-Oct-2020 Bruce A. Mah <[email protected]>

enh: Set TCP_NODELAY on control connections. Reimplementation of #1046. (#1063)

The goal is to improve the responsiveness and/or reliability of
messages on the control connection, particularly in

enh: Set TCP_NODELAY on control connections. Reimplementation of #1046. (#1063)

The goal is to improve the responsiveness and/or reliability of
messages on the control connection, particularly in cases where the
test traffic fills up the path between client and server.

Originally suggested and implemented by @andrepuschmann, this version
adds some error-checking and a version for the client side as well as
the server.

Fixes #1045.

show more ...


# b818ef51 18-Sep-2020 Bruce A. Mah <[email protected]>

Issue 982 (#1054)

* fix: Make --reverse tests with --blockcount or --bytes actually terminate.

Note that these options still don't really give intuitive results, because
the ending conditions ar

Issue 982 (#1054)

* fix: Make --reverse tests with --blockcount or --bytes actually terminate.

Note that these options still don't really give intuitive results, because
the ending conditions are evaluated on the client, which then needs to
convey to the server via the control channel to stop sending. This
will almost never result in the desired outcome of "a test of exactly
N sends (or bytes) sent from the server to the client".

Also add test cases for --blockcount / --bytes with --reverse.

Towards #982.

show more ...


Revision tags: 3.9
# e551fbcf 12-Aug-2020 Bruce A. Mah <[email protected]>

fix: Remove debugging code that shouldn't have been committed.

Thanks to @rantala for finding this.

Follow-on to #1023 / #1033.


# 80b7c7b2 04-Aug-2020 Bruce A. Mah <[email protected]>

fix: Plug various minor memory leaks (#1033)

* fix: Fix memory leaks related to --logfile.
* fix: Fix memory leaks related to loading RSA keys.
* fix: Fix some memory leaks in failure cases in the

fix: Plug various minor memory leaks (#1033)

* fix: Fix memory leaks related to --logfile.
* fix: Fix memory leaks related to loading RSA keys.
* fix: Fix some memory leaks in failure cases in the iperf3 client.

Fixes #1023.

show more ...


Revision tags: 3.8.1, 3.8, 3.7
# 255a9c71 05-Jun-2019 srgnk <[email protected]>

enh: Introduce iperf_set_test_logfile API function (#871)

To be able to set the test->outfile to a different file other than default
if using libiperf API.

Since logfile is now opened in iperf_p

enh: Introduce iperf_set_test_logfile API function (#871)

To be able to set the test->outfile to a different file other than default
if using libiperf API.

Since logfile is now opened in iperf_parse_arguments() and this function
may not be used if running iperf using API, define a dedicated function
iperf_open_logfile() and move the opening of logfile into
iperf_run_client() and iperf_run_server() to make sure logfile will be
opened if iperf_parse_arguments() was not called.

show more ...


# 0778f04c 13-Dec-2018 Boris Okunev <[email protected]>

Bidirect mode implementation (#780)

Adds the `--bidir` flag to support simultaneous two-way tests.

Submitted by @LikHait. Fixes #201.


Revision tags: 3.6
# d8f2276d 08-Jun-2018 Brendan Jackman <[email protected]>

Fix some indentation (#750)

There are lots of mixed tabs and spaces, most of them look OK if tabs are 8
characters wide, but this bit seems to have been written by someone whose editor
thinks they

Fix some indentation (#750)

There are lots of mixed tabs and spaces, most of them look OK if tabs are 8
characters wide, but this bit seems to have been written by someone whose editor
thinks they're 4 characters wide, so it looks all messed up.

show more ...


# cde81d76 16-May-2018 Ben Fox-Moore <[email protected]>

Add initial portable time abstraction


Revision tags: 3.5, 3.4
# 46cb4b4b 03-Jan-2018 Bruce A. Mah <[email protected]>

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 c

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.

show more ...


# 19329249 16-Nov-2017 Bruce A. Mah <[email protected]>

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

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.

show more ...


1234