diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-20 14:54:46 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-20 14:54:46 -0500 |
| commit | 1a4479b4e0368c8d5ff241ebad17b2541a7e3ba0 (patch) | |
| tree | 18e2e784f9fb0dbc3546537acc42ad51b366d90e /net-misc/iperf | |
| parent | 9f6a581d94412ab1cf4b35c33101f6be0ddc7777 (diff) | |
| download | baldeagleos-repo-1a4479b4e0368c8d5ff241ebad17b2541a7e3ba0.tar.gz baldeagleos-repo-1a4479b4e0368c8d5ff241ebad17b2541a7e3ba0.tar.xz baldeagleos-repo-1a4479b4e0368c8d5ff241ebad17b2541a7e3ba0.zip | |
Adding metadata
Diffstat (limited to 'net-misc/iperf')
| -rw-r--r-- | net-misc/iperf/Manifest | 2 | ||||
| -rw-r--r-- | net-misc/iperf/files/iperf-3.19.1-openssl-3.5.3.patch | 247 | ||||
| -rw-r--r-- | net-misc/iperf/iperf-2.2.1.ebuild | 44 | ||||
| -rw-r--r-- | net-misc/iperf/iperf-2.9999.ebuild | 44 | ||||
| -rw-r--r-- | net-misc/iperf/iperf-3.19.1-r1.ebuild | 54 | ||||
| -rw-r--r-- | net-misc/iperf/iperf-3.19.1.ebuild | 53 | ||||
| -rw-r--r-- | net-misc/iperf/iperf-3.20.ebuild | 41 | ||||
| -rw-r--r-- | net-misc/iperf/iperf-3.21.ebuild | 10 | ||||
| -rw-r--r-- | net-misc/iperf/metadata.xml | 4 |
9 files changed, 476 insertions, 23 deletions
diff --git a/net-misc/iperf/Manifest b/net-misc/iperf/Manifest index 799c8db70b62..93c80e719aca 100644 --- a/net-misc/iperf/Manifest +++ b/net-misc/iperf/Manifest @@ -1,2 +1,4 @@ +DIST iperf-2.2.1.tar.gz 509514 BLAKE2B 9075df9513e98beeaed5c2f6799f62f72fbfd8fc63696674018b7435dae87d5edeca3fb0541775c37c188bd61bd8394c3125a8a8c07e0c4ba1c2efa86a602404 SHA512 07a08afe647e87939e05c9cd55601ca1227c91f44ef32fdf305a0e15e524d1de29d38e9a3f66253d7308585224e54db395d7dec654d31eea746f45c6947ebc2a +DIST iperf-3.19.1.tar.gz 698445 BLAKE2B fae065d3e8131c072bd70666c87067c85b2ea56fcee70197bea1d5b82266b1d2f4dbb9318b566fdd4add08776dadb1feebe9915108531d3af9e13a777e2b60e7 SHA512 7239eddf55197c45aa751d05b6518a0782ec4f2ce4d9b4246b74c41dc21077102f3f5cc3359129c32c6842d482f4a9557a92ab84d96e0a9c7063052c9cbed4f6 DIST iperf-3.20.tar.gz 702527 BLAKE2B 2a6d77498028375177275452d0bbce7af12fb477b70ed275cc2dc092a02a96f3b9389e584e9e89628042bcadadcafba121b3bd84598a7781e8e6c4bd49d7e843 SHA512 2a52d27388e2585327f92b9cd33335345706371533f1e8da9aa5fb66d11cca70d8690f12c24bf31d7fa231e41225faa2f93b7b31fd869cbd2f34ab5401e3f5ff DIST iperf-3.21.tar.gz 711039 BLAKE2B 7ac39edca583485ef4943850df79ccfd834439a042caa4cc4c2c8a436a4057f8846738c43dcdc92e32a318a4d0f354cc2449677b2cf94286b05556762a118081 SHA512 6418c5521ab4e7ab9a18ecf07b3c0b9460d0015314bf6fdea9b3a748b1deb8c47a6ed1e5fd86cc0a99e0f6877e943f44488387f1fc2c3c17e091014fb9ad003c diff --git a/net-misc/iperf/files/iperf-3.19.1-openssl-3.5.3.patch b/net-misc/iperf/files/iperf-3.19.1-openssl-3.5.3.patch new file mode 100644 index 000000000000..5c6bd671d781 --- /dev/null +++ b/net-misc/iperf/files/iperf-3.19.1-openssl-3.5.3.patch @@ -0,0 +1,247 @@ +https://bugs.gentoo.org/963583 +https://github.com/esnet/iperf/issues/1951 +https://github.com/esnet/iperf/pull/1956 + +From aab262afe1770b55bb865fd4dad2d5e737c758a6 Mon Sep 17 00:00:00 2001 +From: Michael Lowman <michael.d.lowman@gmail.com> +Date: Wed, 8 Oct 2025 22:40:07 +0200 +Subject: [PATCH 1/5] Set output buffer size prior to encrypt operation + +When calling EVP_PKEY_encrypt with a non-null output buffer, +the output buffer length must be provided. Attempts to write +beyond this length will fail. +--- + src/iperf_auth.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/iperf_auth.c b/src/iperf_auth.c +index eda015099..774e1b701 100644 +--- a/src/iperf_auth.c ++++ b/src/iperf_auth.c +@@ -252,6 +252,7 @@ int encrypt_rsa_message(const char *plaintext, EVP_PKEY *public_key, unsigned ch + #endif + rsa_buffer = OPENSSL_malloc(keysize * 2); + *encryptedtext = (unsigned char*)OPENSSL_malloc(keysize); ++ encryptedtext_len = keysize; + + BIO *bioBuff = BIO_new_mem_buf((void*)plaintext, (int)strlen(plaintext)); + rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, keysize * 2); + +From 00840604c85c598f7aaeffd21db0c62472d8ab34 Mon Sep 17 00:00:00 2001 +From: Michael Lowman <michael.d.lowman@gmail.com> +Date: Wed, 8 Oct 2025 22:29:12 +0200 +Subject: [PATCH 2/5] Rename keysize to output_buffer_len + +This more accurately represents the meaning; it is the minimum +buffer allocation necessary for an encrypt or decrypt operation +to succeed. This is the same size for both ciphertext and +cleartext, as padding is applied. +--- + src/iperf_auth.c | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git a/src/iperf_auth.c b/src/iperf_auth.c +index 774e1b701..ea516904f 100644 +--- a/src/iperf_auth.c ++++ b/src/iperf_auth.c +@@ -236,26 +236,26 @@ int encrypt_rsa_message(const char *plaintext, EVP_PKEY *public_key, unsigned ch + #endif + unsigned char *rsa_buffer = NULL; + size_t encryptedtext_len = 0; +- int rsa_buffer_len, keysize; ++ int rsa_buffer_len, output_buffer_len; + + #if OPENSSL_VERSION_MAJOR >= 3 + int rc; + ctx = EVP_PKEY_CTX_new_from_pkey(NULL, public_key, ""); + /* See evp_pkey_rsa(7) and provider-keymgmt(7) */ +- rc = EVP_PKEY_get_int_param(public_key, OSSL_PKEY_PARAM_MAX_SIZE, &keysize); /* XXX not really keysize */ ++ rc = EVP_PKEY_get_int_param(public_key, OSSL_PKEY_PARAM_MAX_SIZE, &output_buffer_len); + if (!rc) { + goto errreturn; + } + #else + rsa = EVP_PKEY_get1_RSA(public_key); +- keysize = RSA_size(rsa); ++ output_buffer_len = RSA_size(rsa); + #endif +- rsa_buffer = OPENSSL_malloc(keysize * 2); +- *encryptedtext = (unsigned char*)OPENSSL_malloc(keysize); +- encryptedtext_len = keysize; ++ rsa_buffer = OPENSSL_malloc(output_buffer_len * 2); ++ *encryptedtext = (unsigned char*)OPENSSL_malloc(output_buffer_len); ++ encryptedtext_len = output_buffer_len; + + BIO *bioBuff = BIO_new_mem_buf((void*)plaintext, (int)strlen(plaintext)); +- rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, keysize * 2); ++ rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, output_buffer_len * 2); + + int padding = RSA_PKCS1_OAEP_PADDING; + if (use_pkcs1_padding){ +@@ -295,26 +295,26 @@ int decrypt_rsa_message(const unsigned char *encryptedtext, const int encryptedt + #endif + unsigned char *rsa_buffer = NULL; + size_t plaintext_len = 0; +- int rsa_buffer_len, keysize; ++ int rsa_buffer_len, output_buffer_len; + + #if OPENSSL_VERSION_MAJOR >= 3 + int rc; + ctx = EVP_PKEY_CTX_new_from_pkey(NULL, private_key, ""); + /* See evp_pkey_rsa(7) and provider-keymgmt(7) */ +- rc = EVP_PKEY_get_int_param(private_key, OSSL_PKEY_PARAM_MAX_SIZE, &keysize); /* XXX not really keysize */ ++ rc = EVP_PKEY_get_int_param(private_key, OSSL_PKEY_PARAM_MAX_SIZE, &output_buffer_len); + if (!rc) { + goto errreturn; + } + #else + rsa = EVP_PKEY_get1_RSA(private_key); +- keysize = RSA_size(rsa); ++ output_buffer_len = RSA_size(rsa); + #endif +- rsa_buffer = OPENSSL_malloc(keysize * 2); ++ rsa_buffer = OPENSSL_malloc(output_buffer_len * 2); + // Note: +1 for NULL +- *plaintext = (unsigned char*)OPENSSL_malloc(keysize + 1); ++ *plaintext = (unsigned char*)OPENSSL_malloc(output_buffer_len + 1); + + BIO *bioBuff = BIO_new_mem_buf((void*)encryptedtext, encryptedtext_len); +- rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, keysize * 2); ++ rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, output_buffer_len * 2); + + int padding = RSA_PKCS1_OAEP_PADDING; + if (use_pkcs1_padding){ +@@ -322,7 +322,7 @@ int decrypt_rsa_message(const unsigned char *encryptedtext, const int encryptedt + } + #if OPENSSL_VERSION_MAJOR >= 3 + +- plaintext_len = keysize; ++ plaintext_len = output_buffer_len; + EVP_PKEY_decrypt_init(ctx); + + ret = EVP_PKEY_CTX_set_rsa_padding(ctx, padding); + +From f30aaa3be199313c079d585f7eaf20a0745186b9 Mon Sep 17 00:00:00 2001 +From: Michael Lowman <michael.d.lowman@gmail.com> +Date: Wed, 8 Oct 2025 16:46:20 +0200 +Subject: [PATCH 3/5] Avoid out-of-bounds access when base64 decoding short + strings + +Check the length before reading memory. +--- + src/iperf_auth.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/iperf_auth.c b/src/iperf_auth.c +index ea516904f..eddc5a85f 100644 +--- a/src/iperf_auth.c ++++ b/src/iperf_auth.c +@@ -130,9 +130,9 @@ int Base64Encode(const unsigned char* buffer, const size_t length, char** b64tex + + size_t calcDecodeLength(const char* b64input) { //Calculates the length of a decoded string + size_t len = strlen(b64input), padding = 0; +- if (b64input[len-1] == '=' && b64input[len-2] == '=') //last two chars are = ++ if (len >= 2 && b64input[len-1] == '=' && b64input[len-2] == '=') //last two chars are = + padding = 2; +- else if (b64input[len-1] == '=') //last char is = ++ else if (len >= 1 && b64input[len-1] == '=') //last char is = + padding = 1; + + return (len*3)/4 - padding; + +From 1cca42a1e77df8fba83ef6340388cad34625087c Mon Sep 17 00:00:00 2001 +From: Michael Lowman <michael.d.lowman@gmail.com> +Date: Wed, 8 Oct 2025 17:57:37 +0200 +Subject: [PATCH 4/5] Don't over-allocate followed by partial reads + +We know how much we expect to read; the input buffer +has a defined size. Allocate the exact buffer expected +instead of a larger one with a read expected to return +only partial data. This makes it simpler to follow the +logic and to avoid off-by-one errors. +--- + src/iperf_auth.c | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git a/src/iperf_auth.c b/src/iperf_auth.c +index eddc5a85f..d582c615a 100644 +--- a/src/iperf_auth.c ++++ b/src/iperf_auth.c +@@ -235,7 +235,7 @@ int encrypt_rsa_message(const char *plaintext, EVP_PKEY *public_key, unsigned ch + RSA *rsa = NULL; + #endif + unsigned char *rsa_buffer = NULL; +- size_t encryptedtext_len = 0; ++ size_t encryptedtext_len = 0, plaintext_len = 0; + int rsa_buffer_len, output_buffer_len; + + #if OPENSSL_VERSION_MAJOR >= 3 +@@ -250,12 +250,13 @@ int encrypt_rsa_message(const char *plaintext, EVP_PKEY *public_key, unsigned ch + rsa = EVP_PKEY_get1_RSA(public_key); + output_buffer_len = RSA_size(rsa); + #endif +- rsa_buffer = OPENSSL_malloc(output_buffer_len * 2); ++ plaintext_len = strlen(plaintext); ++ rsa_buffer = OPENSSL_malloc(output_buffer_len); + *encryptedtext = (unsigned char*)OPENSSL_malloc(output_buffer_len); + encryptedtext_len = output_buffer_len; + +- BIO *bioBuff = BIO_new_mem_buf((void*)plaintext, (int)strlen(plaintext)); +- rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, output_buffer_len * 2); ++ BIO *bioBuff = BIO_new_mem_buf((void*)plaintext, (int)plaintext_len); ++ rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, plaintext_len); + + int padding = RSA_PKCS1_OAEP_PADDING; + if (use_pkcs1_padding){ +@@ -309,12 +310,12 @@ int decrypt_rsa_message(const unsigned char *encryptedtext, const int encryptedt + rsa = EVP_PKEY_get1_RSA(private_key); + output_buffer_len = RSA_size(rsa); + #endif +- rsa_buffer = OPENSSL_malloc(output_buffer_len * 2); ++ rsa_buffer = OPENSSL_malloc(output_buffer_len); + // Note: +1 for NULL + *plaintext = (unsigned char*)OPENSSL_malloc(output_buffer_len + 1); + + BIO *bioBuff = BIO_new_mem_buf((void*)encryptedtext, encryptedtext_len); +- rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, output_buffer_len * 2); ++ rsa_buffer_len = BIO_read(bioBuff, rsa_buffer, encryptedtext_len); + + int padding = RSA_PKCS1_OAEP_PADDING; + if (use_pkcs1_padding){ + +From 92f288ff6230dbe186e95688c910268f6942e214 Mon Sep 17 00:00:00 2001 +From: Michael Lowman <michael.d.lowman@gmail.com> +Date: Wed, 8 Oct 2025 17:58:52 +0200 +Subject: [PATCH 5/5] Add warnings on silent truncation + +Input should not be this long, but makes the expectations +of the code clearer. +--- + src/iperf_auth.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/iperf_auth.c b/src/iperf_auth.c +index d582c615a..4c38fa938 100644 +--- a/src/iperf_auth.c ++++ b/src/iperf_auth.c +@@ -251,6 +251,9 @@ int encrypt_rsa_message(const char *plaintext, EVP_PKEY *public_key, unsigned ch + output_buffer_len = RSA_size(rsa); + #endif + plaintext_len = strlen(plaintext); ++ if (plaintext_len > output_buffer_len) { ++ fprintf(stderr, "Plaintext of size %zd truncated to %d; data is lost.\n", plaintext_len, output_buffer_len); ++ } + rsa_buffer = OPENSSL_malloc(output_buffer_len); + *encryptedtext = (unsigned char*)OPENSSL_malloc(output_buffer_len); + encryptedtext_len = output_buffer_len; +@@ -310,6 +313,9 @@ int decrypt_rsa_message(const unsigned char *encryptedtext, const int encryptedt + rsa = EVP_PKEY_get1_RSA(private_key); + output_buffer_len = RSA_size(rsa); + #endif ++ if (encryptedtext_len > output_buffer_len) { ++ fprintf(stderr, "Encrypted text of size %d truncated to %d; likely invalid input.\n", encryptedtext_len, output_buffer_len); ++ } + rsa_buffer = OPENSSL_malloc(output_buffer_len); + // Note: +1 for NULL + *plaintext = (unsigned char*)OPENSSL_malloc(output_buffer_len + 1); + diff --git a/net-misc/iperf/iperf-2.2.1.ebuild b/net-misc/iperf/iperf-2.2.1.ebuild new file mode 100644 index 000000000000..0b067a699f6a --- /dev/null +++ b/net-misc/iperf/iperf-2.2.1.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Tool to measure IP bandwidth using UDP or TCP" +HOMEPAGE="https://sourceforge.net/projects/iperf2/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://git.code.sf.net/p/iperf2/code" + inherit git-r3 +else + SRC_URI="https://downloads.sourceforge.net/iperf2/${P}.tar.gz" + + KEYWORDS="amd64 arm ~hppa ppc ppc64 ~riscv ~sparc x86" +fi + +LICENSE="HPND" +SLOT="2" +IUSE="debug" +# Fails w/ connection refused to just-spawned daemon +RESTRICT="test" + +src_configure() { + local myeconfargs=( + $(use_enable debug debuginfo) + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + emake AR="$(tc-getAR)" +} + +src_install() { + default + + dodoc doc/* + newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN} + newconfd "${FILESDIR}"/${PN}.confd ${PN} +} diff --git a/net-misc/iperf/iperf-2.9999.ebuild b/net-misc/iperf/iperf-2.9999.ebuild new file mode 100644 index 000000000000..ca7f03ba3e51 --- /dev/null +++ b/net-misc/iperf/iperf-2.9999.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Tool to measure IP bandwidth using UDP or TCP" +HOMEPAGE="https://sourceforge.net/projects/iperf2/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://git.code.sf.net/p/iperf2/code" + inherit git-r3 +else + SRC_URI="https://downloads.sourceforge.net/iperf2/${P}.tar.gz" + + KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="HPND" +SLOT="2" +IUSE="debug" +# Fails w/ connection refused to just-spawned daemon +RESTRICT="test" + +src_configure() { + local myeconfargs=( + $(use_enable debug debuginfo) + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + emake AR="$(tc-getAR)" +} + +src_install() { + default + + dodoc doc/* + newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN} + newconfd "${FILESDIR}"/${PN}.confd ${PN} +} diff --git a/net-misc/iperf/iperf-3.19.1-r1.ebuild b/net-misc/iperf/iperf-3.19.1-r1.ebuild new file mode 100644 index 000000000000..541141e14e15 --- /dev/null +++ b/net-misc/iperf/iperf-3.19.1-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools systemd + +DESCRIPTION="TCP, UDP, and SCTP network bandwidth measurement tool" +HOMEPAGE="https://software.es.net/iperf/ https://github.com/esnet/iperf" +SRC_URI="https://github.com/esnet/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="3" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" +IUSE="sctp" + +DEPEND=" + >=dev-libs/cJSON-1.7.15 + dev-libs/openssl:= + sctp? ( net-misc/lksctp-tools ) +" +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +DOCS=( README.md RELNOTES.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-3.10.1-drop-forced-debugging-symbols.patch + "${FILESDIR}"/${PN}-3.18-unbundle-cJSON.patch + "${FILESDIR}"/${PN}-3.19.1-openssl-3.5.3.patch +) + +src_prepare() { + default + + # Drop bundled cjson + rm src/cjson.{c,h} || die + + eautoreconf +} + +src_configure() { + econf $(use_with sctp) +} + +src_install() { + default + + newconfd "${FILESDIR}"/iperf.confd iperf3 + newinitd "${FILESDIR}"/iperf3.initd iperf3 + systemd_dounit contrib/iperf3.service + + find "${ED}" -name '*.la' -type f -delete || die +} diff --git a/net-misc/iperf/iperf-3.19.1.ebuild b/net-misc/iperf/iperf-3.19.1.ebuild new file mode 100644 index 000000000000..8afde2f6d15b --- /dev/null +++ b/net-misc/iperf/iperf-3.19.1.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools systemd + +DESCRIPTION="TCP, UDP, and SCTP network bandwidth measurement tool" +HOMEPAGE="https://software.es.net/iperf/ https://github.com/esnet/iperf" +SRC_URI="https://github.com/esnet/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="3" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" +IUSE="sctp" + +DEPEND=" + >=dev-libs/cJSON-1.7.15 + dev-libs/openssl:= + sctp? ( net-misc/lksctp-tools ) +" +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +DOCS=( README.md RELNOTES.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-3.10.1-drop-forced-debugging-symbols.patch + "${FILESDIR}"/${PN}-3.18-unbundle-cJSON.patch +) + +src_prepare() { + default + + # Drop bundled cjson + rm src/cjson.{c,h} || die + + eautoreconf +} + +src_configure() { + econf $(use_with sctp) +} + +src_install() { + default + + newconfd "${FILESDIR}"/iperf.confd iperf3 + newinitd "${FILESDIR}"/iperf3.initd iperf3 + systemd_dounit contrib/iperf3.service + + find "${ED}" -name '*.la' -type f -delete || die +} diff --git a/net-misc/iperf/iperf-3.20.ebuild b/net-misc/iperf/iperf-3.20.ebuild index 7fdc0512c115..adeacb3af1a8 100644 --- a/net-misc/iperf/iperf-3.20.ebuild +++ b/net-misc/iperf/iperf-3.20.ebuild @@ -1,32 +1,45 @@ -# Copyright 2021-2025 Liguros Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 + EAPI=8 -inherit systemd +inherit autotools systemd -DESCRIPTION="A TCP, UDP, and SCTP network bandwidth measurement tool" -HOMEPAGE="https://software.es.net/iperf/" -SRC_URI="https://downloads.es.net/pub/${PN}/${P}.tar.gz" -S="${WORKDIR}/${P/_/}" +DESCRIPTION="TCP, UDP, and SCTP network bandwidth measurement tool" +HOMEPAGE="https://software.es.net/iperf/ https://github.com/esnet/iperf" +SRC_URI="https://github.com/esnet/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="BSD" SLOT="3" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -IUSE=" sctp static-libs" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" +IUSE="sctp" DEPEND=" - dev-libs/openssl:0= - + >=dev-libs/cJSON-1.7.15 + dev-libs/openssl:= sctp? ( net-misc/lksctp-tools ) " RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" DOCS=( README.md RELNOTES.md ) +PATCHES=( + "${FILESDIR}"/${PN}-3.10.1-drop-forced-debugging-symbols.patch + "${FILESDIR}"/${PN}-3.18-unbundle-cJSON.patch +) + +src_prepare() { + default + + # Drop bundled cjson + rm src/cjson.{c,h} || die + + eautoreconf +} + src_configure() { - econf \ - $(use_enable static-libs static) \ - $(use_with sctp) + econf $(use_with sctp) } src_install() { @@ -36,5 +49,5 @@ src_install() { newinitd "${FILESDIR}"/iperf3.initd iperf3 systemd_dounit contrib/iperf3.service - find "${ED}" -name '*.la' -delete || die + find "${ED}" -name '*.la' -type f -delete || die } diff --git a/net-misc/iperf/iperf-3.21.ebuild b/net-misc/iperf/iperf-3.21.ebuild index 9db2cfeb1030..cfe43128d158 100644 --- a/net-misc/iperf/iperf-3.21.ebuild +++ b/net-misc/iperf/iperf-3.21.ebuild @@ -1,5 +1,6 @@ -# Copyright 2021-2026 Liguros Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 + EAPI=8 inherit autotools systemd @@ -10,17 +11,16 @@ SRC_URI="https://github.com/esnet/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.t LICENSE="BSD" SLOT="3" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" -IUSE=" sctp" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos" +IUSE="sctp" RDEPEND=" >=dev-libs/cJSON-1.7.15 dev-libs/openssl:= - sctp? ( net-misc/lksctp-tools ) " DEPEND=" - ${DEPEND} + ${RDEPEND} virtual/os-headers " BDEPEND="virtual/pkgconfig" diff --git a/net-misc/iperf/metadata.xml b/net-misc/iperf/metadata.xml index 98e6d9d6a068..173a48e4ffcc 100644 --- a/net-misc/iperf/metadata.xml +++ b/net-misc/iperf/metadata.xml @@ -1,10 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>dev@liguros.net</email> - <name>Development</name> - </maintainer> <maintainer type="person"> <email>sam@gentoo.org</email> <name>Sam James</name> |
