dnl Process this file with autoconf to produce a configure script.
dnl
-dnl Written by and Copyright (C) 2001-2018 the
+dnl Written by and Copyright (C) 2001-2020 the
dnl Privoxy team. https://www.privoxy.org/
dnl
dnl Based on the Internet Junkbuster originally written
VERSION_MAJOR=3
VERSION_MINOR=0
-VERSION_POINT=28
-CODE_STATUS="stable"
+VERSION_POINT=29
+CODE_STATUS="UNRELEASED"
dnl Timestamp (date +%s) used by the mtree-spec target.
dnl Should be updated before releases but forgetting it isn't critical.
AC_SUBST(STATIC_PCRE_ONLY)
AC_SUBST(STATIC_PCRS_ONLY)
+dnl ========================================================
+dnl check for mbedTLS which is required for https inspection
+dnl ========================================================
+FEATURE_HTTPS_INSPECTION_ONLY=#
+OPT_MBEDTLS=no
+AC_ARG_WITH(mbedtls,dnl
+AC_HELP_STRING([--with-mbedtls], [Enable mbedTLS detection for https inspection.])
+AC_HELP_STRING([--without-mbedtls], [Disable mbedTLS detection]),
+ OPT_MBEDTLS=$withval)
+
+if test X"$OPT_MBEDTLS" != Xno; then
+
+ AC_CHECK_LIB(mbedtls, mbedtls_ssl_init,
+ [
+ AC_DEFINE(FEATURE_HTTPS_INSPECTION, 1, [if mbedTLS is enabled])
+ AC_SUBST(FEATURE_HTTPS_INSPECTION, [1])
+ FEATURE_HTTPS_INSPECTION="yes"
+ ], [], -lmbedx509 -lmbedcrypto)
+
+ if test "x$FEATURE_HTTPS_INSPECTION" = "xyes"; then
+ AC_MSG_NOTICE([Detected mbedTLS. Enabling https inspection.])
+
+ LIBS="-lmbedtls -lmbedx509 -lmbedcrypto $LIBS"
+ old_CFLAGS_nospecial="-Imbedtls/include $old_CFLAGS_nospecial"
+
+ FEATURE_HTTPS_INSPECTION_ONLY=
+ fi
+fi
+AC_SUBST(FEATURE_HTTPS_INSPECTION_ONLY)
+
+
+dnl ========================================================
+dnl Check for Brotli which can be used for decompression
+dnl ========================================================
+WITH_BROTLI=no
+AC_ARG_WITH(brotli,
+AC_HELP_STRING([--with-brotli], [Enable Brotli detection])
+AC_HELP_STRING([--without-brotli], [Disable Brotli detection]),
+ WITH_BROTLI=$withval)
+
+if test X"$WITH_BROTLI" != Xno; then
+
+ LIBS="$LIBS -lbrotlidec"
+
+ AC_CHECK_LIB(brotlidec, BrotliDecoderDecompress)
+
+ AC_CHECK_HEADERS(brotli/decode.h,
+ FEATURE_BROTLI=1
+ AC_DEFINE(FEATURE_BROTLI, 1, [If Brotli is used for decompression])
+ AC_SUBST(FEATURE_BROTLI, [1])
+ )
+fi
+
+
dnl =================================================================
dnl Final cleanup and output
dnl =================================================================