diff --git a/backport-Avoid-duplicate-thread-recycling.patch b/backport-Avoid-duplicate-thread-recycling.patch deleted file mode 100644 index f1f356d26e039acce96d94b4b232e3ce66b3ae0a..0000000000000000000000000000000000000000 --- a/backport-Avoid-duplicate-thread-recycling.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 7bd583d323950071e6ad05eb6c72a45a786fb126 Mon Sep 17 00:00:00 2001 -From: jiangjixiang -Date: Mon, 9 Sep 2024 17:54:25 +0800 -Subject: [PATCH 4/4] Avoid duplicate thread recycling. - - At the end of the test, the traffic thread has been reclaimed. -If there is an exception in the control connection, it will cause -the thread to be reclaimed repeatedly. -Use sp->done to avoid repeated thread recycling. ---- - src/iperf_client_api.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/iperf_client_api.c b/src/iperf_client_api.c -index 7c22cad..6d8eee2 100644 ---- a/src/iperf_client_api.c -+++ b/src/iperf_client_api.c -@@ -798,6 +798,9 @@ iperf_run_client(struct iperf_test * test) - /* Cancel all outstanding threads */ - i_errno_save = i_errno; - SLIST_FOREACH(sp, &test->streams, streams) { -+ if (sp->done) { -+ continue; -+ } - sp->done = 1; - int rc; - rc = pthread_cancel(sp->thr); --- -2.25.1 - diff --git a/backport-Performance-enhancement-for-iperf_time_add.patch b/backport-Performance-enhancement-for-iperf_time_add.patch deleted file mode 100644 index 25f09259b777af728dbd1588f58f5c2be1d78da4..0000000000000000000000000000000000000000 --- a/backport-Performance-enhancement-for-iperf_time_add.patch +++ /dev/null @@ -1,34 +0,0 @@ -From e9e49c49acbd7789d2e44f82401663b58720bb66 Mon Sep 17 00:00:00 2001 -From: David Bar-On -Date: Sat, 10 Aug 2024 09:33:50 +0300 -Subject: [PATCH 19/30] Performance enhancement for iperf_time_add() - ---- - src/iperf_time.c | 11 +++++------ - 1 file changed, 5 insertions(+), 6 deletions(-) - -diff --git a/src/iperf_time.c b/src/iperf_time.c -index a435dd3..5c9b0fb 100644 ---- a/src/iperf_time.c -+++ b/src/iperf_time.c -@@ -72,12 +72,11 @@ iperf_time_now(struct iperf_time *time1) - void - iperf_time_add_usecs(struct iperf_time *time1, uint64_t usecs) - { -- time1->secs += usecs / 1000000L; -- time1->usecs += usecs % 1000000L; -- if ( time1->usecs >= 1000000L ) { -- time1->secs += time1->usecs / 1000000L; -- time1->usecs %= 1000000L; -- } -+ uint64_t total_usecs; -+ -+ total_usecs = time1->usecs + usecs; -+ time1->secs += total_usecs / 1000000L; -+ time1->usecs = total_usecs % 1000000L; - } - - uint64_t --- -2.25.1 - diff --git a/backport-Remove-incorrect-freeaddrinfo-call.patch b/backport-Remove-incorrect-freeaddrinfo-call.patch deleted file mode 100644 index cd08b442304d25ffffd22ccd5894273ea2c14814..0000000000000000000000000000000000000000 --- a/backport-Remove-incorrect-freeaddrinfo-call.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 3da07ae96f5b40f76b75e1ccd4b20267f6a5988e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jakub=20Kul=C3=ADk?= -Date: Wed, 28 Aug 2024 09:43:04 +0200 -Subject: [PATCH 07/15] remove incorrect freeaddrinfo call - ---- - src/net.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/net.c b/src/net.c -index 632ae03..c82caff 100644 ---- a/src/net.c -+++ b/src/net.c -@@ -145,7 +145,6 @@ create_socket(int domain, int proto, const char *local, const char *bind_dev, in - if ((gerror = getaddrinfo(server, portstr, &hints, &server_res)) != 0) { - if (local) - freeaddrinfo(local_res); -- freeaddrinfo(server_res); - return -1; - } - --- -2.25.1 - diff --git a/iperf-3.17.1.tar.gz b/iperf-3.17.1.tar.gz deleted file mode 100644 index 5a1fa9cfe1cdd5b48478beb902ff2d6faba7bddd..0000000000000000000000000000000000000000 Binary files a/iperf-3.17.1.tar.gz and /dev/null differ diff --git a/iperf-3.18.tar.gz b/iperf-3.18.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ad512f9885110d4270d4a5ee83c207dabc3017a Binary files /dev/null and b/iperf-3.18.tar.gz differ diff --git a/iperf3.spec b/iperf3.spec index 8c4be0ae96f572161fe0174664208880a20637b6..be4d6880fce21501bda69aad701728771f5ada40 100644 --- a/iperf3.spec +++ b/iperf3.spec @@ -1,15 +1,11 @@ Name: iperf3 -Version: 3.17.1 -Release: 4 +Version: 3.18 +Release: 1 Summary: TCP,UDP,and SCTP network bandwidth measurement tool -License: BSD -URL: http://github.com/esnet/iperf +License: BSD-3-Clause +URL: https://github.com/esnet/iperf Source0: https://github.com/esnet/iperf/archive/%{version}/iperf-%{version}.tar.gz -Patch0001: backport-Avoid-duplicate-thread-recycling.patch -Patch0002: backport-Remove-incorrect-freeaddrinfo-call.patch -Patch0003: backport-Performance-enhancement-for-iperf_time_add.patch - BuildRequires: libuuid-devel gcc lksctp-tools-devel Requires: lksctp-tools Requires: %{name}-help = %{version}-%{release} @@ -44,7 +40,7 @@ mkdir -p %{buildroot}%{_mandir}/man1 %files %defattr(-,root,root) %doc README.md RELNOTES.md -%license LICENSE _esnet/LICENSE +%license LICENSE %{_bindir}/iperf3 %{_libdir}/*.so.* @@ -59,6 +55,9 @@ mkdir -p %{buildroot}%{_mandir}/man1 %{_mandir}/man3/libiperf.3.gz %changelog +* Mon Dec 23 2024 yaoxin - 3.18-1 +- Update to 3.18 for fix CVE-2024-53580 + * Sun Sep 29 2024 jiangjixiang - 3.17.1-4 - Relocate patches from upstream communities to performance enhancement for iperf_time_add(). diff --git a/iperf3.yaml b/iperf3.yaml index bef9c112ef841fd5ba4e1dcb32ea4a26e7b26ff6..9bf298060ee4fe529d42702723c4465490352cc8 100644 --- a/iperf3.yaml +++ b/iperf3.yaml @@ -1,4 +1,4 @@ version_control: github src_repo: esnet/iperf -tag_prefix: ^v -seperator: . +tag_prefix: ^ +separator: .