aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorralcini <roberto.alcini@gmail.com>2017-04-20 19:01:08 +0200
committerBruce A. Mah <bmah@kitchenlab.org>2017-04-20 10:01:08 -0700
commita51045de196f762fb74c86184b03da148c4e8f07 (patch)
tree2d6d223168994e38f93cd635d12caeb55ca6d82c /configure.ac
parent05600c201ac47d02c33e8ccfb2f17f1bcc977c4b (diff)
downloadiperf3-a51045de196f762fb74c86184b03da148c4e8f07.tar.gz
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.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac9
1 files changed, 9 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 17f12e7..faae23f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -25,6 +25,7 @@
# Initialize the autoconf system for the specified tool, version and mailing list
AC_INIT(iperf, 3-CURRENT, https://github.com/esnet/iperf, iperf, http://software.es.net/iperf/)
+m4_include([ax_check_openssl.m4])
AC_LANG(C)
# Specify where the auxiliary files created by configure should go. The config
@@ -97,6 +98,14 @@ AC_CHECK_HEADERS([netinet/sctp.h],
#endif
])
+# Check for OPENSSL support
+AX_CHECK_OPENSSL(
+ AC_DEFINE([HAVE_SSL], [1], [OpenSSL Is Available])
+)
+LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
+LIBS="$OPENSSL_LIBS $LIBS"
+CPPFLAGS="$OPENSSL_INCLUDES $CPPFLAGS"
+
# Check for TCP_CONGESTION sockopt (believed to be Linux and FreeBSD only)
AC_CACHE_CHECK([TCP_CONGESTION socket option],
[iperf3_cv_header_tcp_congestion],