Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
394 commits
Select commit Hold shift + click to select a range
3f7dbae
Changes per review comments with some enhancements
davidBar-On Jul 27, 2024
ac4205b
Merge pull request #1734 from davidBar-On/state_change_debug_messages
bmah888 Jul 28, 2024
92c9155
Add SCTP information to --json output (#1731)
davidBar-On Aug 2, 2024
f89aee0
Merge pull request #1728 from marcosfsch/64bit-MAX_PACING_RATE
swlars Aug 5, 2024
e9e49c4
Performance enhancement for iperf_time_add()
davidBar-On Aug 10, 2024
783095e
Fix #1741 - reduce CPU usage when test baud rate is limited
davidBar-On Aug 11, 2024
9e4ccfb
Fix rcv-timeout issue because of Nread timeout
davidBar-On Aug 13, 2024
67ca2c8
Merge pull request #1713 from neheb/patch-1
bmah888 Aug 13, 2024
5bf93d6
Merge pull request #1742 from davidBar-On/iperf_time_add_usecs-perfor…
bmah888 Aug 26, 2024
3da07ae
remove incorrect freeaddrinfo call
kulikjak Aug 28, 2024
af81adc
Changes per reviewer comments
davidBar-On Aug 29, 2024
9d73cee
Fix #812 and #835 - add control connection keepalive (after rebase wi…
davidBar-On Aug 29, 2024
4abd5ea
Merge pull request #1743 from davidBar-On/issue-1741-reduce-cpu-utili…
bmah888 Aug 30, 2024
7679199
Regen.
bmah888 Aug 30, 2024
0128d03
Veify that Params JSON size was received and is resonable
davidBar-On Jun 2, 2024
5b0ed63
Add check that size is positive
davidBar-On Jun 2, 2024
d2a6ba6
Changes per reviewer comments (with rebase)
davidBar-On Sep 12, 2024
36deba4
Merge pull request #1744 from davidBar-On/rcv-timeout-fix
bmah888 Sep 13, 2024
d5713db
Avoid subthread signal handling (#1752)
xTire Sep 13, 2024
62f3fb2
Merge pull request #1755 from kulikjak/fix-freeaddrinfo
bmah888 Sep 13, 2024
dab301f
Call warning() instead of printf("WARINING: ....")
davidBar-On Sep 15, 2024
7bd583d
Avoid duplicate thread recycling.
Sep 9, 2024
bf12abb
Remove the usage of pacing_timer and simplify iperf_mt_send
davidBar-On Sep 19, 2024
31b63a0
Issue 1770 - not limit omit time
davidBar-On Sep 20, 2024
99cf98a
Merge pull request #1709 from davidBar-On/JSON_read-check-JSON-size
swlars Sep 20, 2024
0ea9cb6
Merge pull request #1761 from answer9030/master
bmah888 Sep 20, 2024
54b2288
fix typo in iperf_util.c
Sep 27, 2024
5fa8608
Merge pull request #1777 from iZarrios/fix-iperf-util-typo
bmah888 Sep 27, 2024
464ce7c
Fix for #1776 - do not limit JSON size for --get-server-output
davidBar-On Sep 27, 2024
062ad48
Merge pull request #1779 from davidBar-On/JSON_read-check-JSON-size
swlars Oct 18, 2024
c038abe
-No select() when reading data (used only for control/json read)
davidBar-On Oct 15, 2024
38b4dde
Merge pull request #1787 from davidBar-On/issue-1707-UDP-higher-packe…
bmah888 Oct 25, 2024
80e657f
Merge pull request #1712 from MattCatz/patch-2
bmah888 Oct 25, 2024
3f10f76
Bump actions/checkout to v4
tinyboxvk Oct 31, 2024
0586e1c
Merge pull request #1773 from davidBar-On/pacing_timer-remove__and__m…
bmah888 Nov 1, 2024
da42eba
Improved iperf_udp_recv() debug messages
davidBar-On Nov 5, 2024
4511c3b
Merge branch 'master' into UDP-NET_SOFTERROR-debug-message
swlars Nov 7, 2024
2575ae8
Merge pull request #1795 from tinyboxvk/patch-1
bmah888 Nov 7, 2024
a9080ee
Merge branch 'master' into issue-812-835-control-connection-keepalive
swlars Nov 8, 2024
e03c2cc
Changes per reviewer comments - limit omit time to MAX_OMIT_TIME
davidBar-On Nov 20, 2024
de2456c
Change help to make current -n/-k behavior a feature - end test at th…
davidBar-On Nov 21, 2024
53d645d
Do not try to cancell NULL thread
davidBar-On Nov 21, 2024
fa183fd
Remove init line per reviewer comment
davidBar-On Nov 22, 2024
abe95a9
Merge pull request #1774 from davidBar-On/issue-1770-no-limit-to-omit…
bmah888 Nov 22, 2024
510cf65
Merge pull request #1801 from davidBar-On/bug-fix-do-not-try-to-cance…
bmah888 Dec 3, 2024
d595ee6
Merge pull request #1379 from davidBar-On/UDP-NET_SOFTERROR-debug-mes…
swlars Dec 6, 2024
beadb59
fix build with gcc-15
heitbaum Dec 9, 2024
01888d2
Fix Segfault in iperf_err(exit)
martin-ottens Dec 11, 2024
3f66f60
Add a variant of cJSON_GetObjectItem that does type-checking.
swlars Nov 15, 2024
7a77e52
Merge pull request #1810 from esnet/IP-282
bmah888 Dec 13, 2024
e68dad6
Update release notes and version numbers for iperf-3.18.
bmah888 Dec 14, 2024
2a29844
Regen.
bmah888 Dec 14, 2024
1e80c4f
Reset the congestion protocol on the server between tests
hwti Dec 14, 2024
e4cb673
docs: Note iperf-3.18 release.
bmah888 Dec 16, 2024
0f7366c
Post release version number bump to 3.18+.
bmah888 Dec 17, 2024
85d454c
Regen.
bmah888 Dec 17, 2024
aaa7425
Increase MAX_MSS to 32K
nshopik Dec 21, 2024
cf75cf4
add MPTCPv1 support
geliangtang Mar 6, 2024
edf5c75
Fix typo in LICENSE
tinyboxvk Jan 9, 2025
24239de
Fix typo in units.c
tinyboxvk Jan 9, 2025
94280a5
Fix typo in iperf_locale.c
tinyboxvk Jan 9, 2025
108c293
Fix typo in iperf_api.c
tinyboxvk Jan 9, 2025
c5383b8
Fix typo in iperf3.1
tinyboxvk Jan 9, 2025
70de753
Fix typo in invoking.rst
tinyboxvk Jan 9, 2025
352ef1b
Merge pull request #1812 from hwti/reset-congestion-protocol
bmah888 Jan 10, 2025
36e47e7
Fix issue that bitrate is ignored when burst is set (with Nanosleep)
davidBar-On Jan 16, 2025
069a37d
iperf_api: fix potential descriptor leak
maks-mishin Jan 16, 2025
d9333ca
Properly define variables when nanosleep is not available
davidBar-On Jan 17, 2025
bd292ee
Merge branch 'master' into master
swlars Jan 17, 2025
9e1360d
Merge pull request #1661 from geliangtang/master
bmah888 Jan 17, 2025
49acc94
Regen.
bmah888 Jan 17, 2025
9050d81
JSON_Read() warning messages enhancements (#1817)
davidBar-On Jan 27, 2025
7b5fb7d
Merge pull request #1819 from tinyboxvk/patch-1
bmah888 Jan 27, 2025
83f1da7
docs: Fix wrong URL in news entry for iperf-3.18.
bmah888 Jan 31, 2025
a4621f1
Merge pull request #1827 from esnet/issue-1826
bmah888 Feb 3, 2025
4bab9bc
Exit with 0 on SIGTERM
davidBar-On Feb 6, 2025
aa8c4f7
Change sp->test->state to test->state per reviewer comment
davidBar-On Feb 6, 2025
c8dec9e
Merge pull request #1800 from davidBar-On/end-of-test-help-for-n-k-op…
bmah888 Feb 6, 2025
d8af312
Merge pull request #1797 from davidBar-On/udp_recv_improved_debug_mes…
bmah888 Feb 6, 2025
7e58c53
Merge pull request #1821 from davidBar-On/issue-1820-bitrate-ignored-…
bmah888 Feb 7, 2025
806a7ce
Add callback function to get JSON strings instead of writing them to …
davidBar-On Nov 17, 2024
76c60ee
Per reviewer comment - add parameter to the callback function and en…
davidBar-On Feb 8, 2025
7e8a19f
Per reviwer comment added SIGHUP to the non-error signals and added #…
davidBar-On Feb 8, 2025
296222d
Merge pull request #1807 from martin-ottens/master
swlars Feb 10, 2025
46af7e9
Add also SIGINT to the non-error signals
davidBar-On Feb 11, 2025
6b69d06
Merge pull request #1798 from davidBar-On/issue-1711-library_function…
bmah888 Feb 14, 2025
5e22d15
Add missing code for SERVER_ERRROR handling under HAVE_SSL
davidBar-On Feb 15, 2025
7b2af28
Merge pull request #1829 from davidBar-On/issue-1009-exit-code-0-on-s…
bmah888 Feb 21, 2025
d77d64e
Extending PR 1821 fix to PR 1773 for sending when bitrate is set
davidBar-On Feb 28, 2025
3c725cc
Merge pull request #1848 from davidBar-On/issue-1847-second-fix-to-se…
swlars Mar 5, 2025
e161c6d
Merge branch 'master' into issue-812-835-control-connection-keepalive
swlars Mar 5, 2025
d1409d0
Merge pull request #1423 from davidBar-On/issue-812-835-control-conne…
swlars Mar 6, 2025
183ea92
Regen.
bmah888 Mar 10, 2025
b5d40ef
GitHub actions: Remove deprecated CI runner, add more diverse set of …
bmah888 Feb 21, 2025
8d9b78e
Merge pull request #1864 from esnet/update-github-workflows
bmah888 Mar 25, 2025
16c4ba9
Merge pull request #1822 from maks-mishin/iperf-api-handle-leak-fd
bmah888 Apr 18, 2025
b6afe3f
Merge branch 'master' into issue-1678-SKIP_RX_COPY-MSG_TRUNC
swlars Apr 25, 2025
329ba61
Update net.c to include Nread_no_select and Nrecv_no_select
swlars Apr 25, 2025
c49deb0
Update iperf_udp.c
swlars Apr 25, 2025
0481860
Merge pull request #1717 from davidBar-On/issue-1678-SKIP_RX_COPY-MSG…
swlars Apr 25, 2025
282140e
Regen.
bmah888 Apr 25, 2025
91894d1
Correct typo in net.c (#1874)
WatcherOfTheSkies Apr 28, 2025
7eeda4c
Merge pull request #1805 from heitbaum/gcc
bmah888 May 2, 2025
9a4a108
Merge pull request #1835 from davidBar-On/Add-missing-code-for-HAVE_S…
bmah888 May 2, 2025
71cfa71
Minor fix-ups from #1717:
bmah888 May 2, 2025
d9e4585
Merge pull request #1877 from esnet/bmah-pr-1717-fix-ups
bmah888 May 5, 2025
81b9a64
Do not allocate unused Intervals lined-list to solve memory-leak (by …
davidBar-On May 5, 2025
9f6dc21
Copyright updates for 2025.
bmah888 Apr 25, 2025
e251b99
Fix two minor memory / file descriptor leaks in iperf_tcp_connect().
bmah888 May 9, 2025
204421d
Merge pull request #1881 from esnet/bmah-memory-leaks-pr-1823
bmah888 May 9, 2025
539edb9
Release engineering updates and version bumps for iperf-3.19.
bmah888 May 16, 2025
57396df
Regen.
bmah888 May 16, 2025
e62f522
Documentation chnages for iperf-3.19.
bmah888 May 16, 2025
ecff2de
RELNOTES: fix Multipath-TCP flag
matttbe May 17, 2025
e5c4263
Fix a compilation issue with uClibc due to a missing include file.
kadambininema May 17, 2025
a651961
Post-version release bump.
bmah888 May 19, 2025
eba7c92
Regen.
bmah888 May 19, 2025
c308ca9
Merge pull request #1887 from matttbe/patch-1
bmah888 May 19, 2025
9d560ed
json: add UNIX timestamp in milliseconds
phip1611 May 21, 2025
b0c0611
new APIs for setting RSA keys by file
manedurphy May 21, 2025
2f2b503
Merge pull request #1846 from phip1611/timestamp
bmah888 May 21, 2025
3770aeb
Merge pull request #1888 from kadambininema/master
bmah888 May 23, 2025
03968e9
Allow setting options only for client or server
davidBar-On May 28, 2025
a4ab6c5
Report number of reorder_seen
kuba-moo Feb 2, 2022
84c49f2
Merge pull request #1278 from kuba-moo/report-reorder
bmah888 May 30, 2025
5fc36c9
src: Fix division by zero in UDP bandwidth calculation in iperf_api.c
AntonMoryakov Jul 11, 2025
78aef75
Fix for 3 minor issues (unrelated to each other)
davidBar-On Jul 15, 2025
24ac6e0
server_timer_proc - better handle the error
davidBar-On Jul 25, 2025
8c52536
Send errno 0 to client and some enhancements
davidBar-On Jul 25, 2025
969b7f7
Fix for buffer overflow in MSG_TRUNC udp --skip-rx-copy zerocopy
swlars Jun 13, 2025
4eab661
Prevent crash due to assertion failures on malformed authentication a…
bmah888 Jun 24, 2025
4e5313b
Fix off-by-one heap overflow in auth.
swlars Jun 25, 2025
c0f0444
iperf3-3.19.1 Release notes updates
swlars Jun 27, 2025
32f9f19
Merge pull request #1917 from esnet/3.19.1-integration
bmah888 Jul 25, 2025
5f2f046
Update documentation for 3.19.1.
bmah888 Jul 30, 2025
b9371bf
Merge pull request #1906 from AntonMoryakov/DIVISION_BY_ZERO.EX.FLOAT…
bmah888 Aug 1, 2025
55f1f4c
Github Actions Test (#1919)
swlars Aug 8, 2025
f505cfe
docs: clarify --get-output-server needs the test to complete
rmelotte Aug 13, 2025
9207330
Update build.yml Fix Checkout @v4 - @v5 (#1928)
FlutterGenerator Aug 15, 2025
b64ea8d
Merge pull request #1894 from davidBar-On/issue-1892-only-client-opti…
bmah888 Aug 15, 2025
a6985db
Version bump post 3.19.1.
bmah888 Aug 15, 2025
156953d
Regen.
bmah888 Aug 15, 2025
ebd6eae
Remove the unused build_tcpinfo_message() function.
bmah888 Aug 15, 2025
cf53d6c
Convert some sprintf() calls to use safer snprintf() calls instead.
bmah888 Aug 15, 2025
3291a16
Merge pull request #1929 from esnet/bmah-no-sprintf
bmah888 Aug 18, 2025
48acc2e
Do not allow UDP file transfer in all cases
davidBar-On Aug 27, 2025
c81f853
Send Server's get_Parameters() errors to the client
davidBar-On Aug 27, 2025
9053028
Merge pull request #1909 from davidBar-On/3-minor-fixes
bmah888 Aug 29, 2025
68d25ab
Add gitlab-ci.yml (#1933)
swlars Aug 29, 2025
46afdca
Merge pull request #1889 from manedurphy/rsa_from_file
bmah888 Aug 29, 2025
942c76c
add ability to get full JSON result object with streams enabled
manedurphy Jul 8, 2025
0f0fe61
man page entry
manedurphy Jul 8, 2025
f499d02
format
manedurphy Jul 8, 2025
75f58a9
format
manedurphy Jul 8, 2025
f655d42
format
manedurphy Jul 8, 2025
0e7dacd
Merge pull request #1903 from manedurphy/json_stream_full_output
bmah888 Sep 5, 2025
7517ade
manual page: Document interactions between the JSON flags.
bmah888 Sep 5, 2025
a7bb1b1
manual page: Capitalization, punctuation, wrapping, markup fixes.
bmah888 Sep 5, 2025
e3e8263
Merge pull request #1927 from rmelotte/doc/clarify-get-server-output-…
bmah888 Sep 10, 2025
65c5443
Merge branch 'master' into bmah-doc-updates
bmah888 Sep 10, 2025
96173cf
manual page: Fix formatting of authorization examples.
bmah888 Sep 10, 2025
8997d1c
Merge pull request #1936 from esnet/bmah-doc-updates
bmah888 Sep 15, 2025
a0e28f7
Fix typo in iperf3 documentation
NatsuCamellia Sep 18, 2025
8880fe8
Merge pull request #1941 from NatsuCamellia/fix-man-typo
bmah888 Sep 19, 2025
6b391d4
Merge pull request #1932 from davidBar-On/server_params_error_code_to…
bmah888 Sep 19, 2025
37b1d89
fix update yml (#1942)
FlutterGenerator Sep 22, 2025
c8774d8
support `--bind-dev` on macOS
scottlamb Sep 22, 2025
cfe569c
zerocopy now sends data from readentropy and fill_with_repeating_pattern
manedurphy Sep 27, 2025
d18a2b3
server: ignore rcv-timeout in BIDIRECTIONAL mode
scarpein Sep 24, 2025
aeb4f70
docs: We use Ubuntu, not CentOS, for primary Linux development.
bmah888 Oct 3, 2025
e13c2b7
t_auth memory checks (#1953)
swlars Oct 3, 2025
543c8a7
Merge pull request #1952 from esnet/bmah-1891
bmah888 Oct 3, 2025
e4503c8
Add Time Flag For The Iperf Server Process (#1684)
manedurphy Oct 3, 2025
28976ad
Merge pull request #1946 from scarpein/fix-bidir-rcv-timeout
bmah888 Oct 14, 2025
52aae0c
Resolve issue with openssl 3.5.3 encrypt (#1956)
mdlowman Oct 23, 2025
0c76a53
Add error handling to the unit_atoX() functions (#1394)
jtdor Oct 23, 2025
d40052e
Merge pull request #1949 from manedurphy/map_shared
bmah888 Nov 7, 2025
fd36aae
Release notes and version number bumps for iperf-3.20.
bmah888 Nov 14, 2025
c6f6e79
Regen.
bmah888 Nov 14, 2025
0711330
Merge pull request #1966 from esnet/releng-3.20
bmah888 Nov 14, 2025
3b54686
docs: documentation site update for iperf-3.20.
bmah888 Nov 14, 2025
c77bff0
Post-release version bump.
bmah888 Nov 18, 2025
df01f49
Regen.
bmah888 Nov 18, 2025
b74d4dd
Fix small release notes errors for 3.20 (#1972)
manedurphy Nov 20, 2025
bcbfaf1
Minor improvement in man page for --server-max-duration flag
manedurphy Nov 20, 2025
d348cd7
Merge pull request #1974 from manedurphy/server_max_duration_doc_fix
bmah888 Nov 21, 2025
4ce7d25
Removed extra warning message.
WatcherOfTheSkies Dec 15, 2025
4b370dd
Merge pull request #1983 from WatcherOfTheSkies/fix-extra-warning
bmah888 Dec 19, 2025
24ffc14
Fix backward compatibility issue of client incorrectly print 0 UDP pa…
davidBar-On Dec 20, 2025
1987fbd
Typographical Fixes
THE-Spellchecker Dec 30, 2025
50ab7a3
Do not modify --bind and --client arguments inplace
klemensn Oct 30, 2025
62ade9c
Fixed missing 'break;'s and improved formatting.
WatcherOfTheSkies Dec 8, 2025
0ae94b6
Merge pull request #1960 from klemensn/bind-argv
bmah888 Jan 9, 2026
d259a3e
Merge pull request #1993 from THE-Spellchecker/spellcheck-iperf3
bmah888 Jan 16, 2026
e4bcbf9
Merge pull request #1816 from nshopik/patch-1
bmah888 Jan 16, 2026
6b76500
renove data sockets closing from server_timer_proc as it caused threa…
davidBar-On Jan 23, 2026
b56475e
add UDP GSO/GRO support on Linux and --no-gsro option
marcosfsch Dec 7, 2023
67c7484
fix(GRO): fix per-datagram parsing and loss accounting
gegles Sep 4, 2025
b679f78
udp gso/gro: replace hard-coded 1472 with DEFAULT_UDP_BLKSIZE fallback
gegles Sep 5, 2025
e1dbf76
udp gso/gro: move policy to client; send explicit params; server acce…
gegles Sep 5, 2025
384834e
Fix UBSan with `-i0`: avoid division by zero
jackyyf Feb 9, 2026
f559117
udp gso/gro: change to disabled-by-default with --gsro flag
gegles Feb 10, 2026
c84bb19
docs: add --gsro flag to iperf3.1 man page
gegles Feb 10, 2026
7589d28
udp gso/gro: refactor to eliminate duplication and restore counters
gegles Feb 10, 2026
bc92c1f
udp gso/gro: make --gsro a client-only option
gegles Feb 10, 2026
aafc575
udp gso/gro: make --gsro available regardless of local support
gegles Feb 12, 2026
6fb1acb
udp gso/gro: remove remaining conditional guards and restore zerocopy
gegles Feb 12, 2026
61d7ff0
udp gso/gro: clean up help text guards and debug output
gegles Feb 12, 2026
6d26be3
udp gso/gro: refactor to use stub implementations and fix issues
gegles Feb 12, 2026
4ffe24d
Merge pull request #1925 from gegles/gsro
bmah888 Feb 18, 2026
115f9ac
Try to detect and use ldconfig if it exists.
bmah888 Feb 18, 2026
3746a32
Regen.
bmah888 Feb 18, 2026
010381c
Update copyright dates.
bmah888 Feb 19, 2026
b054a6a
Improve Server Max Bit Rate Violation Messaging To Client (#1931)
manedurphy Feb 19, 2026
b36c74f
Merge pull request #2006 from esnet/bmah-2026-copyrights
bmah888 Feb 20, 2026
18ae792
Add GSO and GRO flags to JSON output.
bmah888 Feb 19, 2026
f8ece2f
Add GSO/GRO feature availability to version output.
bmah888 Feb 19, 2026
593b79d
Minor adjustments in UDP code:
bmah888 Feb 19, 2026
c9771fd
Merge pull request #2007 from esnet/bmah-gsro-follow-up
bmah888 Feb 20, 2026
5c2fc97
Merge pull request #2005 from bmah888/bmah-ldconfig
bmah888 Feb 20, 2026
a15c64a
Send SERVER_ERROR to client with error info to client in more cases
davidBar-On Oct 3, 2025
e5f7746
Enhance solution in iperf_accept() and add control socket sync & close
davidBar-On Nov 14, 2025
87e1719
Modified comments per reviewer comment
davidBar-On Feb 23, 2026
d17e265
Merge pull request #1950 from davidBar-On/server_error-send-to-client…
bmah888 Feb 23, 2026
b585389
Regen.
bmah888 Feb 23, 2026
4dbe8bc
Merge pull request #1988 from davidBar-On/issue-1984-UDP-0-loss-despi…
bmah888 Feb 23, 2026
333fa40
Fix iperf3 client hangs (#2004)
oagniqgnat Feb 25, 2026
08d4298
Merge branch 'master' into mac-bind-to-device
bmah888 Mar 6, 2026
c822613
Merge pull request #1945 from scottlamb/mac-bind-to-device
bmah888 Mar 6, 2026
14db56a
adding tcp_info support for MacOS (#2008)
bucweat Mar 6, 2026
63cc9cc
Merge pull request #2002 from jackyyf/master
bmah888 Mar 6, 2026
c2638bb
Update README.md (#2013)
swlars Mar 12, 2026
23fda0d
Fix unused variables (#2001)
WatcherOfTheSkies Mar 16, 2026
6462f66
Add auth_test shell script
swlars Mar 6, 2026
6590002
Update to not have arguments
swlars Mar 20, 2026
a554920
Merge pull request #2015 from swlars/shell_test
bmah888 Mar 20, 2026
105b870
iperf_auth: keep RSA_private_decrypt and RSA_public_encrypt errors (#…
OldManYellsAtCloud Mar 23, 2026
4e6350d
Merge branch 'master' into server_timer_proc-enhancements
bmah888 Mar 26, 2026
7997b8f
Update documentation (#2014)
bmah888 Mar 27, 2026
ea30219
Draft: Add auth_test.sh to github actions (#2016)
swlars Mar 30, 2026
71bbc5e
Merge pull request #1914 from davidBar-On/server_timer_proc-enhancements
bmah888 Mar 31, 2026
8701e52
Secure iperf3 systemd service (#1855)
hykilpikonna Apr 3, 2026
d39cf41
Release engineering changes for iperf-3.21 (#2020)
bmah888 Apr 9, 2026
4450468
Fix GRO/GSO Pull request number in release notes
swlars Apr 9, 2026
4972c90
docs: Update for iperf-3.21.
bmah888 Apr 9, 2026
dd6ffc3
autoconf: Post-release version bump.
bmah888 Apr 9, 2026
a4b48a2
Regen.
bmah888 Apr 9, 2026
896cc42
Doc update 2026 04 09 (#2024)
bmah888 Apr 13, 2026
553b075
iperf_auth: fix heap-buffer-overflow in Base64Decode
JustinStitt Apr 15, 2026
3a25192
Merge pull request #2027 from JustinStitt/oss-fuzz-474401004
bmah888 Apr 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 83 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
name: GitHub Actions Build Test
permissions:
contents: read
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
cppcheck-test:
runs-on: ubuntu-latest
steps:
- run: echo "This job was triggered by a ${{ github.event_name }} event."
- name: Checkout Repo
uses: actions/checkout@v5
- name: install dependencies
run: |
sudo apt-get -y update && sudo apt-get install -y cppcheck && \
cppcheck . --force --inline-suppr
build-test-ubuntu-ish:
strategy:
matrix:
os: [ubuntu-latest, ubuntu-22.04, ubuntu-22.04-arm]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: install dependencies
run: |
sudo apt-get -y update && sudo apt-get install -y build-essential
- name: build
run: |
./configure && make && make check
- name: test commands
run: |
timeout 300 src/iperf3 -s &
./test_commands.sh localhost
- name: test auth
run: |
pkill iperf3
./auth_test.sh
build-test-macos-ish:
strategy:
matrix:
os: [macos-15, macos-14]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: install dependencies
run: |
brew install coreutils
- name: build
run: |
./configure && make && make check
- name: test commands
run: |
timeout 300 src/iperf3 -s &
./test_commands.sh localhost
- name: test auth
run: |
pkill iperf3
./auth_test.sh
build-test-sanitizer-address:
runs-on: ubuntu-latest
steps:
- run: echo "Running address sanitzer"
- name: Checkout Repo
uses: actions/checkout@v5
- name: install dependencies
run: |
sudo apt-get -y update && sudo apt-get install -y build-essential
- name: build
run: |
./configure CFLAGS="-g -O0 -fsanitize=address" LDFLAGS="-fsanitize=address" && make && make check
- name: test commands
run: |
timeout 300 src/iperf3 -s &
./test_commands.sh localhost
- name: test auth
run: |
pkill iperf3
./auth_test.sh
43 changes: 43 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/development/cicd/templates/
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/C++.gitlab-ci.yml

# use the official gcc image, based on debian
# can use versions as well, like gcc:5.2
# see https://hub.docker.com/_/gcc/
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/development/cicd/templates/
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/C++.gitlab-ci.yml

# use the official gcc image, based on debian
# can use versions as well, like gcc:5.2
# see https://hub.docker.com/_/gcc/

image: gcc

build:
stage: build
before_script:
- apt update && apt -y install make autoconf libssl-dev
script:
- ./configure CFLAGS="-g -O0 -fsanitize=address" LDFLAGS="-fsanitize=address"
- make
- timeout 300 ./src/iperf3 -s &
- ./test_commands.sh localhost
artifacts:
paths:
- src/iperf3
- src/.libs/*

# run tests using the binary built before
test:
stage: test
script:
- ls

deploy:
stage: deploy
script: echo "Define your deployment script!"
environment: production
14 changes: 0 additions & 14 deletions .travis.yml

This file was deleted.

4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"iperf, Copyright (c) 2014-2023, The Regents of the University of California,
"iperf, Copyright (c) 2014-2026, The Regents of the University of California,
through Lawrence Berkeley National Laboratory (subject to receipt of any
required approvals from the U.S. Dept. of Energy). All rights reserved."

Expand Down Expand Up @@ -212,7 +212,7 @@ This software contains source code (src/units.{c.h}) that is:
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE CONTIBUTORS OR COPYRIGHT
* NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE
Expand Down
54 changes: 41 additions & 13 deletions Makefile.in
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.18.1 from Makefile.am.
# @configure_input@

# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994-2025 Free Software Foundation, Inc.

# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
Expand Down Expand Up @@ -69,6 +69,8 @@ am__make_running_with_option = \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
am__rm_f = rm -f $(am__rm_f_notfound)
am__rm_rf = rm -rf $(am__rm_f_notfound)
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
Expand All @@ -90,6 +92,7 @@ host_triplet = @host@
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/ax_check_openssl.m4 \
$(top_srcdir)/config/ax_pthread.m4 \
$(top_srcdir)/config/iperf_config_static_bin.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
Expand Down Expand Up @@ -169,8 +172,8 @@ distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
if test -d "$(distdir)"; then \
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -rf "$(distdir)" \
find "$(distdir)" -type d ! -perm -700 -exec chmod u+rwx {} ';' \
; rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
am__post_remove_distdir = $(am__remove_distdir)
Expand Down Expand Up @@ -200,14 +203,16 @@ am__relativize = \
done; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
GZIP_ENV = -9
DIST_TARGETS = dist-gzip
# Exists only to be overridden by the user if desired.
AM_DISTCHECK_DVI_TARGET = dvi
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
distcleancheck_listfiles = \
find . \( -type f -a \! \
\( -name .nfs* -o -name .smb* -o -name .__afs* \) \) -print
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
Expand All @@ -219,6 +224,7 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
Expand All @@ -243,6 +249,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDCONFIG = @LDCONFIG@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
Expand Down Expand Up @@ -273,6 +280,10 @@ PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_CXX = @PTHREAD_CXX@
PTHREAD_LIBS = @PTHREAD_LIBS@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
Expand All @@ -289,8 +300,11 @@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__rm_f_notfound = @am__rm_f_notfound@
am__tar = @am__tar@
am__untar = @am__untar@
am__xargs_n = @am__xargs_n@
ax_pthread_config = @ax_pthread_config@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
Expand Down Expand Up @@ -486,12 +500,13 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files

distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

distdir-am: $(DISTFILES)
$(am__remove_distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
$(AM_V_at)$(MKDIR_P) "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
Expand Down Expand Up @@ -561,6 +576,10 @@ dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__post_remove_distdir)

dist-bzip3: distdir
tardir=$(distdir) && $(am__tar) | bzip3 -c >$(distdir).tar.bz3
$(am__post_remove_distdir)

dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
Expand Down Expand Up @@ -602,17 +621,19 @@ dist dist-all:
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
eval GZIP= gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.bz3*) \
bzip3 -dc $(distdir).tar.bz3 | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
eval GZIP= gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
*.tar.zst*) \
Expand Down Expand Up @@ -712,8 +733,8 @@ mostlyclean-generic:
clean-generic:

distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-$(am__rm_f) $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES)

maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
Expand Down Expand Up @@ -793,8 +814,8 @@ uninstall-am:
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
clean-libtool cscope cscopelist-am ctags ctags-am dist \
dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
dist-xz dist-zip dist-zstd distcheck distclean \
dist-all dist-bzip2 dist-bzip3 dist-gzip dist-lzip dist-shar \
dist-tarZ dist-xz dist-zip dist-zstd distcheck distclean \
distclean-generic distclean-libtool distclean-tags \
distcleancheck distdir distuninstallcheck dvi dvi-am html \
html-am info info-am install install-am install-data \
Expand All @@ -813,3 +834,10 @@ uninstall-am:
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

# Tell GNU make to disable its built-in pattern rules.
%:: %,v
%:: RCS/%,v
%:: RCS/%
%:: s.%
%:: SCCS/s.%
Loading