summaryrefslogtreecommitdiff
path: root/net-vpn/openvpn/files/libressl.patch
diff options
context:
space:
mode:
Diffstat (limited to 'net-vpn/openvpn/files/libressl.patch')
-rw-r--r--net-vpn/openvpn/files/libressl.patch133
1 files changed, 133 insertions, 0 deletions
diff --git a/net-vpn/openvpn/files/libressl.patch b/net-vpn/openvpn/files/libressl.patch
new file mode 100644
index 0000000..28ba42a
--- /dev/null
+++ b/net-vpn/openvpn/files/libressl.patch
@@ -0,0 +1,133 @@
+diff --git a/configure.ac b/configure.ac
+index 626b4dd..b7ea91e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1339,6 +1339,21 @@ if test "${enable_async_push}" = "yes"; then
+ )
+ fi
+
++AC_ARG_ENABLE(
++ [tests],
++ AS_HELP_STRING([--enable-tests], [enable unit tests @<:@default=no@:>@])
++)
++
++if test "${enable_tests}" = "yes"; then
++ PKG_CHECK_MODULES([CMOCKA], [cmocka])
++ TEST_CFLAGS="${CMOCKA_CFLAGS}"
++ TEST_LDFLAGS="${CMOCKA_LIBS}"
++ AC_SUBST([TEST_CFLAGS])
++ AC_SUBST([TEST_LDFLAGS])
++fi
++AM_CONDITIONAL([ENABLE_TESTS], [test "${enable_tests}" = "yes"])
++AM_CONDITIONAL([CMOCKA_INITIALIZED], [false])
++
+ CONFIGURE_DEFINES="`set | grep '^enable_.*=' ; set | grep '^with_.*='`"
+ AC_DEFINE_UNQUOTED([CONFIGURE_DEFINES], ["`echo ${CONFIGURE_DEFINES}`"], [Configuration settings])
+
+@@ -1387,28 +1402,6 @@ AC_SUBST([VENDOR_SRC_ROOT])
+ AC_SUBST([VENDOR_BUILD_ROOT])
+ AC_SUBST([VENDOR_DIST_ROOT])
+
+-TEST_LDFLAGS="-lcmocka -L\$(abs_top_builddir)/vendor/dist/lib -Wl,-rpath,\$(abs_top_builddir)/vendor/dist/lib"
+-TEST_CFLAGS="-I\$(top_srcdir)/include -I\$(abs_top_builddir)/vendor/dist/include"
+-
+-AC_SUBST([TEST_LDFLAGS])
+-AC_SUBST([TEST_CFLAGS])
+-
+-# Check if cmake is available and cmocka git submodule is initialized,
+-# needed for unit testing
+-AC_CHECK_PROGS([CMAKE], [cmake])
+-if test -n "${CMAKE}"; then
+- if test -f "${srcdir}/vendor/cmocka/CMakeLists.txt"; then
+- AM_CONDITIONAL([CMOCKA_INITIALIZED], [true])
+- else
+- AM_CONDITIONAL([CMOCKA_INITIALIZED], [false])
+- AC_MSG_RESULT([!! WARNING !! The cmoka git submodule has not been initialized or updated. Unit testing cannot be performed.])
+- fi
+-else
+- AC_MSG_RESULT([!! WARNING !! CMake is NOT available. Unit testing cannot be performed.])
+- AM_CONDITIONAL([CMOCKA_INITIALIZED], [false])
+-fi
+-
+-
+ AC_CONFIG_FILES([
+ version.sh
+ Makefile
+diff --git a/src/openvpn/openssl_compat.h b/src/openvpn/openssl_compat.h
+index d375fab..d11e9ef 100644
+--- a/src/openvpn/openssl_compat.h
++++ b/src/openvpn/openssl_compat.h
+@@ -707,62 +707,6 @@ SSL_CTX_get_max_proto_version(SSL_CTX *ctx)
+ }
+ #endif /* SSL_CTX_get_max_proto_version */
+
+-#ifndef SSL_CTX_set_min_proto_version
+-/** Mimics SSL_CTX_set_min_proto_version for OpenSSL < 1.1 */
+-static inline int
+-SSL_CTX_set_min_proto_version(SSL_CTX *ctx, long tls_ver_min)
+-{
+- long sslopt = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3; /* Never do < TLS 1.0 */
+-
+- if (tls_ver_min > TLS1_VERSION)
+- {
+- sslopt |= SSL_OP_NO_TLSv1;
+- }
+-#ifdef SSL_OP_NO_TLSv1_1
+- if (tls_ver_min > TLS1_1_VERSION)
+- {
+- sslopt |= SSL_OP_NO_TLSv1_1;
+- }
+-#endif
+-#ifdef SSL_OP_NO_TLSv1_2
+- if (tls_ver_min > TLS1_2_VERSION)
+- {
+- sslopt |= SSL_OP_NO_TLSv1_2;
+- }
+-#endif
+- SSL_CTX_set_options(ctx, sslopt);
+-
+- return 1;
+-}
+-#endif /* SSL_CTX_set_min_proto_version */
+
+-#ifndef SSL_CTX_set_max_proto_version
+-/** Mimics SSL_CTX_set_max_proto_version for OpenSSL < 1.1 */
+-static inline int
+-SSL_CTX_set_max_proto_version(SSL_CTX *ctx, long tls_ver_max)
+-{
+- long sslopt = 0;
+-
+- if (tls_ver_max < TLS1_VERSION)
+- {
+- sslopt |= SSL_OP_NO_TLSv1;
+- }
+-#ifdef SSL_OP_NO_TLSv1_1
+- if (tls_ver_max < TLS1_1_VERSION)
+- {
+- sslopt |= SSL_OP_NO_TLSv1_1;
+- }
+-#endif
+-#ifdef SSL_OP_NO_TLSv1_2
+- if (tls_ver_max < TLS1_2_VERSION)
+- {
+- sslopt |= SSL_OP_NO_TLSv1_2;
+- }
+-#endif
+- SSL_CTX_set_options(ctx, sslopt);
+-
+- return 1;
+-}
+-#endif /* SSL_CTX_set_max_proto_version */
+
+ #endif /* OPENSSL_COMPAT_H_ */
+diff --git a/tests/unit_tests/Makefile.am b/tests/unit_tests/Makefile.am
+index 31d37b8..4b7fb41 100644
+--- a/tests/unit_tests/Makefile.am
++++ b/tests/unit_tests/Makefile.am
+@@ -1,5 +1,5 @@
+ AUTOMAKE_OPTIONS = foreign
+
+-if CMOCKA_INITIALIZED
++if ENABLE_TESTS
+ SUBDIRS = example_test openvpn plugins
+ endif