| 
					
				 | 
			
			
				@@ -11,7 +11,7 @@ AC_CONFIG_MACRO_DIR([m4]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # "foreign" means we don't follow GNU package layout standards 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # "1.11" means we require automake version 1.11 or newer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # "subdir-objects" means put .o files in the same directory as the .c files 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AM_INIT_AUTOMAKE([foreign 1.11 subdir-objects]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+AM_INIT_AUTOMAKE([foreign 1.11 subdir-objects -Wall -Werror]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_CONFIG_HEADERS([orconfig.h]) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -170,11 +170,15 @@ AC_ARG_ENABLE(seccomp, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_ARG_ENABLE(libscrypt, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      AS_HELP_STRING(--disable-libscrypt, [do not attempt to use libscrypt])) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-dnl check for the correct "ar" when cross-compiling 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AN_MAKEVAR([AR], [AC_PROG_AR]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AN_PROGRAM([ar], [AC_PROG_AR]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL([AR], [ar], [ar])]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AC_PROG_AR 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+dnl check for the correct "ar" when cross-compiling. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+dnl   (AM_PROG_AR was new in automake 1.11.2, which we do not yet require, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+dnl    so kludge up a replacement for the case where it isn't there yet.) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+m4_ifdef([AM_PROG_AR], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         [AM_PROG_AR], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         [AN_MAKEVAR([AR], [AC_PROG_AR]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          AN_PROGRAM([ar], [AC_PROG_AR]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL([AR], [ar], [:])]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          AC_PROG_AR]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 dnl Check whether the above macro has settled for a simply named tool even 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 dnl though we're cross compiling. We must do this before running AC_PROG_CC, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -194,14 +198,12 @@ AC_PROG_CC 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_PROG_CPP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_PROG_MAKE_SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_PROG_RANLIB 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+AC_PROG_SED 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_ARG_VAR([PERL], [path to Perl binary]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_CHECK_PROGS([PERL], [perl]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AM_CONDITIONAL(USE_PERL, [test "x$ac_cv_prog_PERL" != "x"]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-dnl autoconf 2.59 appears not to support AC_PROG_SED 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AC_CHECK_PROG([SED],[sed],[sed],[/bin/false]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 dnl check for asciidoc and a2x 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_PATH_PROG([ASCIIDOC], [asciidoc], none) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_PATH_PROGS([A2X], [a2x a2x.py], none) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -426,7 +428,7 @@ AC_CHECK_FUNCS( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # checks. So we should only probe for those functions if we are sure that we 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # are not targetting OSX 10.11 or earlier. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_MSG_CHECKING([for a pre-Sierra OSX build target]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #ifdef __APPLE__ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #  include <AvailabilityMacros.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #  ifndef MAC_OS_X_VERSION_10_12 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -438,7 +440,7 @@ AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #    endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #  endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-], [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+]], [[]])], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    [on_macos_pre_10_12=no ; AC_MSG_RESULT([no])], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    [on_macos_pre_10_12=yes; AC_MSG_RESULT([yes])]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -638,16 +640,16 @@ LIBS="$TOR_OPENSSL_LIBS $LIBS" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 LDFLAGS="$TOR_LDFLAGS_openssl $LDFLAGS" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 CPPFLAGS="$TOR_CPPFLAGS_openssl $CPPFLAGS" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #include <openssl/opensslv.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #if !defined(LIBRESSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x1000100fL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #error "too old" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   ], [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   ]], [[]])], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    [ : ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   [ AC_ERROR([OpenSSL is too old. We require 1.0.1 or later. You can specify a path to a newer one with --with-openssl-dir.]) ]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   [ AC_MSG_ERROR([OpenSSL is too old. We require 1.0.1 or later. You can specify a path to a newer one with --with-openssl-dir.]) ]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #include <openssl/opensslv.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #include <openssl/evp.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #if defined(OPENSSL_NO_EC) || defined(OPENSSL_NO_ECDH) || defined(OPENSSL_NO_ECDSA) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -656,9 +658,9 @@ AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #if !defined(NID_X9_62_prime256v1) || !defined(NID_secp224r1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #error "curves unavailable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   ], [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   ]], [[]])], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    [ : ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   [ AC_ERROR([OpenSSL is built without full ECC support, including curves P256 and P224. You can specify a path to one with ECC support with --with-openssl-dir.]) ]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   [ AC_MSG_ERROR([OpenSSL is built without full ECC support, including curves P256 and P224. You can specify a path to one with ECC support with --with-openssl-dir.]) ]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 AC_CHECK_MEMBERS([struct ssl_method_st.get_cipher_by_char], , , 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 [#include <openssl/ssl.h> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1463,9 +1465,9 @@ AC_CHECK_FUNC(gethostbyname_r, [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   AC_MSG_CHECKING([how many arguments gethostbyname_r() wants]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   OLD_CFLAGS=$CFLAGS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   CFLAGS="$CFLAGS $MY_CPPFLAGS $MY_THREAD_CPPFLAGS $MY_CFLAGS" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #include <netdb.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  ], [[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ]], [[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     char *cp1, *cp2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     struct hostent *h1, *h2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     int i1, i2; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1476,27 +1478,27 @@ AC_CHECK_FUNC(gethostbyname_r, [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      [Define this if gethostbyname_r takes 6 arguments]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     AC_MSG_RESULT(6) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   ], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #include <netdb.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ]], [[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       char *cp1, *cp2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       struct hostent *h1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       int i1, i2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       (void)gethostbyname_r(cp1,h1,cp2,i1,&i2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ]])], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       AC_DEFINE(HAVE_GETHOSTBYNAME_R) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       AC_DEFINE(HAVE_GETHOSTBYNAME_R_5_ARG, 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         [Define this if gethostbyname_r takes 5 arguments]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       AC_MSG_RESULT(5) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    ], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      AC_TRY_COMPILE([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #include <netdb.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     ], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     ]], [[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        char *cp1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        struct hostent *h1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        struct hostent_data hd; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        (void) gethostbyname_r(cp1,h1,&hd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     ], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     ]])], [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        AC_DEFINE(HAVE_GETHOSTBYNAME_R) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        AC_DEFINE(HAVE_GETHOSTBYNAME_R_3_ARG, 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          [Define this if gethostbyname_r takes 3 arguments]) 
			 |