aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/charon/credentials/credential_manager.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/charon/credentials/credential_manager.c b/src/charon/credentials/credential_manager.c
index 805bdbdf9..ac97f73a4 100644
--- a/src/charon/credentials/credential_manager.c
+++ b/src/charon/credentials/credential_manager.c
@@ -705,10 +705,13 @@ static cert_validation_t check_crl(private_credential_manager_t *this,
while (enumerator->enumerate(enumerator, &uri))
{
current = fetch_crl(this, uri);
- best = get_better_crl(this, current, best, subject, issuer, &valid);
- if (best && valid != VALIDATION_STALE)
+ if (current)
{
- break;
+ best = get_better_crl(this, current, best, subject, issuer, &valid);
+ if (best && valid != VALIDATION_STALE)
+ {
+ break;
+ }
}
}
enumerator->destroy(enumerator);
@@ -723,10 +726,13 @@ static cert_validation_t check_crl(private_credential_manager_t *this,
while (enumerator->enumerate(enumerator, &uri))
{
current = fetch_crl(this, uri);
- best = get_better_crl(this, current, best, subject, issuer, &valid);
- if (best && valid != VALIDATION_STALE)
+ if (current)
{
- break;
+ best = get_better_crl(this, current, best, subject, issuer, &valid);
+ if (best && valid != VALIDATION_STALE)
+ {
+ break;
+ }
}
}
enumerator->destroy(enumerator);