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

81 Коммитов

Автор SHA1 Сообщение Дата
Bruce A. Mah
3dfdffd9c4
Release notes and version number bump for iperf 3.8.1 (#1015) 2020-06-10 08:18:27 -07:00
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
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
Ezra
9427ecdf3c
Add configure option to enable static linking of iperf binary. (#989) 2020-05-04 15:09:05 -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
4a3efb37da
build: Unbreak builds on macOS by not building profiled binaries by default (#950)
Fixes #933.
2020-01-06 13:43:29 -08:00
Bruce A. Mah
504ed7a2e3
chore: Post-release version number bump. 2019-08-19 14:39:14 -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
hhb
f78171452b fix: Fix configure when openssl is absent. (#854)
openssl flags was appended to normal cpp/ld flags even if it is
absent. This change fixes configure.ac and regenerates configure.
2019-05-17 12:46:28 -07:00
Bruce A. Mah
d13fa7ce39
Merge branch 'iperf_time' of https://github.com/accelleran/iperf into accelleran-iperf_time 2018-09-28 10:35:23 -07:00
Hk
f64da9b9bc Move the automake "foreign" directive from bootstrap.sh to configure.ac (#765)
Fixes #764.
2018-07-02 10:06:42 -07:00
Hk
e6689a8cbb Provide a configure feature flag (--disable-profiling) to disable creation of iperf3_profile binary (#763)
Fixes #749.
2018-06-29 16:23:41 -07:00
Bruce A. Mah
01e6569d26
Version number bump for post 3.6 releases. 2018-06-25 16:04:29 -07:00
Bruce A. Mah
2c92e35a05
Update for iperf-3.6. 2018-06-22 14:20:28 -07:00
Bruce A. Mah
964f106a98
Change applicable http:// URLs to https://. Fix a bad URL in RPM spec. (#759) 2018-06-22 14:09:01 -07:00
Ben Fox-Moore
cde81d7640 Add initial portable time abstraction 2018-05-17 14:09:52 +02:00
Bruce A. Mah
52bd0f223a
Frob version number for post-3.5-release. 2018-03-02 15:16:30 -08:00
Bruce A. Mah
6731b2152a
Version number bumps for iperf-3.5. Also fix a typo in release notes.
Towards #707.
2018-02-28 13:21:59 -08:00
Bruce A. Mah
82f25ed125
Update version number on mainline. 2018-02-14 13:37:58 -08:00
Bruce A. Mah
e147de5387
Version number bumps for iperf-3.4. 2018-02-12 14:08:45 -08:00
Bruce A. Mah
fdc4633191
Update release notes for the next (as yet unscheduled) release.
The master codeline is once again 3-CURRENT, not 3.3.
2017-11-13 14:17:38 -08:00
Boris Okunev
5b27ea39a7 Implemented -A flag for Windows (#665)
TODO:  Need to update some documentation that reflects `-A` is applicable to Windows.  @bmah888 to do this.
2017-11-13 12:54:34 -08:00
Todd C. Miller
480824e3c1 Remove a few unnecessary headers and unused functions. (#667)
* EXIT_SUCCESS and EXIT_FAILURE are defined in stdlib.h, not sysexits.h
so no need to include the latter.

* No need to include pthread.h.

* Remove the no longer used delay() function.
This also removes the reliance on nanosleep().

* Remove get_tcp_windowsize() and set_tcp_windowsize() which are unused.
These days, iperf uses get/setsockopt() with SO_SNDBUF SO_RCVBUF directly.
2017-11-11 10:26:59 -08:00
Bruce A. Mah
73b02f9819
Implement daemon(3) for systems that don't have it.
Fixes (and based on a patch in) #369, with some reworking by @bmah888 and @pprindeville.
2017-11-11 10:12:55 -08:00
Bruce A. Mah
cb2dcd3f6d
Provide a getline(3) implementation for systems without it. (#663)
The getline(3) implementation comes from NetBSD's file(1) command.
This should make compiling work on macOS pre 10.7.  Fixes #607.
2017-11-08 10:18:30 -08:00
Philip Prindeville
d88f4cecf3 Fix 3.3 build warnings (#664)
* Fix warnings about _GNU_SOURCE being redefined.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

* Fix warnings of format-specified mismatching type

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

* Simplify endianness checks

Linux can be built with too many types of C run-time library and it's
not reasonable to have to enumerate all of them, especially since at
least one of them (MUSL) goes out of its way to not be easily
detectable.

Instead, leverage autoconf better for Linux/BSD to detect either
<endian.h> or <sys/endian.h> directly.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>

* Sys headers should not be included directly

There's usually a top-level header which then includes the sys/
descendent.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-11-08 09:29:26 -08:00
Bruce A. Mah
c5fbafaf21
Bump version numbers for iperf-3.3. 2017-10-30 14:00:14 -07:00
Bruce A. Mah
4a45b32b47 Fix out-of-the-box builds with no OpenSSL (#633)
Don't make OpenSSL detection error out unless --with-openssl explicitly given.

This fixes the out-of-the-box build on macOS, which doesn't include
headers, etc. for OpenSSL by default.  The configure script still
errors out if the user specifies a --with-openssl flag but for some
reason the build host's OpenSSL is broken or can't be used.

* Regen.
2017-08-15 11:13:08 -07:00
ralcini
3fd1a2ae90 fix for issue #624 - force build without openssl (#631)
* fix: now --without-openssl configure flags works
enh: if openssl support is required and no valid installation is found, now it raise an error

* enh: added warning if building without openssl (iperf_auth disabled)
2017-08-14 13:43:38 -07:00
Bruce A. Mah
df912d25de
The master branch is now just development again, so update version string. 2017-06-26 14:35:18 -07:00
Bruce A. Mah
619b4e9456
Version bumps, etc. for iperf 3.2. 2017-06-26 10:37:57 -07:00
Bruce A. Mah
6cdbb01e95
Preparing for a release candidate build. 2017-06-19 14:35:22 -07:00
Bruce A. Mah
9d7d60aca1 Issue 216 (#581)
* Add configurable timeout for the setup of the control connection.
This is specified using the new --connect-timeout option, with an
integer parameter in ms.  The iperf3 client will wait for this
amount of time for the setup of the control connection to the
server.  If this option is not given, the OS default for TCP
connection setup is used.  Specifying a smaller connection timeout
allows faster detection of a down / unresponsive iperf3 server.

The implementation uses a variation on the timeout_connect()
function from OpenBSD's netcat utility.

Fixes #216.
2017-05-17 12:50:50 -07:00
Bruce A. Mah
a026b29b2f
Move an autoconfig file into config/, get rid of a no-longer-used file.
Follow-up for #517.
2017-04-20 12:37:09 -07:00
ralcini
a51045de19 Service Authentication (#517)
Add an optional mode that requires clients to authenticate with the server.

In this mode, clients need to provide a username and a password, which are checked against a password file on the server.  The authentication credentials are protected by an RSA public keypair...the encrypted credentials are sent along with the test parameters.

Operationally the use of this feature places the following additional requirements on the build and installation of iperf3:

o The presence of the OpenSSL headers and libraries to build iperf3, and the libraries available on the client and server at runtime.

o Generation of an RSA public keypair; the private part is used by the server and the public part must be distributed to the clients.

o Username/password pairs for all authorized users, to be stored in a file on the server.

o Loose time synchronization between the server and clients (to within approximately 30 seconds).

o Appropriate command-line flags given on the client and server.

Note that iperf3 can be built and run as before, without fulfilling any of these requirements.

Partial documentation for this feature is included in this commit.  It is anticipated that additional documentation text and editing will follow this merge.

Submitted by @ralcini.  First suggested by @codyhanson in pull request #242.
2017-04-20 10:01:08 -07:00
ShaunCurrier
9f28b247ba Remove unused hstrerror(), bad nanosleep() message in configure.ac (#503) (#523)
* Remove unused hstrerror(), bad nanosleep() message in configure.ac (#503)

* Remove dead code involving h_errno and hstrerror()

h_errno was formerly set as a side effect of a failed
gethostbyname(3) call, but this function has been
deprecated.
2017-03-13 09:36:45 -07:00
Bruce A. Mah
29183ec341 iperf's master branch isn't 3.1, so don't generate that version string.
Signed-off-by: Bruce A. Mah <bmah@es.net>
2016-12-12 15:40:31 -08:00
Bruce A. Mah
ed94082be2
Fix a buffer overflow / heap corruption issue that could occur if a
malformed JSON string was passed on the control channel.  This issue,
present in the cJSON library, was already fixed upstream, so was
addressed here in iperf3 by importing a newer version of cJSON (plus
local ESnet modifications).

Discovered and reported by Dave McDaniel, Cisco Talos.

Based on a patch by @dopheide-esnet, with input from @DaveGamble.

Cross-references:  TALOS-CAN-0164, ESNET-SECADV-2016-0001,
CVE-2016-4303
2016-06-03 09:23:59 -07:00
Bruce A. Mah
9915746a8b
Squashed commit of the following:
commit 2dc03630a736be2ae9f64823aabb5776e7074c2a
Merge: 61e325c 0da552c
Author: Bruce A. Mah <bmah@es.net>
Date:   Thu May 26 09:40:58 2016 -0700

    Merge branch 'master' into issue-325

commit 61e325c5d0a4e7a9823221ce507db0f478fc98b5
Merge: 227992f ccbcee6
Author: Bruce A. Mah <bmah@es.net>
Date:   Thu May 26 11:09:54 2016 -0400

    Merge branch 'issue-325' of github.com:esnet/iperf into issue-325

    Conflicts:
    	src/iperf3.1

commit 227992f366e7f4895b6762011576ba22a42a752e
Author: Bruce A. Mah <bmah@es.net>
Date:   Thu May 26 11:07:01 2016 -0400

    Don't set SO_MAX_PACING_RATE if the rate is 0.  Also tweak some help text.

    Towards #325, in response to feedback from @bltierney.

commit ccbcee6366d50ec632fc00eb11fde8a886f8febe
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 09:19:41 2016 -0700

    Fix manpage formatting for consistency.

commit 90ac5a9ce09bd746ca5f943a8226ab864da3ebf8
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 12:14:16 2016 -0400

    Add some documentation for fair-queueing per-socket pacing.

    For #325.

commit 5571059870f7aefefb574816de70b6406848888f
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 11:55:44 2016 -0400

    Change the fair-queueing socket pacing logic in response to feedback.

    By default, on platforms where per-socket pacing is available, it
    will be used.  If not available, iperf3 will fall back to application-
    level pacing.

    The --no-fq-socket-pacing option can be used to forcibly disable
    fair-queueing per-socket pacing.  (The earlier --socket-pacing option
    has been removed.)

    Tested on CentOS 7, more testing on other platforms is required to
    be sure it didn't break the old application-level pacing behavior.

    For #325.

commit 3e3f506fe9f375a5771c9e3ddfe8677c1a7146e7
Merge: 50a379e 3b23112
Author: Bruce A. Mah <bmah@es.net>
Date:   Tue May 24 09:54:39 2016 -0400

    Merge branch 'master' into issue-325

commit 50a379eddfa89d1313d2aeeb62a6fbc82f00ea17
Author: Bruce A. Mah <bmah@es.net>
Date:   Sat Apr 16 02:55:42 2016 -0400

    Regen.

commit 200d3fe3917b3d298bdf52a0bde32c47cf2727b0
Author: Bruce A. Mah <bmah@es.net>
Date:   Sat Apr 16 02:41:32 2016 -0400

    Checkpoint for initial work on #325 to add socket pacing.

    This works only on Linux and depends on the availability of
    the SO_MAX_PACING_RATE socket option and the fq queue discipline.
    Use --socket-pacing to use SO_MAX_PACING_RATE instead of the
    default iperf3 user-level rate limiting; in either case, the
    --bandwidth parameter controls the desired rate.

    Lightly tested with both --tcp and --udp, normal and --reverse.
    Real testing requires analysis of packet timestamps between
    multiple hosts.
2016-05-26 09:47:48 -07:00
Bruce A. Mah
1fb00f8ccc Revert "Version bumps, release notes for iperf 3.1.1."
This reverts commit 0eeb788eeb.
2015-11-18 14:26:46 -08:00
Bruce A. Mah
0eeb788eeb Version bumps, release notes for iperf 3.1.1. 2015-11-18 14:19:25 -08:00
Bruce A. Mah
8774140404 Bump version numbers and dates for iperf 3.1. 2015-10-16 10:00:30 -07:00
Bruce A. Mah
b4094dbf35
Turn the crank again for another 3.1 beta release. 2015-07-07 14:13:33 -07:00
Bruce A. Mah
3a4d684d44
Bump version number. 2015-06-30 13:45:50 -07:00
Bruce A. Mah
b6a2021c0b
Bump version number and manpage rev dates for 3.1b1. 2015-06-19 11:27:16 -07:00
Bruce A. Mah
8fb86886a4
Really make sctp_assoc_value test work correctly, at least on FreeBSD. 2015-01-06 10:34:41 -08:00
Bruce A. Mah
3b60f09017 Unbreak (partially) SCTP on Solaris.
Solaris implements an (older?) version of the API for SCTP_MAXSEG,
which takes an integer argument rather than a struct sctp_assoc_val.
We need to test for that and handle it appropriately.  There are some
signs it doesn't even work correctly if we do this, so quietly ignore
errors that happen if the OS complains it's unsupported.

Also, Solaris doesn't support SCTP_DISABLE_FRAGMENTS even though it
defines the preprocessor symbol for this.  Rather than aborting when
we try to unsuccessfully unset this option, just ignore the error.

Lightly tested with SCTP over IPv6 on localhost.
2015-01-06 10:22:00 -08:00
Bruce A. Mah
e142062572
Add -X to restrict SCTP binding to a subset of interfaces.
Contains an alternate implementation of previously-submitted patches
to set the maximum segment size and no-delay options.

As a result of this change, SCTP functionality on Linux will generally
require the libsctp library (on CentOS and similar distributions this
is provided by the lksctp-tools RPM).

Part of #131.

Submitted by:	Bruce Simpson <bs48@st-andrews.ac.uk>
2015-01-05 15:19:57 -08:00
Bruce A. Mah
0932b664ed Update a comment...TCP_CONGESTION works on FreeBSD. 2014-10-16 12:29:11 -07:00
Bruce A. Mah
ddf5579182 Improve SCTP detection on Solaris. 2014-10-16 11:29:41 -07:00