openssl: Properly handle flags in key usage extension

This commit is contained in:
Tobias Brunner
2017-06-14 10:03:13 +02:00
parent dad4f6a178
commit e793d65acd
@@ -686,15 +686,13 @@ static bool parse_keyUsage_ext(private_openssl_x509_t *this,
{
flags |= usage->data[1] << 8;
}
switch (flags)
if (flags & X509v3_KU_CRL_SIGN)
{
case X509v3_KU_CRL_SIGN:
this->flags |= X509_CRL_SIGN;
break;
case X509v3_KU_KEY_CERT_SIGN:
/* we use the caBasicContraint, MUST be set */
default:
break;
this->flags |= X509_CRL_SIGN;
}
if (flags & X509v3_KU_KEY_CERT_SIGN)
{
/* we use the caBasicContraint, MUST be set */
}
}
ASN1_BIT_STRING_free(usage);