aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2008-11-28 16:40:16 +0000
committerMartin Willi <martin@revosec.ch>2010-04-07 13:55:12 +0200
commitc81f4fa29dd86076c860a4748c3ac40ebaad6db6 (patch)
tree968271d58d27a71e9fc4ce96b60f812dcd2f22a2 /src
parent34d240a6e3c60560cb62e0a84e2cdc62bdf47ea2 (diff)
downloadstrongswan-c81f4fa29dd86076c860a4748c3ac40ebaad6db6.tar.bz2
strongswan-c81f4fa29dd86076c860a4748c3ac40ebaad6db6.tar.xz
apply peer config during rekeying
Diffstat (limited to 'src')
-rw-r--r--src/charon/plugins/ha_sync/ha_sync_dispatcher.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/charon/plugins/ha_sync/ha_sync_dispatcher.c b/src/charon/plugins/ha_sync/ha_sync_dispatcher.c
index 78c62c0f1..be6a785f1 100644
--- a/src/charon/plugins/ha_sync/ha_sync_dispatcher.c
+++ b/src/charon/plugins/ha_sync/ha_sync_dispatcher.c
@@ -139,7 +139,13 @@ static void process_ike_add(private_ha_sync_dispatcher_t *this,
{
if (old_sa)
{
- ike_sa->inherit(ike_sa, old_sa);
+ peer_cfg_t *peer_cfg = old_sa->get_peer_cfg(old_sa);
+
+ if (peer_cfg)
+ {
+ ike_sa->set_peer_cfg(ike_sa, peer_cfg);
+ ike_sa->inherit(ike_sa, old_sa);
+ }
charon->ike_sa_manager->checkin_and_destroy(
charon->ike_sa_manager, old_sa);
old_sa = NULL;