fixed CHILD_SA proposal selection when not using DH exchange

This commit is contained in:
Martin Willi 2007-04-23 12:59:10 +00:00
parent 63c477244d
commit 17712ea866
1 changed files with 3 additions and 8 deletions

View File

@ -175,26 +175,21 @@ static proposal_t* select_proposal(private_child_cfg_t*this,
/* compare all stored proposals with all supplied. Stored ones are preferred. */
while (stored_iter->iterate(stored_iter, (void**)&stored))
{
stored = stored->clone(stored);
supplied_iter->reset(supplied_iter);
while (supplied_iter->iterate(supplied_iter, (void**)&supplied))
{
if (strip_dh)
{
/* remove DH groups on a copy */
stored = stored->clone(stored);
strip_dh_from_proposal(stored);
selected = stored->select(stored, supplied);
stored->destroy(stored);
}
else
{
selected = stored->select(stored, supplied);
}
selected = stored->select(stored, supplied);
if (selected)
{
break;
}
}
stored->destroy(stored);
if (selected)
{
break;