aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2011-02-03 10:03:36 +0100
committerMartin Willi <martin@revosec.ch>2011-02-03 10:12:16 +0100
commit4536e669a8f56a69399f6c375aba5ebe8eea376f (patch)
tree98c021fc4569819feac2242d454687621694003b
parent3891b75628fb3af040164d7b8b4a029e66b8d1a7 (diff)
downloadstrongswan-4536e669a8f56a69399f6c375aba5ebe8eea376f.tar.bz2
strongswan-4536e669a8f56a69399f6c375aba5ebe8eea376f.tar.xz
Filter out non-matching ike_cfg in backend manager, so backends don't have to
-rw-r--r--src/libcharon/config/backend_manager.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/libcharon/config/backend_manager.c b/src/libcharon/config/backend_manager.c
index 7b69eda1c..e78cb702d 100644
--- a/src/libcharon/config/backend_manager.c
+++ b/src/libcharon/config/backend_manager.c
@@ -96,6 +96,11 @@ static ike_cfg_match_t get_ike_match(ike_cfg_t *cand, host_t *me, host_t *other)
{
match += MATCH_ANY;
}
+ else
+ {
+ me_cand->destroy(me_cand);
+ return MATCH_NONE;
+ }
me_cand->destroy(me_cand);
}
else
@@ -119,6 +124,11 @@ static ike_cfg_match_t get_ike_match(ike_cfg_t *cand, host_t *me, host_t *other)
{
match += MATCH_ANY;
}
+ else
+ {
+ other_cand->destroy(other_cand);
+ return MATCH_NONE;
+ }
other_cand->destroy(other_cand);
}
else