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

1196 Коммитов

Автор SHA1 Сообщение Дата
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
Bruce A. Mah
fd46367fc4
feat: Authentication failure doesn't count for --one-off. (#877)
Fixes #864.
2019-06-05 15:54:22 -07:00
srgnk
2679640c0f fix: Don't print spurious JSON server output in bidir mode (#868)
In bidirectional mode, if option --get-server-output is set and if
both client and server have --json set to true, client would still print
the json output of server to stdout as a separate piece instead of
including it into client's json output.

This patch fixes this problem, the server's json output would be
appended to client's json field 'server_output_json' as it should be.
2019-05-28 12:02:07 -07:00
Bruce A. Mah
0891322aad
chore: Slightly belatedly update copyright dates. 2019-05-24 13:57:01 -07:00
Bruce A. Mah
7c9b553c7d
enh: Properly include <sys/socket.h> for improved portability. (#874)
Fixes #821.
2019-05-17 14:14:05 -07:00
srgnk
a9af2b5127 enh: Introduce API functions for no_delay option (#870) 2019-05-17 13:39:40 -07:00
srgnk
8fc10fa34b enh: Introduce API functions for repeating_payload option (#869) 2019-05-17 13:38:58 -07:00
srgnk
e9e984de2b fix: Pass repeating_payload option to server (#867)
If client was started with --repeating-payload option, tell the
server to use the repeating_payload also.

Since repeating_payload is a client specific option at the moment and
we don't tell the server if repeating_payload was set not not,
server always uses randomized patterns in reverse and bidirectional
modes disregarding what patterns the client was told to generate.

So, if client was started with both --repeating-payload and --reverse,
the server would still send the randomized data to the client which
doesn't seem right.

This commit fixes this issue.

Signed-off-by: Sergey Nemov <sergey.nemov@intel.com>
2019-05-17 13:21:31 -07:00
Bruce A. Mah
99fa7cbeec
Regen. 2019-05-17 12:50:01 -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
c9bb46938c
Partially revert documentated added in 0c4d599 to reflect reality. (#866)
The bug reported in #505 seems to not exist at this time, and
the text added in this manpage change caused some other problems,
a la perfsonar/pscheduler#819.

Fixes #860.
2019-05-14 14:41:22 -07:00
Bruce A. Mah
61b82c0b25
fix: Use timezone from time formatting, not a (wrong) hardcoded string. (#857)
Fixes #838.
2019-04-12 17:21:19 -04:00
Bruce A. Mah
8b9c59b3ec
fix: Remove Linux-ism in clock_gettime(3). (#853)
Fixes build on FreeBSD.  Possible fix for #829.
2019-03-29 15:52:56 -07:00
Matt Pelland
40e7c05440 implement providing password via environment variable (#815) 2019-02-01 14:39:43 -08:00
Tommi Rantala
d607579929 Fix cpu usage calculation regression in cpu_util() (#822)
iperf reported "impossible" CPU usage percentages in JSON output:

    "cpu_utilization_percent":      {
        "host_total":   70907445.679701567,
        "host_user":    1303335.9336584355,
        "host_system":  69604109.746043131,
        "remote_total": 13580675.258652203,
        "remote_user":  540984.0827233647,
        "remote_system":        13039620.331720918
    },

Regression introduced in commit cde81d7 ("Add initial portable time
abstraction"), where "timediff" was accidentally changed from
microseconds to seconds:

  -    timediff = ((temp.tv_sec * 1000000.0 + temp.tv_usec) -
  -                (last.tv_sec * 1000000.0 + last.tv_usec));
  +    iperf_time_diff(&now, &last, &temp_time);
  +    timediff = iperf_time_in_secs(&temp_time);
2018-12-13 13:43:02 -08:00
Frank LENORMAND
901ad59c83 tcp sctp: Let the system pick the largest possible backlog value for listen() (#827)
This commit applies the same changes made by b481169 (#693), to the
TCP and SCTP server sockets.
2018-12-13 13:32:49 -08:00
Boris Okunev
0778f04c98 Bidirect mode implementation (#780)
Adds the `--bidir` flag to support simultaneous two-way tests.

Submitted by @LikHait.  Fixes #201.
2018-12-13 12:59:02 -08:00
Bruce A. Mah
a68171340f
Add portable time abstraction (#738). Fixes #253.
From author's notes (@ben-foxmore):

The current usage of gettimeofday causes issues for us when performing
tests shortly after restarting a system. In our setup, this occurs
often as we restart the system before each test to ensure reliable
results. We already maintain our own version of iperf for some subtle
changes, but this change feels like it might be useful to upstream.
(It's also a reasonable size change, so we'd prefer not maintain it
with each new version of iperf.)

It uses clock_gettime on systems that have it available, and falls
back to gettimeofday when it's not. These two options use different
structures for storing time - clock_gettime uses timespec, and
gettimeofday uses timeval. To provide abstraction to which one is
available, a separate iperf_time struct is defined to store time.

timespec has nanosecond accuracy, while timeval only has microseconds.
For the purposes of iperf, I don't think nanosecond accuracy is
neccesary, so iperf_time only uses microseconds, throwing away any
additional accuracy. Currently I have used the MONOTONIC clock, as I
think we only need a consistent time interval measure.
2018-09-28 11:24:12 -07:00
Bruce A. Mah
64d1be0fcc
Regen. 2018-09-28 11:07: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
RollingSlack
197d27ac76 Show client's target bitrate (-b/--bitrate) in server output (json,verbose) (#776)
Fixes #599.
2018-09-28 09:37:38 -07:00
Bruce A. Mah
af34c411df
Flush (if appropriate) after a server-side message where we weren't before. (#795)
Also fix some stupid looking code and update a copyright.
Fixes #790.
2018-09-17 13:35:16 -07:00
Bruce A. Mah
d95891b812
Document --udp-counters-64bit in manual page. (#796)
Fixes #791.
2018-09-17 13:32:15 -07:00
Bruce A. Mah
d71efe5ff5
Fix a segmentation fault in verbose mode. (#784)
To reproduce, run the server as "iperf3 --server --verbose" and
run a client as "iperf3 --client localhost -reverse --parallel 2".
Fixes #778.

Based on https://github.com/Aquantia/iperf/commit/f1778271d2c6bed1dae09dccd33251
1b263f6871
2018-08-22 14:11:05 -07:00
Boris Okunev
da6eebb521 Fixed function implementation (#775)
* Fixed implementation of function set_test-reverse().

* Correct/improve some other checks
2018-08-14 15:47:21 -07:00
Bruce A. Mah
cf1f1a3d36
Regen. 2018-08-09 12:38:31 -07:00
RollingSlack
beac6881e6 Add libiperf api for getting iperf version (#767)
Also includes a test program.
2018-08-09 12:36:54 -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
Bruce A. Mah
31819d81df
Add post-iperf-3.6 note for disabling profiled builds to FAQ.
Follow-on to #749, suggested by @artem-nefedov.
2018-07-02 08:39:19 -07:00
Bruce A. Mah
d4dfec7874
Regen. 2018-06-29 16:25:06 -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
Sam Hooke
02e16f67fb Towards issue 595 (#762)
* Add pacing timer, bytes and blocks functions to libiperf.

* Explicitly cast to uint64_t to match return type.
2018-06-28 13:30:41 -07:00
Bruce A. Mah
1859fbc3b7
Regen. 2018-06-25 16:04:56 -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
13255caddf
Update for iperf 3.6, re-render manual page from source. 2018-06-25 16:02:10 -07:00
Bruce A. Mah
88f3ad87f3
Regen. 2018-06-22 14:20:47 -07:00
Bruce A. Mah
2c92e35a05
Update for iperf-3.6. 2018-06-22 14:20:28 -07:00
Bruce A. Mah
ef0aa03e9f
Update release notes for #759. 2018-06-22 14:15:15 -07:00
Bruce A. Mah
6e9d8525a5
Regen. 2018-06-22 14:10:41 -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
Bruce A. Mah
165b4e0ace
Update release notes for recent changes. 2018-06-22 10:40:37 -07:00
Bruce A. Mah
1254e135fd
Warn if doing JSON output and either -d or -v are specified.
Debugging and/or verbose output can get in the way of producing
valid/parsable JSON.

Inspired by #737.
2018-06-08 11:55:33 -07:00
Bruce A. Mah
a72ed8b7f9
Merge branch 'master' of github.com:/esnet/iperf 2018-06-08 11:46:12 -07:00
Brendan Jackman
d8f2276d70 Fix some indentation (#750)
There are lots of mixed tabs and spaces, most of them look OK if tabs are 8
characters wide, but this bit seems to have been written by someone whose editor
thinks they're 4 characters wide, so it looks all messed up.
2018-06-08 11:44:09 -07:00
Bruce A. Mah
bee70d4d31
Start release notes for iperf-3.6.
While here, get rid of an empty section for 3.5.
2018-05-30 14:51:04 -07:00
Bruce A. Mah
7f883016bb
Add a forgotten cast to fix a glitch in JSON output on CentOS 6. (#744)
Fixes #727.
2018-05-30 11:32:38 -07:00
Ben Fox-Moore
cde81d7640 Add initial portable time abstraction 2018-05-17 14:09:52 +02:00
Bruce A. Mah
829d619ab4
First try at implementing --extra-data. (#729)
Towards #600.
2018-05-09 17:42:17 -07:00
edupont
48a65ff76e Adding missing word (#736) 2018-05-09 17:41:58 -07:00
Bruce A. Mah
e4cd80fa80
Update manpage date. 2018-04-27 13:50:20 -07:00