aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/charon/config/credentials/local_credential_store.c22
1 files changed, 17 insertions, 5 deletions
diff --git a/src/charon/config/credentials/local_credential_store.c b/src/charon/config/credentials/local_credential_store.c
index 8ef7d0d33..37d696a2b 100644
--- a/src/charon/config/credentials/local_credential_store.c
+++ b/src/charon/config/credentials/local_credential_store.c
@@ -741,15 +741,27 @@ static x509_t* add_end_certificate(private_local_credential_store_t *this, x509_
if (issuer_cert)
{
ca_info_t *ca_info = ca_info_create(NULL, issuer_cert);
- iterator_t *iterator = cert->create_crluri_iterator(cert);
- identification_t *uri;
+ {
+ iterator_t *iterator = cert->create_crluri_iterator(cert);
+ identification_t *uri;
- while (iterator->iterate(iterator, (void**)&uri))
+ while (iterator->iterate(iterator, (void**)&uri))
+ {
+ ca_info->add_crluri(ca_info, uri->get_encoding(uri));
+ }
+ iterator->destroy(iterator);
+ }
{
- ca_info->add_crluri(ca_info, uri->get_encoding(uri));
+ iterator_t *iterator = cert->create_ocspuri_iterator(cert);
+ identification_t *uri;
+
+ while (iterator->iterate(iterator, (void**)&uri))
+ {
+ ca_info->add_ocspuri(ca_info, uri->get_encoding(uri));
+ }
+ iterator->destroy(iterator);
}
- iterator->destroy(iterator);
add_ca_info(this, ca_info);
}