ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/gvpe/configure.ac
(Generate patch)

Comparing gvpe/configure.ac (file contents):
Revision 1.38 by pcg, Fri Mar 18 02:32:20 2005 UTC vs.
Revision 1.68 by root, Thu Oct 6 03:25:53 2022 UTC

1dnl Process this file with autoconf to produce a configure script. 1dnl Process this file with autoconf to produce a configure script.
2 2
3AC_PREREQ(2.59) 3AC_PREREQ([2.71])
4AC_INIT 4AC_INIT([gvpe],[3.1])
5AC_CONFIG_SRCDIR([src/gvpe.C]) 5AC_CONFIG_SRCDIR([src/gvpe.C])
6AC_CANONICAL_TARGET 6AC_CANONICAL_TARGET
7AM_INIT_AUTOMAKE(gvpe, 1.8) 7AM_INIT_AUTOMAKE
8AC_CONFIG_HEADERS([config.h]) 8AC_CONFIG_HEADERS([config.h])
9AM_MAINTAINER_MODE 9AM_MAINTAINER_MODE
10 10
11AH_TOP([ 11AH_TOP([
12#ifndef CONFIG_H__ 12#ifndef CONFIG_H__
46#else 46#else
47# define CLOCALE <locale.h> 47# define CLOCALE <locale.h>
48#endif 48#endif
49]) 49])
50 50
51dnl Include the macros from the m4/ directory
52AM_ACLOCAL_INCLUDE(m4)
53
54AM_GNU_GETTEXT([external]) 51AM_GNU_GETTEXT([external])
55AM_GNU_GETTEXT_VERSION(0.11.5) 52AM_GNU_GETTEXT_VERSION(0.11.5)
56 53
57# Enable GNU extensions. 54# Enable GNU extensions.
58# Define this here, not in acconfig's @TOP@ section, since definitions 55# Define this here, not in acconfig's @TOP@ section, since definitions
59# in the latter don't make it into the configure-time tests. 56# in the latter don't make it into the configure-time tests.
60AC_DEFINE([_GNU_SOURCE], 1, [Enable GNU extenstions]) 57AC_DEFINE([_GNU_SOURCE], 1, [Enable GNU extensions])
61 58
62# do NOT define POSIX_SOURCE, sicne this clashes with many BSDs 59# do NOT define POSIX_SOURCE, sicne this clashes with many BSDs
63dnl AC_DEFINE([_POSIX_SOURCE], 1, [Enable POSIX 1003.1 extensions]) 60dnl AC_DEFINE([_POSIX_SOURCE], 1, [Enable POSIX 1003.1 extensions])
64dnl AC_DEFINE([_XOPEN_SOURCE], 500, [Enable XOPEN extensions]) 61dnl AC_DEFINE([_XOPEN_SOURCE], 500, [Enable XOPEN extensions])
65 62
66ALL_LINGUAS="" 63ALL_LINGUAS=""
67 64
68dnl Checks for programs. 65dnl Checks for programs.
69AC_PROG_CC
70AC_PROG_CPP 66AC_PROG_CPP
71AC_PROG_CXX 67AC_PROG_CXX
72AC_PROG_GCC_TRADITIONAL 68AC_PROG_GCC_TRADITIONAL
73AC_PROG_AWK 69AC_PROG_AWK
74AC_PROG_INSTALL 70AC_PROG_INSTALL
77AC_PROG_RANLIB 73AC_PROG_RANLIB
78 74
79AC_ARG_ENABLE(iftype, 75AC_ARG_ENABLE(iftype,
80 [AS_HELP_STRING(--enable-iftype=TYPE/SUBTYPE, 76 [AS_HELP_STRING(--enable-iftype=TYPE/SUBTYPE,
81 Use kernel/net device interface TYPE/SUBTYPE. 77 Use kernel/net device interface TYPE/SUBTYPE.
82 Working combinations are: 78 Working combinations are (see doc/gvpe.osdep.5.pod):
83 "native/linux" 79 "native/linux"
84 "tincd/linux" 80 "tincd/linux"
81 "tincd/netbsd"
85 "tincd/freebsd" 82 "tincd/freebsd"
86 "tincd/openbsd" 83 "tincd/openbsd"
84 "native/darwin"
87 "tincd/darwin" 85 "tincd/darwin"
88 "native/cygwin"; 86 "native/cygwin";
89 Untested combinations are: 87 Untested combinations are:
90 "tincd/netbsd" 88 "tincd/bsd"
91 "tincd/solaris" 89 "tincd/solaris"
92 "tincd/mingw" 90 "tincd/mingw"
93 "tincd/raw_socket" 91 "tincd/raw_socket"
94 "tincd/uml_socket"; 92 "tincd/uml_socket";
95 Broken combinations are: 93 Broken combinations are:
116 IFTYPE=tincd 114 IFTYPE=tincd
117 IFSUBTYPE=freebsd 115 IFSUBTYPE=freebsd
118 AC_DEFINE(HAVE_FREEBSD, 1, [FreeBSD]) 116 AC_DEFINE(HAVE_FREEBSD, 1, [FreeBSD])
119 ;; 117 ;;
120 *darwin*) 118 *darwin*)
121 IFTYPE=tincd 119 IFTYPE=native
122 IFSUBTYPE=darwin 120 IFSUBTYPE=darwin
123 AC_DEFINE(HAVE_DARWIN, 1, [Darwin (MacOS/X)]) 121 AC_DEFINE(HAVE_DARWIN, 1, [Darwin (MacOS/X)])
124 ;; 122 ;;
125 *solaris*) 123 *solaris*)
126 IFTYPE=tincd 124 IFTYPE=tincd
156AC_CACHE_SAVE 154AC_CACHE_SAVE
157 155
158dnl Checks for libraries. 156dnl Checks for libraries.
159 157
160AC_LANG(C++) 158AC_LANG(C++)
161AC_CHECK_HEADERS(ext/hash_map clocale) 159AC_CHECK_HEADERS(tr1/unordered_map ext/hash_map clocale)
162 160
163dnl Checks for header files. 161dnl Checks for header files.
164AC_CHECK_HEADERS([fcntl.h inttypes.h limits.h malloc.h stdint.h strings.h syslog.h unistd.h \ 162AC_CHECK_HEADERS([fcntl.h inttypes.h limits.h malloc.h stdint.h strings.h syslog.h unistd.h \
165 sys/file.h sys/ioctl.h sys/param.h sys/time.h netinet/in_systm.h sys/cygwin.h \ 163 sys/file.h sys/ioctl.h sys/param.h sys/time.h netinet/in_systm.h sys/cygwin.h \
166 sys/mman.h netinet/in.h]) 164 sys/mman.h netinet/in.h])
181 179
182dnl Checks for typedefs, structures, and compiler characteristics. 180dnl Checks for typedefs, structures, and compiler characteristics.
183AC_C_CONST 181AC_C_CONST
184AC_TYPE_PID_T 182AC_TYPE_PID_T
185AC_TYPE_SIZE_T 183AC_TYPE_SIZE_T
186AC_HEADER_TIME 184AC_CHECK_HEADERS_ONCE([sys/time.h])
185
187AC_STRUCT_TM 186AC_STRUCT_TM
188 187
189AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t, 188AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
190[ 189[
191 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h> 190 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
203]) 202])
204if test $ac_cv_struct_addrinfo = yes; then 203if test $ac_cv_struct_addrinfo = yes; then
205 AC_DEFINE(HAVE_STRUCT_ADDRINFO, 1, [struct addrinfo available]) 204 AC_DEFINE(HAVE_STRUCT_ADDRINFO, 1, [struct addrinfo available])
206fi 205fi
207 206
208dnl Checks for library functions.
209AC_TYPE_SIGNAL
210
211AC_LANG_PUSH(C) 207AC_LANG_PUSH(C)
212
213AC_HEADER_STDC
214 208
215dnl argl, could somebody catapult darwin into the 21st century??? 209dnl argl, could somebody catapult darwin into the 21st century???
216AC_CHECK_FUNCS(asprintf daemon get_current_dir_name putenv select strerror strsignal strtol unsetenv mlockall) 210AC_CHECK_FUNCS(asprintf daemon get_current_dir_name putenv select strerror strsignal strtol unsetenv mlockall)
217 211
218AC_FUNC_ALLOCA 212AC_FUNC_ALLOCA
224]) 218])
225AC_CHECK_FUNC(gethostbyname, [], [ 219AC_CHECK_FUNC(gethostbyname, [], [
226 AC_CHECK_LIB(nsl, gethostbyname) 220 AC_CHECK_LIB(nsl, gethostbyname)
227]) 221])
228 222
223dnl libev support
224m4_include([libev/libev.m4])
225
229AC_LANG_POP 226AC_LANG_POP
230 227
231dnl AC_CHECK_FUNCS([freeaddrinfo gai_strerror getaddrinfo getnameinfo]) 228dnl AC_CHECK_FUNCS([freeaddrinfo gai_strerror getaddrinfo getnameinfo])
232 229
233AC_CACHE_SAVE 230AC_CACHE_SAVE
234 231
235dnl These are defined in files in m4/ 232dnl These are defined in files in m4/
236tinc_TUNTAP 233tinc_TUNTAP
237 234
238tinc_OPENSSL 235PKG_CHECK_MODULES([LIBCRYPTO], [libcrypto >= 1])
239if test "x$openssl_include" != x; then 236
240 CXXFLAGS="$CXXFLAGS -I$openssl_include" 237AC_ARG_ENABLE(threads,
238 [AS_HELP_STRING(--enable-threads,try to use threads for long-running asynchronous operations (default enabled).)],
239 [try_threads=$enableval],
240 [try_threads=yes]
241)
242
243if test "x$try_threads" = xyes; then
244 AC_CHECK_HEADER(pthread.h,[
245 LIBS="$LIBS -lpthread"
246 AC_COMPILE_IFELSE(
247 [AC_LANG_PROGRAM([#include <pthread.h>], [pthread_t id; pthread_create (&id, 0, 0, 0);])],
248 [AC_DEFINE_UNQUOTED(ENABLE_PTHREADS, 1, [POSIX thread support.])]
249 )
250 ])
241fi 251fi
242dnl tinc_ZLIB
243 252
244AC_ARG_ENABLE(static-daemon, 253AC_ARG_ENABLE(static-daemon,
245 [AS_HELP_STRING(--enable-static-daemon,enable statically linked daemon.)], 254 [AS_HELP_STRING(--enable-static-daemon,enable statically linked daemon.)],
246 [LDFLAGS_DAEMON=-static] 255 [LDFLAGS_DAEMON=-static]
247) 256)
248AC_SUBST(LDFLAGS_DAEMON) 257AC_SUBST(LDFLAGS_DAEMON)
249 258
250AC_ARG_ENABLE(rohc, 259dnl AC_ARG_ENABLE(rohc,
251 [AS_HELP_STRING(--enable-rohc,enable robust header compression (rfc3095).)], 260dnl [AS_HELP_STRING(--enable-rohc,enable robust header compression (rfc3095).)],
252 [ 261dnl [
253 echo 262dnl echo
254 echo "**********************************************************************" 263dnl echo "**********************************************************************"
255 echo "**********************************************************************" 264dnl echo "**********************************************************************"
256 echo "**** --enable-rohc is highly experimental, do not use ****************" 265dnl echo "**** --enable-rohc is highly experimental, do not use ****************"
257 echo "**********************************************************************" 266dnl echo "**********************************************************************"
258 echo "**********************************************************************" 267dnl echo "**********************************************************************"
259 echo 268dnl echo
260 rohc=true 269dnl rohc=true
261 AC_DEFINE_UNQUOTED(ENABLE_ROHC, 1, [ROHC support]) 270dnl AC_DEFINE_UNQUOTED(ENABLE_ROHC, 1, [ROHC support])
262 ] 271dnl ]
263) 272dnl )
264 273
265AM_CONDITIONAL(ROHC, test x$rohc = xtrue) 274AM_CONDITIONAL(ROHC, test x$rohc = xtrue)
266 275
276dnl AC_ARG_ENABLE(bridging,
277dnl [AS_HELP_STRING(--enable-bridging,enable bridging support (default disabled).)],
278dnl AC_DEFINE_UNQUOTED(ENABLE_BRIDGING, 1, [bridging support.])
279dnl )
280
281ICMP=1
267AC_ARG_ENABLE(icmp, 282AC_ARG_ENABLE(icmp,
268 [AS_HELP_STRING(--enable-icmp,enable icmp protocol support (default disabled).)], 283 [AS_HELP_STRING(--disable-icmp,enable icmp protocol support (default enabled).)],
284 if test "x$enableval" = xno; then
285 ICMP=0
286 fi
287)
288if test "x$ICMP" = x1; then
269 AC_DEFINE_UNQUOTED(ENABLE_ICMP, 1, [ICMP protocol support.]) 289 AC_DEFINE_UNQUOTED(ENABLE_ICMP, 1, [ICMP protocol support.])
270) 290fi
271 291
292TCP=1
272AC_ARG_ENABLE(tcp, 293AC_ARG_ENABLE(tcp,
273 [AS_HELP_STRING(--enable-tcp,enable tcp protocol support (default disabled).)], 294 [AS_HELP_STRING(--disable-tcp,enable tcp protocol support (default enabled).)],
295 if test "x$enableval" = xno; then
296 TCP=0
297 fi
298)
299if test "x$TCP" = x1; then
274 AC_DEFINE_UNQUOTED(ENABLE_TCP, 1, [TCP protocol support.]) 300 AC_DEFINE_UNQUOTED(ENABLE_TCP, 1, [TCP protocol support.])
301fi
302
303HTTP=1
304AC_ARG_ENABLE(http-proxy,
305 [AS_HELP_STRING(--disable-http-proxy,enable http proxy connect support (default enabled).)],
306 if test "x$enableval" = xno; then
307 HTTP=0
308 fi
275) 309)
310if test "x$HTTP" = x1; then
311 AC_DEFINE_UNQUOTED(ENABLE_HTTP_PROXY, 1, [http proxy connect support.])
312fi
276 313
277AC_ARG_ENABLE(dns, 314AC_ARG_ENABLE(dns,
278 [AS_HELP_STRING(--enable-dns,enable dns tunnel protocol support (DOES NOT WORK).)], 315 [AS_HELP_STRING(--enable-dns,enable dns tunnel protocol support (default disabled).)],
279 [ 316 [
280 AC_CHECK_HEADER(gmp.h,,[AC_MSG_ERROR([gmp.h not found, required for --enable-dns])]) 317 AC_CHECK_HEADER(gmp.h,,[AC_MSG_ERROR([gmp.h not found, required for --enable-dns])])
281 AC_CHECK_LIB(gmp,main,,[AC_MSG_ERROR([libgmp not found, required for --enable-dns])]) 318 AC_CHECK_LIB(gmp,main,,[AC_MSG_ERROR([libgmp not found, required for --enable-dns])])
282 319
283 AC_DEFINE_UNQUOTED(ENABLE_DNS, 1, [DNS tunnel protocol support.]) 320 AC_DEFINE_UNQUOTED(ENABLE_DNS, 1, [DNS tunnel protocol support.])
284 ] 321 ]
285) 322)
286 323
287AC_ARG_ENABLE(http-proxy, 324RSA=3072
288 [AS_HELP_STRING(--enable-http-proxy,enable http proxy connect support (default disabled).)], 325AC_ARG_ENABLE(rsa-length,
289 AC_DEFINE_UNQUOTED(ENABLE_HTTP_PROXY, 1, [http proxy connect support.]) 326 [AS_HELP_STRING(--enable-rsa-length=BITS,[
327 use BITS rsa keys (default 3072). Allowed values are 2048-10240.])],
328 RSA=$enableval
290) 329)
330AC_DEFINE_UNQUOTED(RSABITS, $RSA, [Size of RSA keys.])
291 331
292HMAC=12 332HMACSIZE=12
293AC_ARG_ENABLE(hmac-length, 333AC_ARG_ENABLE(hmac-length,
294 [AS_HELP_STRING(--enable-hmac-length=BYTES,[ 334 [AS_HELP_STRING(--enable-hmac-length=BYTES,[
295 use a hmac of length BYTES bytes (default 12). Allowed values are 4, 8, 12, 16.])], 335 use a hmac of length BYTES bytes (default 12). Allowed values are 4, 8, 12, 16.])],
296 HMAC=$enableval 336 HMACSIZE=$enableval
297) 337)
298AC_DEFINE_UNQUOTED(HMACLENGTH, $HMAC, [Size of HMAC in each packet in bytes.]) 338AC_DEFINE_UNQUOTED(HMACLENGTH, $HMACSIZE, [Size of HMAC in each packet in bytes.])
299
300RAND=8
301AC_ARG_ENABLE(rand-length,
302 [AS_HELP_STRING(--enable-rand-length=BYTES,
303 [use BYTES bytes of extra randomness (default 8). Allowed values are 0, 4, 8.])],
304 RAND=$enableval
305)
306AC_DEFINE_UNQUOTED(RAND_SIZE, $RAND, [Add this many bytes of randomness to each packet.])
307 339
308MTU=1500 340MTU=1500
309AC_ARG_ENABLE(mtu, 341AC_ARG_ENABLE(max-mtu,
310 [AS_HELP_STRING(--enable-max-mtu=BYTES,enable mtu sizes upto BYTES bytes (default 1500). Use 9100 for jumbogram support.)], 342 [AS_HELP_STRING(--enable-max-mtu=BYTES,enable mtu sizes upto BYTES bytes (default 1500). Use 9100 for jumbogram support.)],
311 MTU=$enableval 343 MTU=$enableval
312) 344)
313AC_DEFINE_UNQUOTED(MAX_MTU, $MTU + 14, [Maximum MTU supported.]) 345AC_DEFINE_UNQUOTED(MAX_MTU, ($MTU + 14), [Maximum MTU supported.])
314 346
315COMPRESS=1 347COMPRESS=1
316AC_ARG_ENABLE(compression, 348AC_ARG_ENABLE(compression,
317 [AS_HELP_STRING(--disable-compression,Disable compression support.)], 349 [AS_HELP_STRING(--disable-compression,Disable compression support.)],
318 if test "x$enableval" = xno; then 350 if test "x$enableval" = xno; then
319 COMPRESS=0 351 COMPRESS=0
320 fi 352 fi
321) 353)
322AC_DEFINE_UNQUOTED(ENABLE_COMPRESSION, $COMPRESS, [Enable compression support.]) 354AC_DEFINE_UNQUOTED(ENABLE_COMPRESSION, $COMPRESS, [Enable compression support.])
323 355
324CIPHER=bf_cbc 356CIPHER=aes_128_ctr
325AC_ARG_ENABLE(cipher, 357AC_ARG_ENABLE(cipher,
326 [AS_HELP_STRING(--enable-cipher,[ 358 [AS_HELP_STRING(--enable-cipher=CIPHER,[
327 Select the symmetric cipher (default "bf"). 359 Select the symmetric cipher (default "aes-128").
328 Must be one of "bf" (blowfish), "aes-128" (rijndael), "aes-192" or "aes-256".])], 360 Must be one of "aes-128" (rijndael), "aes-192", or "aes-256".])],
329 if test "x$enableval" = xbf ; then CIPHER=bf_cbc ; fi 361 #if test "x$enableval" = xbf ; then CIPHER=bf_ctr ; fi
330 if test "x$enableval" = xaes-128; then CIPHER=aes_128_cbc; fi 362 if test "x$enableval" = xaes-128 ; then CIPHER=aes_128_ctr ; fi
331 if test "x$enableval" = xaes-192; then CIPHER=aes_192_cbc; fi 363 if test "x$enableval" = xaes-192 ; then CIPHER=aes_192_ctr ; fi
332 if test "x$enableval" = xaes-256; then CIPHER=aes_256_cbc; fi 364 if test "x$enableval" = xaes-256 ; then CIPHER=aes_256_ctr ; fi
365 #if test "x$enableval" = xcamellia-128; then CIPHER=camellia_128_ctr; fi
366 #if test "x$enableval" = xcamellia-256; then CIPHER=camellia_256_ctr; fi
333) 367)
334AC_DEFINE_UNQUOTED(ENABLE_CIPHER, EVP_${CIPHER}, [Select the symmetric cipher to use.]) 368AC_DEFINE_UNQUOTED(ENABLE_CIPHER, EVP_${CIPHER}, [Select the symmetric cipher to use.])
335 369
336DIGEST=sha1 370HMAC=sha1
337AC_ARG_ENABLE(digest, 371AC_ARG_ENABLE(hmac-digest,
338 [AS_HELP_STRING(--enable-digest,[ 372 [AS_HELP_STRING(--enable-hmac-digest=HMAC,[
339 Select the digets algorithm to use (default "sha1"). Must be one of 373 Select the HMAC digest algorithm to use (default "sha1"). Must be one of
340 "sha1", "ripemd160", "md5" or "md4" (insecure).])], 374 "sha512", "sha256", "sha1", "ripemd160", "whirlpool".])],
375 if test "x$enableval" = xwhirlpool; then HMAC=whirlpool; fi
376 if test "x$enableval" = xsha512 ; then HMAC=sha512 ; fi
377 if test "x$enableval" = xsha256 ; then HMAC=sha256 ; fi
341 if test "x$enableval" = xsha1 ; then DIGEST=sha1 ; fi 378 if test "x$enableval" = xsha1 ; then HMAC=sha1 ; fi
342 if test "x$enableval" = xripemd160; then DIGEST=ripemd160; fi 379 if test "x$enableval" = xripemd160; then HMAC=ripemd160; fi
380)
381AC_DEFINE_UNQUOTED(ENABLE_HMAC, EVP_${HMAC}, [Select the HMAC digest algorithm to use.])
382
383AUTH=sha512
384AC_ARG_ENABLE(auth-digest,
385 [AS_HELP_STRING(--enable-auth-digest=DIGEST,[
386 Select the hmac algorithm to use (default "sha512"). Must be one of
387 "sha512", "sha256", "whirlpool".])],
388 if test "x$enableval" = xwhirlpool; then AUTH=whirlpool; fi
343 if test "x$enableval" = xmd5 ; then DIGEST=md5 ; fi 389 if test "x$enableval" = xsha512 ; then AUTH=sha512 ; fi
344 if test "x$enableval" = xmd4 ; then DIGEST=md4 ; fi 390 if test "x$enableval" = xsha256 ; then AUTH=sha256 ; fi
345) 391)
346AC_DEFINE_UNQUOTED(ENABLE_DIGEST, EVP_${DIGEST}, [Select the digest algorithm to use.]) 392AC_DEFINE_UNQUOTED(ENABLE_AUTH, EVP_${AUTH}, [Select the auth digest algorithm to use.])
347 393
348if $CXX -v --help 2>&1 | grep -q fno-rtti; then 394if $CXX -v --help 2>&1 | grep -q fno-rtti; then
349 CXXFLAGS="$CXXFLAGS -fno-rtti" 395 CXXFLAGS="$CXXFLAGS -fno-rtti"
350fi 396fi
351 397
352if $CXX -v --help 2>&1 | grep -q fexceptions; then 398#if $CXX -v --help 2>&1 | grep -q fexceptions; then
353 CXXFLAGS="$CXXFLAGS -fno-exceptions" 399# CXXFLAGS="$CXXFLAGS -fno-exceptions"
354fi 400#fi
401
402LIBS="$EXTRA_LIBS $LIBS"
355 403
356dnl if $CXX -v --help 2>&1 | grep -q ffunction-sections; then 404dnl if $CXX -v --help 2>&1 | grep -q ffunction-sections; then
357dnl CXXFLAGS="$CXXFLAGS -ffunction-sections" 405dnl CXXFLAGS="$CXXFLAGS -ffunction-sections"
358dnl fi 406dnl fi
359dnl 407dnl
360dnl if $LD -v --help 2>&1 | grep -q gc-sections; then 408dnl if $LD -v --help 2>&1 | grep -q gc-sections; then
361dnl LDFLAGS="$LDFLAGS -Wl,--gc-sections" 409dnl LDFLAGS="$LDFLAGS -Wl,--gc-sections"
362dnl fi 410dnl fi
363 411
364AC_CONFIG_COMMANDS_POST([ 412AC_SUBST(AM_CPPFLAGS)
413
414AC_CONFIG_FILES([Makefile po/Makefile.in
415src/Makefile
416doc/Makefile
417lib/Makefile
418m4/Makefile
419])
420AC_OUTPUT
365 421
366echo 422echo
367echo "***" 423echo "***"
368echo "*** Configuration Summary" 424echo "*** Configuration Summary"
369echo "***" 425echo "***"
370echo "*** Kernel Iface: $IFTYPE/$IFSUBTYPE" 426echo "*** Kernel Iface: $IFTYPE/$IFSUBTYPE"
427echo "*** RSA size: $RSA"
371echo "*** Cipher used: $CIPHER" 428echo "*** Cipher used: $CIPHER"
372echo "*** Digest used: $DIGEST" 429echo "*** Digest used: $DIGEST"
430echo "*** Authdigest: $AUTH"
373echo "*** HMAC length: $HMAC" 431echo "*** HMAC length: $HMAC"
374echo "*** RAND used: $RAND"
375echo "*** Max. MTU: $MTU" 432echo "*** Max. MTU: $MTU"
376echo "*** Compression: $COMPRESS"
377 433
378if test "x$DIGEST" = xmd4; then
379echo "***" 434echo "***"
380echo "*** WARNING: The digest you have chosen ($DIGEST) is known to be insecure" 435echo "*** Enable options:"
381fi 436grep ENABLE_ config.h | sed -e 's/^/*** /'
382 437
383if test "$HMAC" -lt 12; then 438if test "$HMACSIZE" -lt 12; then
384echo "***" 439echo "***"
385echo "*** WARNING: The hmac length you have chosen ($HMAC) is probably insecure" 440echo "*** WARNING: The hmac length you have chosen ($HMACSIZE) is quite insecure"
386fi 441fi
387 442
388if test "$RAND" -lt 8; then
389echo "***" 443echo "***"
390echo "*** WARNING: The random prefix you have chosen ($RAND) is probably insecure"
391fi
392
393echo "***"
394
395echo 444echo
396 445
397]) 446if pkg-config --exists 'libcrypto >= 1.1 libcrypto < 2.0'; then
447 cat <<EOF
448@<:@33m
449***
450*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING
451***
452*** You seem to configure gvpe with OpenSSL 1.1 or newer.
453*** While this probably compiles, please note that this is not only
454*** unsupported, but also discouraged.
455***
456*** It is recommended to use either OpenSSL 1.0, as long as that is still
457*** supported, or LibreSSL (https://www.libressl.org/).
458***
459*** This is not a political issue - while porting GVPE to the newer
460*** OpenSSL 1.1 API, I encountered two incompatible API changes that were
461*** not documented, were not caught while compiling but caused security
462*** issues. When reported, the reaction of the OpenSSL developers was to
463*** update the documentation.
464***
465*** As a result, I lost all confidence in the ability and desire of
466*** OpenSSL developers to create a safe API, and would highly recommend
467*** switching to LibreSSL which explicitly avoids such braking changes.
468***
469*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING
470***
471*** Again, do not use OpenSSL 1.1 and complain if stuff breaks.
472*** You have been warned, but your choice is respected.
473***
474@<:@0m
398 475
399AC_SUBST(INCLUDES) 476EOF
477fi
400 478
401AC_CONFIG_FILES([Makefile po/Makefile.in 479
402src/Makefile
403doc/Makefile
404lib/Makefile
405m4/Makefile
406])
407AC_OUTPUT

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines