ssl_pick_cert: use the public key for can_do

This is in preparation for support of external private key operations,
where there is no private key object.
This commit is contained in:
Gilles Peskine 2018-01-05 21:17:45 +01:00
parent 9eb5e9a16e
commit e198df53a0

View File

@ -707,7 +707,7 @@ static int ssl_pick_cert( mbedtls_ssl_context *ssl,
MBEDTLS_SSL_DEBUG_CRT( 3, "candidate certificate chain, certificate", MBEDTLS_SSL_DEBUG_CRT( 3, "candidate certificate chain, certificate",
cur->cert ); cur->cert );
if( ! mbedtls_pk_can_do( cur->key, pk_alg ) ) if( ! mbedtls_pk_can_do( &cur->cert->pk, pk_alg ) )
{ {
MBEDTLS_SSL_DEBUG_MSG( 3, ( "certificate mismatch: key type" ) ); MBEDTLS_SSL_DEBUG_MSG( 3, ( "certificate mismatch: key type" ) );
continue; continue;