OpenSSL: Fix ca_cert_verify for TPM
authorChristopher Wiley <wiley@chromium.org>
Sat, 4 Aug 2012 21:36:08 +0000 (00:36 +0300)
committerJouni Malinen <j@w1.fi>
Sat, 4 Aug 2012 21:36:08 +0000 (00:36 +0300)
This bit is set in the code path that handles keys and certs from places
other than OpenSSL authentication engines. Setting this bit causes
authentication to fail when the server provides certificates that don't
match the client certificate authority.

src/crypto/tls_openssl.c

index 3bbd457..860adee 100644 (file)
@@ -1922,6 +1922,8 @@ static int tls_connection_engine_ca_cert(void *_ssl_ctx,
        wpa_printf(MSG_DEBUG, "OpenSSL: %s - added CA certificate from engine "
                   "to certificate store", __func__);
        SSL_set_verify(conn->ssl, SSL_VERIFY_PEER, tls_verify_cb);
+       conn->ca_cert_verify = 1;
+
        return 0;
 
 #else /* OPENSSL_NO_ENGINE */