提交 c53f7355 编写于 作者: V Viktor Dukhovni

Restore last-resort expired untrusted intermediate issuers

Reviewed-by: NMatt Caswell <matt@openssl.org>
上级 ef2bf0f5
......@@ -308,16 +308,17 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
static X509 *find_issuer(X509_STORE_CTX *ctx, STACK_OF(X509) *sk, X509 *x)
{
int i;
X509 *issuer, *rv = NULL;
for (i = 0; i < sk_X509_num(sk); i++) {
X509 *issuer = sk_X509_value(sk, i);
if (!ctx->check_issued(ctx, x, issuer))
continue;
if (x509_check_cert_time(ctx, issuer, -1))
return issuer;
issuer = sk_X509_value(sk, i);
if (ctx->check_issued(ctx, x, issuer)) {
rv = issuer;
if (x509_check_cert_time(ctx, rv, -1))
break;
}
}
return NULL;
return rv;
}
/* Given a possible certificate and issuer check them */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册