iperf3: add SSL variant for iperf_auth feature
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
This commit is contained in:
		 Philip Prindeville
					Philip Prindeville
				
			
				
					committed by
					
						 John Crispin
						John Crispin
					
				
			
			
				
	
			
			
			 John Crispin
						John Crispin
					
				
			
						parent
						
							d55fff4ae7
						
					
				
				
					commit
					fc48aebdc1
				
			| @@ -21,21 +21,39 @@ PKG_LICENSE:=BSD-3-Clause | ||||
| PKG_BUILD_PARALLEL:=1 | ||||
| PKG_INSTALL:=1 | ||||
|  | ||||
| PKG_FIXUP:=autoreconf | ||||
|  | ||||
| include $(INCLUDE_DIR)/package.mk | ||||
|  | ||||
| DISABLE_NLS:= | ||||
|  | ||||
| define Package/iperf3 | ||||
| define Package/iperf3/default | ||||
|   SECTION:=net | ||||
|   CATEGORY:=Network | ||||
|   TITLE:=Internet Protocol bandwidth measuring tool | ||||
|   URL:=https://github.com/esnet/iperf | ||||
| endef | ||||
|  | ||||
| define Package/iperf3 | ||||
| $(call Package/iperf3/default) | ||||
|   VARIANT:=nossl | ||||
| endef | ||||
|  | ||||
| define Package/iperf3-ssl | ||||
| $(call Package/iperf3/default) | ||||
|   TITLE+= with iperf_auth support | ||||
|   VARIANT:=ssl | ||||
|   DEPENDS:= +libopenssl | ||||
| endef | ||||
|  | ||||
| TARGET_CFLAGS += -D_GNU_SOURCE | ||||
| CONFIGURE_ARGS += --disable-shared \ | ||||
|                   --with-openssl="$(STAGING_DIR)/usr" | ||||
| CONFIGURE_ARGS += --disable-shared | ||||
|  | ||||
| ifeq ($(BUILD_VARIANT),ssl) | ||||
| 	CONFIGURE_ARGS += --with-openssl="$(STAGING_DIR)/usr" | ||||
| else | ||||
| 	CONFIGURE_ARGS += --without-openssl | ||||
| endif | ||||
|  | ||||
| MAKE_FLAGS += noinst_PROGRAMS= | ||||
|  | ||||
| @@ -45,9 +63,21 @@ define Package/iperf3/description | ||||
|  characteristics. | ||||
| endef | ||||
|  | ||||
| # autoreconf fails if the README file isn't present | ||||
| define Build/Prepare | ||||
| 	$(call Build/Prepare/Default) | ||||
| 	touch $(PKG_BUILD_DIR)/README | ||||
| endef | ||||
|  | ||||
| define Package/iperf3/install | ||||
| 	$(INSTALL_DIR) $(1)/usr/bin | ||||
| 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iperf3 $(1)/usr/bin/ | ||||
| endef | ||||
|  | ||||
| define Package/iperf3-ssl/install | ||||
| 	$(INSTALL_DIR) $(1)/usr/bin | ||||
| 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iperf3 $(1)/usr/bin/ | ||||
| endef | ||||
|  | ||||
| $(eval $(call BuildPackage,iperf3)) | ||||
| $(eval $(call BuildPackage,iperf3-ssl)) | ||||
|   | ||||
| @@ -0,0 +1,41 @@ | ||||
| commit 3fd1a2ae907bff2d7593c0bb9944aa05eca7b58d | ||||
| Author: ralcini <roberto.alcini@gmail.com> | ||||
| Date:   Mon Aug 14 22:43:38 2017 +0200 | ||||
|  | ||||
|     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) | ||||
|  | ||||
| diff --git a/configure.ac b/configure.ac | ||||
| index 3c56cb3..79f3869 100644 | ||||
| --- a/configure.ac | ||||
| +++ b/configure.ac | ||||
| @@ -101,13 +101,18 @@ 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" | ||||
| +if test "x$with_openssl" = "xno"; then | ||||
| +    AC_MSG_WARN( [Building without OpenSSL; disabling iperf_auth functionality.] ) | ||||
| +else | ||||
| +    # Check for OPENSSL support | ||||
| +    AX_CHECK_OPENSSL( | ||||
| +        [ AC_DEFINE([HAVE_SSL], [1], [OpenSSL Is Available]) ], | ||||
| +	[ AC_MSG_FAILURE([--with-openssl was given, but test for openssl failed]) ] | ||||
| +    ) | ||||
| +    LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS" | ||||
| +    LIBS="$OPENSSL_LIBS $LIBS" | ||||
| +    CPPFLAGS="$OPENSSL_INCLUDES $CPPFLAGS" | ||||
| +fi | ||||
|   | ||||
|  # Check for TCP_CONGESTION sockopt (believed to be Linux and FreeBSD only) | ||||
|  AC_CACHE_CHECK([TCP_CONGESTION socket option], | ||||
		Reference in New Issue
	
	Block a user