]> The Tcpdump Group git mirrors - tcpdump/blobdiff - configure
change make check to work with POSIX shell
[tcpdump] / configure
index a3a3e01e78634b83876a33473215b58a1cd33d8c..9a896984d2008a2dc4613980b52f6ce51c805eb0 100755 (executable)
--- a/configure
+++ b/configure
@@ -1343,7 +1343,8 @@ Optional Packages:
   --with-sandbox-capsicum use Capsicum security functions [default=yes, if
                           available]
   --with-system-libpcap   don't use local pcap library
-  --with-crypto           use OpenSSL libcrypto [default=yes, if available]
+  --with-crypto[=DIR]     use OpenSSL/libressl libcrypto (located in directory
+                          DIR, if specified) [default=yes, if available]
   --with-cap-ng           use libcap-ng [default=yes, if available]
 
 Some influential environment variables:
@@ -4192,7 +4193,7 @@ fi
 done
 
 
-for ac_header in fcntl.h rpc/rpc.h rpc/rpcent.h netdnet/dnetdb.h
+for ac_header in fcntl.h rpc/rpc.h rpc/rpcent.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -4497,8 +4498,6 @@ fi
 case "$enableval" in
 yes)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The SMB printer may have exploitable buffer overflows!!!" >&5
-$as_echo "$as_me: WARNING: The SMB printer may have exploitable buffer overflows!!!" >&2;}
 
 $as_echo "#define ENABLE_SMB 1" >>confdefs.h
 
@@ -5058,33 +5057,6 @@ if test "$ipv6" = "yes" -a "$ipv6lib" != "none"; then
        fi
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_htoa declaration in netdnet/dnetdb.h" >&5
-$as_echo_n "checking for dnet_htoa declaration in netdnet/dnetdb.h... " >&6; }
-if ${td_cv_decl_netdnet_dnetdb_h_dnet_htoa+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <netdnet/dnetdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "dnet_htoa" >/dev/null 2>&1; then :
-  td_cv_decl_netdnet_dnetdb_h_dnet_htoa=yes
-else
-  td_cv_decl_netdnet_dnetdb_h_dnet_htoa=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $td_cv_decl_netdnet_dnetdb_h_dnet_htoa" >&5
-$as_echo "$td_cv_decl_netdnet_dnetdb_h_dnet_htoa" >&6; }
-if test "$td_cv_decl_netdnet_dnetdb_h_dnet_htoa" = yes; then
-
-$as_echo "#define HAVE_NETDNET_DNETDB_H_DNET_HTOA 1" >>confdefs.h
-
-fi
-
 ac_fn_c_check_func "$LINENO" "vfprintf" "ac_cv_func_vfprintf"
 if test "x$ac_cv_func_vfprintf" = xyes; then :
   $as_echo "#define HAVE_VFPRINTF 1" >>confdefs.h
@@ -5292,65 +5264,6 @@ done
            ;;
     esac
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dnet_htoa" >&5
-$as_echo_n "checking for library containing dnet_htoa... " >&6; }
-if ${ac_cv_search_dnet_htoa+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dnet_htoa ();
-int
-main ()
-{
-return dnet_htoa ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' dnet; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_dnet_htoa=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_dnet_htoa+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_dnet_htoa+:} false; then :
-
-else
-  ac_cv_search_dnet_htoa=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dnet_htoa" >&5
-$as_echo "$ac_cv_search_dnet_htoa" >&6; }
-ac_res=$ac_cv_search_dnet_htoa
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-$as_echo "#define HAVE_DNET_HTOA 1" >>confdefs.h
-
-fi
-
-
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lrpc" >&5
 $as_echo_n "checking for main in -lrpc... " >&6; }
 if ${ac_cv_lib_rpc_main+:} false; then :
@@ -5450,7 +5363,6 @@ fi
 
 
 
-
                 LBL_LIBS="$LIBS"
     pfopen=/usr/examples/packetfilter/pfopen.c
     if test -f $pfopen ; then
@@ -5801,7 +5713,7 @@ if test "x$ac_cv_func_pcap_loop" = xyes; then :
 
 else
 
-           as_fn_error $? "Report this to [email protected], and include the
+           as_fn_error $? "This is a bug, please follow the guidelines in CONTRIBUTING and include the
 config.log file in your report.  If you have downloaded libpcap from
 tcpdump.org, and built it yourself, please also include the config.log
 file from the libpcap source directory, the Makefile from the libpcap
@@ -7573,20 +7485,20 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -pedantic option" >&5
-$as_echo_n "checking whether the compiler supports the -pedantic option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wpedantic option" >&5
+$as_echo_n "checking whether the compiler supports the -Wpedantic option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-pedantic" : "x-W.*" >/dev/null
+       if expr "x-Wpedantic" : "x-W.*" >/dev/null
        then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -pedantic"
-       elif expr "x-pedantic" : "x-f.*" >/dev/null
+           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wpedantic"
+       elif expr "x-Wpedantic" : "x-f.*" >/dev/null
        then
-           CFLAGS="$CFLAGS -Werror -pedantic"
-       elif expr "x-pedantic" : "x-m.*" >/dev/null
+           CFLAGS="$CFLAGS -Werror -Wpedantic"
+       elif expr "x-Wpedantic" : "x-m.*" >/dev/null
        then
-           CFLAGS="$CFLAGS -Werror -pedantic"
+           CFLAGS="$CFLAGS -Werror -Wpedantic"
        else
-           CFLAGS="$CFLAGS -pedantic"
+           CFLAGS="$CFLAGS -Wpedantic"
        fi
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -7604,7 +7516,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -pedantic"
+               V_CCOPT="$V_CCOPT -Wpedantic"
 
 else
 
@@ -7659,6 +7571,49 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wused-but-marked-unused option" >&5
+$as_echo_n "checking whether the compiler supports the -Wused-but-marked-unused option... " >&6; }
+       save_CFLAGS="$CFLAGS"
+       if expr "x-Wused-but-marked-unused" : "x-W.*" >/dev/null
+       then
+           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wused-but-marked-unused"
+       elif expr "x-Wused-but-marked-unused" : "x-f.*" >/dev/null
+       then
+           CFLAGS="$CFLAGS -Werror -Wused-but-marked-unused"
+       elif expr "x-Wused-but-marked-unused" : "x-m.*" >/dev/null
+       then
+           CFLAGS="$CFLAGS -Werror -Wused-but-marked-unused"
+       else
+           CFLAGS="$CFLAGS -Wused-but-marked-unused"
+       fi
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+return 0
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+               CFLAGS="$save_CFLAGS"
+               V_CCOPT="$V_CCOPT -Wused-but-marked-unused"
+
+else
+
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+               CFLAGS="$save_CFLAGS"
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+
        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -W option" >&5
 $as_echo_n "checking whether the compiler supports the -W option... " >&6; }
        save_CFLAGS="$CFLAGS"
@@ -7951,9 +7906,9 @@ $as_echo "#define LBL_ALIGN 1" >>confdefs.h
 
     fi
 
-# Check for OpenSSL libcrypto
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use OpenSSL libcrypto" >&5
-$as_echo_n "checking whether to use OpenSSL libcrypto... " >&6; }
+# Check for OpenSSL/libressl libcrypto
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use OpenSSL/libressl libcrypto" >&5
+$as_echo_n "checking whether to use OpenSSL/libressl libcrypto... " >&6; }
 # Specify location for both includes and libraries.
 want_libcrypto=ifavailable
 
@@ -7962,20 +7917,38 @@ if test "${with_crypto+set}" = set; then :
   withval=$with_crypto;
        if test $withval = no
        then
+               # User doesn't want to link with libcrypto.
                want_libcrypto=no
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
        elif test $withval = yes
        then
+               # User wants to link with libcrypto but hasn't specified
+               # a directory.
                want_libcrypto=yes
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
+       else
+               # User wants to link with libcrypto and has specified
+               # a directory, so use the provided value.
+               want_libcrypto=yes
+               libcrypto_root=$withval
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, using the version installed in $withval" >&5
+$as_echo "yes, using the version installed in $withval" >&6; }
+
+               #
+               # Put the subdirectories of the libcrypto root directory
+               # at the front of the header and library search path.
+               #
+               CFLAGS="-I$withval/include $CFLAGS"
+               LIBS="-L$withval/lib $LIBS"
        fi
 
 else
 
        #
-       # Use libcrypto if it's present, otherwise don't.
+       # Use libcrypto if it's present, otherwise don't; no directory
+       # was specified.
        #
        want_libcrypto=ifavailable
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, if available" >&5
@@ -8041,7 +8014,8 @@ _ACEOF
 
 fi
 
-               for ac_header in openssl/evp.h
+               if test "$ac_cv_lib_crypto_DES_cbc_encrypt" = "yes"; then
+                       for ac_header in openssl/evp.h
 do :
   ac_fn_c_check_header_mongrel "$LINENO" "openssl/evp.h" "ac_cv_header_openssl_evp_h" "$ac_includes_default"
 if test "x$ac_cv_header_openssl_evp_h" = xyes; then :
@@ -8053,6 +8027,39 @@ fi
 
 done
 
+                       #
+                       # OK, then:
+                       #
+                       # 1) do we have EVP_CIPHER_CTX_new?
+                       # If so, we use it to allocate an
+                       # EVP_CIPHER_CTX, as EVP_CIPHER_CTX may be
+                       # opaque; otherwise, we allocate it ourselves.
+                       #
+                       # 2) do we have EVP_CipherInit_ex()?
+                       # If so, we use it, because we need to be
+                       # able to make two "initialize the cipher"
+                       # calls, one with the cipher and key, and
+                       # one with the IV, and, as of OpenSSL 1.1,
+                       # You Can't Do That with EVP_CipherInit(),
+                       # because a call to EVP_CipherInit() will
+                       # unconditionally clear the context, and
+                       # if you don't supply a cipher, it'll
+                       # clear the cipher, rendering the context
+                       # unusable and causing a crash.
+                       #
+                       for ac_func in EVP_CIPHER_CTX_new EVP_CipherInit_ex
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+               fi
 
 fi