aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/charon/credentials/credential_manager.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/charon/credentials/credential_manager.c b/src/charon/credentials/credential_manager.c
index ac97f73a4..d8381afd4 100644
--- a/src/charon/credentials/credential_manager.c
+++ b/src/charon/credentials/credential_manager.c
@@ -918,8 +918,8 @@ static bool verify_trust_chain(private_credential_manager_t *this,
else
{
DBG1(DBG_CFG, "no issuer certificate found for \"%D\"",
- issuer->get_subject(issuer));
- current->destroy(current);
+ current->get_subject(current));
+ issuer->destroy(issuer);
break;
}
}
@@ -1006,7 +1006,8 @@ static bool trusted_enumerate(trusted_enumerator_t *this,
}
return TRUE;
}
- return FALSE;
+ this->current->destroy(this->current);
+ this->current = NULL;
}
}
/* try to verify the trust chain for each certificate found */
@@ -1024,6 +1025,7 @@ static bool trusted_enumerate(trusted_enumerator_t *this,
}
return TRUE;
}
+ this->current = NULL;
}
return FALSE;
}