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

756 Коммитов

Автор SHA1 Сообщение Дата
Bruce A. Mah
bef5ef87f5 Don't try to do IPV6_V6ONLY on OpenBSD either.
setsockopt(3) returns an error if passing 0 to this option (which
we do if no address family is specified when we bind to the wildcard
address, say by invoking "iperf3 -s" with no other options).  This
is because OpenBSD explicitly does not support IPv4-mapped addresses,
so even though the IPV6_V6ONLY socket options exists, it only works
with a non-zero argument.

Fixes #196.
2014-06-16 08:32:18 -07:00
Bruce A. Mah
147d3369a0
Only do the IPV6_V6ONLY setsockopt(3) stuff if that option is available.
Should fix #177, in which compilation failed on older Solaris systems
that didn't have it.  This is a different approach than a patch
suggested in that issue.

Weakly regression-tested on other platforms (test this by specifying
-6, -4, or neither to the server when binding to the wildcard address,
and seeing if a client can connect with various of -6, -4, or neither).
2014-07-21 10:34:06 -07:00
Bruce A. Mah
76b5942f6f
Fix a problem with binding to the wildcard address.
On CentOS 6 and MacOS, if no address family was specified, we'd
get back an IPv4 address from getaddrinfo(3), with the result that
we couldn't accept IPv6 connections in the default server configuration.

There was an earlier attempt at fixing this problem that caused
Issue #193.  This change is a follow-up fix to that issue.

While here, put lots of comments around the fix so we remember
why we're doing these shenanigans.
2014-07-17 17:14:20 -07:00
Bruce A. Mah
5b760eef47
Fix two related bugs with -B and IPv4 addresses.
If specifying -B with an IPv4 literal address or with an FQDN that
resolved to an IPv4 address, but we had not explicitly specified an
address family with -4, we failed to set up the socket correctly
because we assumed binding to an IPv6 address, and instead (after some
error spewage) wound up binding to wildcard address.

The fix in this commit has multiple parts:  First, if the address
family hasn't been explictly specified, don't force AF_INET6 in the
hints to getaddrinfo(3).  AF_UNSPEC should generate the correct
(according to RFC 6724) behavior.

Second, iperf_reset_test() should not discard members that were passed
from command-line parameters, because that alters the behavior of the
iperf3 when it tries to recreate the listening socket.  In the failure
situation described in this issue (and possibly other as well), the
value of -B gets discarded, so on subsequent attempts to set up the
listening socket it just binds to the wildcard address.

While here, fix on-line help related to the -B option to match
reality.

Note that we're not completely in compliance with RFC 6724, which
states that we should actually try all of the addresses in returned by
getaddrinfo(3), rather than just the first one.

Fixes Issue #193.
2014-07-17 14:30:39 -07:00
Bruce A. Mah
fa0e81c853
Fix incorrect help text; "--num" should be "--bytes".
Fixes issue #192.
2014-07-10 09:49:31 -07:00
Bruce A. Mah
4fe55f3667 Merge pull request #188 from i2aaron/master
Update the license in the bootstrap.sh
2014-06-20 08:34:34 -07:00
Aaron Brown
fc742ad8ef Update the license in the bootstrap.sh 2014-06-20 09:40:16 -04:00
Bruce A. Mah
6c0147f2fe Remove unnecessary inclusion of <sys/queue.h>, as well as some ifdef-ed
out code that depended on it.

Fixes #180.
2014-06-17 13:15:26 -07:00
Bruce A. Mah
edf9d4e8cf Merge pull request #185 from fornwall/struct-in6_flowlabel_req-already-defined-on-android
in6_flowlabel_req is already defined on Android
2014-06-17 13:00:22 -07:00
Bruce A. Mah
846ddcba74 Merge pull request #184 from fornwall/include-select-h
Include <sys/select.h> for select(2)
2014-06-17 12:49:49 -07:00
Bruce A. Mah
55078e7e53
Bump MacOS version number to reflect reality. 2014-06-16 12:02:32 -07:00
Bruce A. Mah
84b24b89f9
Update for release engineering process changes. 2014-06-16 11:59:36 -07:00
Bruce A. Mah
a39070eda1
Update for 3.0.5 release and GitHub Pages. 2014-06-16 11:26:13 -07:00
Fredrik Fornwall
58fd2c37fc in6_flowlabel_req is already defined on Android 2014-06-16 09:02:44 +02:00
Fredrik Fornwall
1ceacc1362 Include <sys/select.h> for select(2)
The sys/select.h include is the correct one and fixes building on Android.

See e.g. http://pubs.opengroup.org/onlinepubs/009604599/functions/pselect.html
2014-06-16 08:59:08 +02:00
Bruce A. Mah
188f8eb69d
Regen. 2014-06-12 11:54:21 -07:00
Bruce A. Mah
0f6a1e0497 Minor release notes update. 2014-06-12 11:45:12 -07:00
Bruce A. Mah
a134ba0a02
Fix a bug in the structure of the --json output.
The various "connected" structures were just dumped into the "start"
structure.  This caused problems if there were multiple connections
(i.e. multiple parallel streams), because the "connected" structures
would overwrite themselves.  Instead, make these structures members
of a "connected" array.

This is technically an incompatible API change, but the prior behavior
was unusable.

Discovered and fix suggested by:	@i2aaron
2014-06-12 11:38:43 -07:00
Bruce A. Mah
487ee8102f
Update automake infrastructure for 1.14, to match what we build
against.
2014-06-11 13:56:54 -07:00
Bruce A. Mah
d73969bddf Update release notes and known issues on mainline. 2014-06-11 13:41:42 -07:00
Bruce A. Mah
b3903f4ca2 Revert "Explicitly run ldconfig after "make install"."
This reverts commit 72d410561e.
2014-06-11 13:25:19 -07:00
Bruce A. Mah
23c1008132 Be more tolerant of certain autoconf-defined variables not being
available.

This can happen if needing to regenerate the autoconf goop on an
older system (such as CentOS 6), where PACKAGE_URL doesn't get
defined.
2014-06-11 12:01:35 -07:00
Bruce A. Mah
ad98a8feba Update config/missing to a newer version that works with newer autoconf. 2014-06-11 11:37:25 -07:00
Bruce A. Mah
265c54a01f
Fix programming misteak.
Part of issue #160, pointed out by @i2aaron.
2014-06-11 09:55:31 -07:00
Bruce A. Mah
7ec1cbe0c8 Update URLs and other references to downloads to point to downloads.es.net. 2014-06-10 16:05:33 -07:00
Bruce A. Mah
c5e1205e49
Fix build on Fedora 21.
An open(2) call had two arguments instead of the required three.
While here, replace a hard-coded mode in a different open(2) call
with symbolic constants for readability.

Fixes #183.

Submitted by @ssahani.
2014-06-09 13:41:30 -07:00
Bruce A. Mah
2aed949ece
Regen. 2014-06-09 10:20:47 -07:00
Bruce A. Mah
552e943a65
Consolidate multiple (not current) copies of the author list into
the GitHub Pages documentation and attempt to make current.
2014-06-09 10:18:50 -07:00
Bruce A. Mah
ba8d6e6246
Implement a --get-server-output flag that allows the client to
retrieve (most of) the output emitted by the server.

If the server was invoked with the --json flag, the output will be in
JSON, otherwise it will be in the human-readable format.

If the client was invoked with the --json flag, the output will be
contained within the JSON output structure, otherwise it will be
appended (in whatever format) to the bottom of the human-readable
output.

Because of the sequencing of the output generation and display, the
server-side output includes only the starting output, interval
statistics and summaries, but not the overall summaries.  (The overall
summaries were already displayed in the client's output.)

Towards issue #160.
2014-06-05 09:48:55 -07:00
Bruce A. Mah
c110a92d08 Programs using definitions from iperf_config.h (in particular
HAVE_STDINT_H) need to include that header.

Aftermath of #174.
2014-05-19 15:33:38 -07:00
Bruce A. Mah
b506d6790c Regen. 2014-05-19 15:23:20 -07:00
Bruce A. Mah
94c0bfffcb Another try at portability. Don't do -Werror. While probably
the best thing to do from a code hygeine standpoint, it's too
painful to try to get right for now.

Fixes #174 (second try).
2014-05-19 15:22:08 -07:00
Bruce A. Mah
99b5861c22
Regen. 2014-05-19 15:04:25 -07:00
Bruce A. Mah
8de51b589f
Portability fixes for Solaris Sun Studio and MacOS.
Only do -Wall by default if on GCC (or something that looks like
GCC, such as clang/llvm).

Turn on -Werror so we can get some better error-checking, but
we also need -Wno-deprecated-declarations at least for MacOS,
because daemon(3) is deprecated starting with MacOS 10.5.

Fixes #174 (I think).

Submitted by:	@marksolaris
2014-05-19 15:02:02 -07:00
Bruce A. Mah
426221a327
Check HAVE_STDINT_H before trying to include <stdint.h>.
Partial fix for compilation on some Solaris versions.  Fixes #175.

Submitted by:	@marksolaris
2014-05-19 10:15:36 -07:00
Bruce A. Mah
df1a7a2194
Regen. 2014-05-12 15:50:20 -07:00
Bruce A. Mah
72d410561e Explicitly run ldconfig after "make install".
This might address Issue #153.
2014-05-12 15:48:49 -07:00
Bruce A. Mah
aac3bd9e45 Merge branch 'master' of github.com:/esnet/iperf 2014-05-12 14:28:36 -07:00
Bruce A. Mah
ef3eae69bf
Add reverse member to start.test_start JSON, which is 1 in --reverse mode.
This lets us tell easily from the JSON output whether a test was run in
--reverse mode or not.  Resolves #167 (one comment made in that issue
anyway).
2014-05-12 14:27:01 -07:00
Bruce A. Mah
c8a98bd371
Increase maximum test running time to 1 day.
Fixes #166.
2014-05-09 14:08:05 -07:00
Bruce A. Mah
daff72b682
Add PACKAGE_URL to help message. 2014-05-05 15:32:57 -07:00
Bruce A. Mah
4318163373
Point to GitHub Pages. 2014-05-05 15:28:05 -07:00
Bruce A. Mah
dfdb6a1930 Merge pull request #162 from carlsborg/master
fix has_sendfile ifdef, use the correct defined constant
2014-05-05 11:15:22 -07:00
carlsborg
78525e4629 fix sendfile ifdef check 2014-05-05 04:00:46 +01:00
Bruce A. Mah
81dbb9e2e1 More consistent documentation for the statistics gathering and
printing functions.
2014-05-02 12:41:07 -07:00
Bruce A. Mah
f9820fd6c0 Fix a comment. 2014-05-02 12:10:43 -07:00
Bruce A. Mah
66d0095175 Update release engineering checklist for autotools / libtool policy
change in #161.
2014-05-02 11:35:59 -07:00
Bruce A. Mah
6edfd8d65c
Use AM_MAINTAINER_MODE and regenerate autotools / libtool goop
using recent versions.

Resolves #161.
2014-05-02 11:32:12 -07:00
Bruce A. Mah
b957be432e Update known issues for #55, #125, and #129. 2014-05-01 13:32:45 -07:00
Bruce A. Mah
e4e22a58a7 Revise documentation of UDP performance issues based on recent
experiments.

Fixes Issue #55 (at least to the extent that it's not really an
iperf3 issue).
2014-05-01 13:18:53 -07:00