allow starter to initiate connections simultaneously (on auto=start)

This commit is contained in:
Martin Willi
2007-08-06 07:41:19 +00:00
parent 1eef2ae8d2
commit 9ec19f13f7
2 changed files with 19 additions and 4 deletions
+7
View File
@@ -290,6 +290,13 @@ static status_t initiate(private_interface_manager_t *this,
} }
charon->ike_sa_manager->checkin(charon->ike_sa_manager, ike_sa); charon->ike_sa_manager->checkin(charon->ike_sa_manager, ike_sa);
if (callback == NULL)
{
/* don't wait for a result if no callback is specified */
charon->bus->set_listen_state(charon->bus, FALSE);
return NEED_MORE;
}
/* wait until we get a result */ /* wait until we get a result */
while (TRUE) while (TRUE)
{ {
@@ -779,11 +779,19 @@ static void stroke_initiate(stroke_msg_t *msg, FILE *out)
return; return;
} }
if (msg->output_verbosity < 0)
{
charon->interfaces->initiate(charon->interfaces, peer_cfg, child_cfg,
NULL, NULL);
}
else
{
info.out = out; info.out = out;
info.level = msg->output_verbosity; info.level = msg->output_verbosity;
charon->interfaces->initiate(charon->interfaces, peer_cfg, child_cfg, charon->interfaces->initiate(charon->interfaces, peer_cfg, child_cfg,
(interface_manager_cb_t)stroke_log, &info); (interface_manager_cb_t)stroke_log, &info);
} }
}
/** /**
* route a policy (install SPD entries) * route a policy (install SPD entries)