aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/sa/ikev2
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-08-27 14:48:41 +0200
committerMartin Willi <martin@revosec.ch>2012-08-30 16:43:43 +0200
commitd55fe264d1dd33a2751aa75a6f814e153f6354d4 (patch)
tree794fa35496d7374c3f675b38a692045d880ab7d6 /src/libcharon/sa/ikev2
parentfeb8550401c85218523c007f0d52a1c9bf006342 (diff)
downloadstrongswan-d55fe264d1dd33a2751aa75a6f814e153f6354d4.tar.bz2
strongswan-d55fe264d1dd33a2751aa75a6f814e153f6354d4.tar.xz
Pass all configured pool names to attribute provider enumerator
Diffstat (limited to 'src/libcharon/sa/ikev2')
-rw-r--r--src/libcharon/sa/ikev2/tasks/ike_config.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/libcharon/sa/ikev2/tasks/ike_config.c b/src/libcharon/sa/ikev2/tasks/ike_config.c
index f3c0c2ffc..d0e0285c2 100644
--- a/src/libcharon/sa/ikev2/tasks/ike_config.c
+++ b/src/libcharon/sa/ikev2/tasks/ike_config.c
@@ -338,7 +338,7 @@ METHOD(task_t, build_r, status_t,
cp_payload_t *cp = NULL;
peer_cfg_t *config;
identification_t *id;
- linked_list_t *vips;
+ linked_list_t *vips, *pools;
char *pool;
id = this->ike_sa->get_other_eap_id(this->ike_sa);
@@ -381,8 +381,14 @@ METHOD(task_t, build_r, status_t,
{
vips->insert_last(vips, vip);
}
+ pools = linked_list_create();
+ /* TODO: use list of all pools */
+ if (pool)
+ {
+ pools->insert_last(pools, pool);
+ }
enumerator = hydra->attributes->create_responder_enumerator(
- hydra->attributes, pool, id, vips);
+ hydra->attributes, pools, id, vips);
while (enumerator->enumerate(enumerator, &type, &value))
{
if (!cp)
@@ -397,6 +403,7 @@ METHOD(task_t, build_r, status_t,
}
enumerator->destroy(enumerator);
vips->destroy(vips);
+ pools->destroy(pools);
if (cp)
{