]> sjero.net Git - iperf/commit - src/SocketAddr.c
Native IPv6 support for iperf
authorGerrit Renker <gerrit@erg.abdn.ac.uk>
Tue, 24 Feb 2009 19:31:40 +0000 (20:31 +0100)
committerGerrit Renker <gerrit@erg.abdn.ac.uk>
Tue, 24 Feb 2009 19:31:40 +0000 (20:31 +0100)
commita5a03e6ab0fdf9c4d7d4c085fcf01436f9ba3202
treea77d7643f241124a4d428464dc8223f4b5f3eca5
parent90fc1e2c0c74319759b21d4a177c32691b88fdf3
Native IPv6 support for iperf

This simplifies the internal IPv6 concepts so that IPv4/IPv6 and IPv4/IPv6
hostnames can be used interchangeably, without having to use the -V flag.

That is, the type of the address (v4/v6) is automatically detected from the
input hostname given, as one would expect.

Most of the code is now Linux-specific, which is why #ifdefs have been removed.

Note on multicast-join operation for v4/v6:
-------------------------------------------
The multicast-join code has been extended to allow specifying the multicast
interface. This is clear when a host has only one interface: but on which
interface to join if the host has more than one interface?
This is now done via the
-J <interface-name>  or
-j <interface-name> flags.

Note on bidirectional/tradeoff tests (options -2 / -r):
-------------------------------------------------------
The connecting client does not longer validate the peer address when switching
from a connecting client to a listening server for the reverse connection. The
reason is that previously mSettings->peer was looked up and then tested against
the server->peer address. When using both v4/v6 addresses, this is no longer
trivial (v4/v6, v4/v4, v6/v4, v6/v6), hence I have disabled it.
15 files changed:
include/List.h
include/Reporter.h
include/Settings.hpp
include/SocketAddr.h
include/headers.h
src/Client.cpp
src/List.cpp
src/Listener.cpp
src/Locale.c
src/PerfSocket.cpp
src/ReportCSV.c
src/ReportDefault.c
src/Reporter.c
src/Settings.cpp
src/SocketAddr.c