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

1095 Коммитов

Автор SHA1 Сообщение Дата
Bruce A. Mah
f95924ddcf
chore: iperf-3.8 release engineering changes (#1012)
Updates version numbers, release notes, etc.
2020-06-08 13:12:36 -07:00
Bruce A. Mah
7457ef810f
Add recently-created t_auth to .gitignore. 2020-05-28 10:13:48 -07:00
Bruce A. Mah
f72054ebaf
Allow disabling auto-detect of SCTP (#1008)
* feat: Add a mechanism to disable checks for SCTP (--without-sctp).

The use case for this is building a static iperf3 binary on CentOS 7,
on a system with SCTP installed (but it has no static SCTP libraries).
In that case we need to disable SCTP detection to prevent a linking
error at runtime.

While here, s/iperf /iperf3 / in a couple of help strings.
2020-05-28 10:10:21 -07:00
Bruce A. Mah
99b79f2102
fix: Fix stupid memory leak. (#1005)
Pointed out by @oleh-yudin-ring.  Follow-up to #996.
2020-05-22 12:09:26 -07:00
Bruce A. Mah
33d3b199e6
Regen. 2020-05-20 14:36:48 -07:00
Bruce A. Mah
5b7b99ed81
Add tests for iperf_api functions. 2020-05-20 14:35:52 -07:00
Bruce A. Mah
06e3f08d98
fix(auth): Fix a potential buffer overflow in iperf3 client.
This condition was only possible when configuration authentication
via the libiperf API.

While here, also fix a few other sundry issues:

* Remove arbitrary length limits on username and password.

* Improved error handling.

* Updated error messages for readability.

* Fixed minor typo in some identifiers.

Fixes #996.
2020-05-20 14:34:11 -07:00
Bruce A. Mah
79630e8734
fix: Fix memory management issues around calls to cJSON_Print() (#997)
Related to #883.
2020-05-19 07:44:09 -07:00
Bruce A. Mah
de848cffad
feat(api): Provide API access to --commit-timeout. (#1001)
Fixes #1000.  Part of #595.
2020-05-19 07:37:18 -07:00
Bruce A. Mah
2609dd7123
fix(udp): Properly initialize for the first UDP packet received. (#990)
This fixes a problem where UDP tests between systems with significant
clock skew would register large amounts of jitter at the start of the
test.

Fixes #842.  Analysis done by (and solution inspired by) @davidBar-On.
2020-05-12 16:26:55 -07:00
Bruce A. Mah
1521d9b522
bug(udp): Fix minor problem in a debug message. (#995)
Fixes #993.  Submitted by @davidBar-On.
2020-05-11 12:21:26 -07:00
Bruce A. Mah
06280a6d01
Regen. 2020-05-04 15:11:05 -07:00
Ezra
9427ecdf3c
Add configure option to enable static linking of iperf binary. (#989) 2020-05-04 15:09:05 -07:00
Michal Ruprich
e39e44fdfd
Fix for possible leaks or double frees (#968) 2020-05-04 15:05:18 -07:00
ralcini
cf1cad407a
fix: Resolved name clashes between windows.h and openssl (cygwin under Win10) (#984)
Fixes #983.
2020-04-20 17:19:29 -07:00
Bruce A. Mah
624c01d444
chore: Fix whitespace glitch that caused a compiler warning on Ubuntu 18.04.
Whitespace-only change, no functional difference.
2020-04-14 17:03:04 -07:00
Bruce A. Mah
6c10d8a0f3
enh: Update cJSON to 1.7.13 (#978)
This is a modified version of cJSON with support for 64-bit integers.  This change pulls in some bug fixes and security fixes.  It also fixes some compiler warnings on ILP32, caused by the way that we imported the previous cJSON (fixes inspired by #855).
2020-04-14 16:59:56 -07:00
Stefano Garzarella
23cd3ddc86
fix (iperf_api): fix compiler warning while printing an uint64_t (#969)
Fix the following warning:
../../src/iperf_api.c: In function ‘iperf_on_connect’:
../../src/iperf_api.c:791:58: warning: format ‘%llu’ expects argument
of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t’
{aka ‘long unsigned int’} [-Wformat=]

Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2020-03-27 15:03:56 -07:00
Tamir Duberstein
120b7efee9
fix: include iperf_util.h in main.c (#954)
73b02f9 implemented `daemon(3)` for systems that don't have it, but the
function prototype was never included in `main.c` where it is
referenced.
2020-03-17 13:58:49 -07:00
Bruce A. Mah
cfcfabf5d7
fix(cygwin): Fix compile error where CPU_SETSIZE isn't defined. (#948)
Based on a fix from @RomelSan.

Fixes #944.
2020-03-17 13:51:07 -07:00
Bruce A. Mah
6f5512e631
docs: Follow-up to #959, more copyright year bumps. 2020-02-21 14:17:05 -08:00
Joe Karlsson
2782d2a420
Updated Copyright year to 2020 (#959) 2020-02-21 14:08:23 -08:00
Oleh Yudin
bb115306f8 Fix memory leaks for RSA key setters (#949)
Originally discussed in #940.
2020-01-06 16:33:06 -08:00
Bruce A. Mah
4a3efb37da
build: Unbreak builds on macOS by not building profiled binaries by default (#950)
Fixes #933.
2020-01-06 13:43:29 -08:00
Xiang Xiao
4e9a30bba3
fix cjson warning: "true" and "false redefined
the similar change also exist in the offical git:
https://github.com/DaveGamble/cJSON

Part of #935.

Change-Id: I3d98de3ec893ccf0b0cab37acc2dbfef00d9e2b6
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
(cherry picked from commit 98c868360c858f4c5fd466bd03fd157ac56b3f06)
Signed-off-by: Bruce A. Mah <bmah@es.net>
2020-01-03 13:47:44 -08:00
Xiang Xiao
6343986796
ensure build_tcpinfo_message TCP_INFO check consistent with iperf_interval_results
Part of #935.

Change-Id: Id702dee9d894d91420719928ae2de6b44b72f579
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
(cherry picked from commit 9dab732f5ec41be873cae3351b3d57fbfad36c93)
Signed-off-by: Bruce A. Mah <bmah@es.net>
2020-01-03 09:07:03 -08:00
Xiang Xiao
666040bd79
fix hotn?, strcasecmp and timeval isn't defined error
by including arpa/inet.h, strings.h and sys/timer.h

Part of #935.

Change-Id: Ibac8d3a992457f2a7cc10f74b144e3ebe69976d8
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
(cherry picked from commit b9aa6cef43b338666a72bf6425fc88ed7602bce5)
Signed-off-by: Bruce A. Mah <bmah@es.net>
2020-01-02 15:58:20 -08:00
Xiang Xiao
0eb370de2e
check SIGINT/SIGTERM/SIGHUP defined before using them
since not all platform define these signal number

Part of #935.

Change-Id: I98f14590ad45d1fe7e61076cce5a76b7874772ea
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
(cherry picked from commit d4267b66b5550c0e4cfec60439eab1d57a4a0c7a)
Signed-off-by: Bruce A. Mah <bmah@es.net>
2020-01-02 15:54:19 -08:00
Xiang Xiao
407a5ba84c
fix warning: "HAVE_NETINET_IN_SYSTM_H"/"HAVE_NETINET_IP_H" is not defined
Part of #935.

Change-Id: Ibcc4ad4370a6f99b030ca2c44f151c4550695957
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
(cherry picked from commit 6c10c3e6e65ffca32d97b3f2ef4db839c049a85c)
Signed-off-by: Bruce A. Mah <bmah@es.net>
2020-01-02 13:19:30 -08:00
Xiang Xiao
a0af1e68c8
change some file mode from 100755 to 100644
Part of #935.

Change-Id: I5c563ad0cffce1a75b6a8039aa9a2e1543763880
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
(cherry picked from commit d7e30bea791e7bcd28eebf1ca6fe39e4f00ddc3c)
Signed-off-by: Bruce A. Mah <bmah@es.net>
2020-01-02 13:16:47 -08:00
Bruce A. Mah
a294bd4ce7
fix: Copy some strings passed as API parameters for consistency with CLI. (#943)
Fixes #939.
2019-12-20 15:39:26 -08:00
Bruce A. Mah
79e1cd35b5
fix: Make prototype for iperf_set_test_extra_data() match its definition.
Fixes #938.
2019-12-20 21:57:47 +00:00
wallyatgithub
02a5f47558 add window size support for sctp (#926) 2019-11-01 12:10:15 -07:00
bobobo1618
b95a580f0c Add (extremely) minimal Dockerfile (#824) 2019-10-18 14:14:51 -07:00
Ondrej Lichtner
80353b0ada fix: fix burst mode throttle checking (#898)
When burst mode is configured for unlimited rate (-b0) but with a
specific packet burst value (e.g. /1000), iperf only sends packets once,
after that the iperf_check_throttle function gets called and sets
green_light=0 due to the rate value being 0 and average calculated rate
always being higher than 0.

The iperf_check_throttle function is designed to be skipped in case the
target rate is unlimited or if a specific burst value was configured,
however this skip is only utilized in one place where the function is
called leading to the situation above.

This can be fixed by moving the "skip throttling" condition directly
inside the iperf_check_throttle function.

Signed-off-by: Ondrej Lichtner <olichtne@redhat.com>
2019-10-01 16:55:14 -07:00
Allen Flickinger
22da02dcfb enh: Add server authentication API functions (#911) 2019-10-01 13:28:38 -07:00
Bruce A. Mah
60e9b84624
Chore: Regen. 2019-08-19 14:40:12 -07:00
Bruce A. Mah
504ed7a2e3
chore: Post-release version number bump. 2019-08-19 14:39:14 -07:00
Sergey Nemov
9c69a85088 fix: Fix a bug in --bidir option processing (#903)
If --bidir option was passed before --client option on command line,
the latter would override ipt->mode parameter of the test back to SENDER
or RECEIVER making the test hang during execution.

Fix this by checking if ipt->bidirectional was set to true in
iperf_set_test_role() function.
2019-08-19 14:29:27 -07:00
Bruce A. Mah
d0d77e9519
doc: Fix error in domain name for mailing list. 2019-06-28 16:32:13 -07:00
Bruce A. Mah
c47e43d5a3
doc: Document --bidir option in manpage. (#893)
Fixes #890.
2019-06-24 17:37:32 -07:00
Bruce A. Mah
dd0e309305
docs: Fix date in 3.7 release item.
Fixes #892.
2019-06-24 12:39:45 -07:00
Bruce A. Mah
2a7847a081
docs: Bump version number in documentation. 2019-06-21 15:58:40 -07:00
Bruce A. Mah
6e6f0daf2c
doc: News update for iperf-3.7. 2019-06-21 13:49:08 -07:00
Bruce A. Mah
dfcea9f6a0
chore: iperf-3.7 release engineering tasks.
Bump version number, update release notes, rename release notes and tweak
markup.
2019-06-20 18:12:47 -07:00
Bruce A. Mah
38bac802fa
fix: Emit appropriate error messages from getaddrinfo(3). (#888)
* fix: Emit appropriate error messages from getaddrinfo(3).

This fixes an omission likely caused when switching resolver
library calls.  Fixes #846.
2019-06-18 16:03:21 -07:00
Bruce A. Mah
c4bd56f373
fix: Fix off-by-one memory overwrite crash and memory leaks (#887)
The base64 decode will crash on musl c-library builds for OpenWRT
due to the write of the '\0' past the end of the allocated buffer.
Fix other various memory leaks on the authentication code paths.
Fix some memory-free library calls into OpenSSL.

Based heavily on PR #881 originally submitted by @acmay, 
with comments from @ralcini.
2019-06-18 15:11:32 -07:00
Andrew Cooks
098dd3cc1b
delay tearing down tcp control connections
The TEST_END message is racing with the server_timer_proc timer.
When the RTT is higher than a second, the timer wins the race
and closes the control socket before the results are exchanged.

This results in the client reporting:
"error - control socket has closed unexpectedly"
as reported in GH issue 751.

This change doesn't prevent the race, but significantly increases the
grace period based on a maximum RTT of 4 seconds and accounts for
the ten transitions in the iperf3 state machine.

(cherry picked from commit 34bdddb75194e880e6dbc6dcaa5b5386975c11b3)
(originally submitted by @acooks in #859)
2019-06-14 11:38:54 -07:00
Bruce A. Mah
6c7834629a
Fix: Don't allow --port 0 or other invalid values. (#885)
* Fix:  Don't allow --port or --cport to take 0 or other invalid values.

Fixes #884.
2019-06-14 11:21:15 -07:00
srgnk
255a9c7110 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.
2019-06-05 16:08:17 -07:00