Prevent inexistence of openssl ssl_verify_cert_chain from breaking the build
authorNelson Ferreira <nelson.ferreira@ieee.org>
Wed, 16 Nov 2011 01:55:54 +0000 (20:55 -0500)
committerNelson Ferreira <nelson.ferreira@ieee.org>
Wed, 16 Nov 2011 01:55:54 +0000 (20:55 -0500)
Signed-off-by: Nelson Ferreira <nelson.ferreira@ieee.org>
m4/sxe-crypto.m4
src/openssl.c

index ac95002..69c89c9 100644 (file)
@@ -217,6 +217,9 @@ AC_DEFUN([SXE_CHECK_OPENSSL_FUNCS], [dnl
        if test x"$ac_SSLv23_server_method" = xyes; then
                AC_DEFINE([HAVE_SSLV23_SERVER_METHOD], 1, [SSLv23 server methods available])
        fi
+       if test x"$ac_ssl_verify_cert_chain" = xyes; then
+               AC_DEFINE([HAVE_SSL_VERIFY_CERT_CHAIN], 1, [ssl_verify_cert_chain available])
+       fi
        SXE_RESTORE_LIBS
 ])dnl SXE_CHECK_OPENSSL_FUNCS
 
index 29d61a6..5ad630b 100644 (file)
@@ -3990,7 +3990,11 @@ layout, or may also be an evp-pkey object.
 
        if (fun && fun(ssl_conn, ca) &&
            (conn = XSSLCONN(ssl_conn)->ssl_conn)) {
+#if HAVE_SSL_VERIFY_CERT_CHAIN
                ssl_verify_cert_chain(conn, SSL_get_peer_cert_chain(conn));
+#else
+               error("SSL certificate chain verification not supported");
+#endif
                UNGCPRO;
                return Qt;
        }