- Information about missing or non-verified client certificate is not provided as well.
diff --git a/library/ssl_tls.c b/library/ssl_tls.c index 6f36e26..27c456a 100644 --- a/library/ssl_tls.c +++ b/library/ssl_tls.c
@@ -1280,6 +1280,7 @@ if( ssl->endpoint == SSL_IS_SERVER && ssl->authmode == SSL_VERIFY_NONE ) { + ssl->verify_result = BADCERT_SKIP_VERIFY; SSL_DEBUG_MSG( 2, ( "<= skip parse certificate" ) ); ssl->state++; return( 0 ); @@ -1306,6 +1307,7 @@ { SSL_DEBUG_MSG( 1, ( "SSLv3 client has no certificate" ) ); + ssl->verify_result = BADCERT_MISSING; if( ssl->authmode == SSL_VERIFY_OPTIONAL ) return( 0 ); else @@ -1323,6 +1325,7 @@ { SSL_DEBUG_MSG( 1, ( "TLSv1 client has no certificate" ) ); + ssl->verify_result = BADCERT_MISSING; if( ssl->authmode == SSL_VERIFY_REQUIRED ) return( POLARSSL_ERR_SSL_NO_CLIENT_CERTIFICATE ); else