A new version of stunnel has been released.
Version 4.16, 2006.08.31, urgency: MEDIUM: * New features sponsored by Hewlett-Packard - A new global option to control engine: engineCtrl = <command>[:<parameter>] - A new service-level option to select engine to read private key: engineNum = <engine number> - OCSP support: ocsp = <URL> * New features - A new option to select version of SSL protocol: sslVersion = all|SSLv2|SSLv3|TLSv1 - Visual Studio vc.mak by David Gillingham dgillingham@gmail.com. - OS2 support by Paul Smedley (http://smedley.info) * Bugfixes - An ordinary user can install stunnel again. - Compilation problem with --enable-dh fixed. - Some minor compilation warnings fixed. - Service-level CRL cert store implemented. - GPF on protocol negotiations fixed. - Problem detecting addrinfo() on Tru64 fixed. - Default group is now detected by configure script. - Check for maximum number of defined services added. - OpenSSL_add_all_algorithms() added to SSL initialization. - configure script sections reordered to detect pthread library funcions. - RFC 2487 autodetection improved (thx to Hans Werner Strube). High resolution s_poll_wait() not currently supported by UCONTEXT threading. - More precise description of cert directory file names (thx to Muhammad Muquit). * Other changes - Maximum number of services increased from 64 to 256 when poll() is used.
Homepage: http://stunnel.mirt.net/ Download: ftp://stunnel.mirt.net/stunnel/
sha1 hash for stunnel-4.16.tar.gz file: 6772e0c7f26c2596564ba66978597db8cd229a72
Best regards, Mike
Stunnel 4.16 on my FreeBSD 6.1, configure has mis-checking about getaddrinfo(),
config.log says,
configure:23030: checking for getaddrinfo configure:23050: gcc -o conftest -g -O2 -Wall -Wshadow -Wcast-align -Wpointer-arith conftest.c -lz -lutil -pthread -lpthread >&5 conftest.c: In function `main': conftest.c:74: error: `NULL' undeclared (first use in this function) conftest.c:74: error: (Each undeclared identifier is reported only once conftest.c:74: error: for each function it appears in.) configure:23056: $? = 1 configure: failed program was:
... | #define HAVE_GETNAMEINFO 1 | /* end confdefs.h. */ | #include <sys/types.h> | #include <sys/socket.h> | #include <netdb.h> | int | main () | { | getaddrinfo(NULL, NULL, NULL, NULL); | ; | return 0; | } configure:23079: result: no
Yep, NULL was undefined. A trivial patch for workaround.
diff -ru stunnel-4.16.orig/configure stunnel-4.16/configure --- stunnel-4.16.orig/configure Sun Aug 20 05:28:40 2006 +++ stunnel-4.16/configure Fri Sep 1 14:44:51 2006 @@ -23035,6 +23035,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +#include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netdb.h> diff -ru stunnel-4.16.orig/configure.ac stunnel-4.16/configure.ac --- stunnel-4.16.orig/configure.ac Sun Aug 20 05:28:14 2006 +++ stunnel-4.16/configure.ac Fri Sep 1 14:43:32 2006 @@ -194,7 +194,8 @@ AC_MSG_CHECKING([for getaddrinfo]) AC_LINK_IFELSE( [AC_LANG_PROGRAM( - [[#include <sys/types.h> + [[#include <stdio.h> +#include <sys/types.h> #include <sys/socket.h> #include <netdb.h>]], [[getaddrinfo(NULL, NULL, NULL, NULL);]],)],