aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2013-06-13 13:17:55 +0200
committerTobias Brunner <tobias@strongswan.org>2013-06-13 13:17:55 +0200
commit44fb978169e99a7fa7c3f62a0e74157a886484b9 (patch)
tree30550a20c127eb57781a330db9a93553988f603c
parenta8c9454423b986b610258af43e3b5f2311dd69ed (diff)
downloadstrongswan-44fb978169e99a7fa7c3f62a0e74157a886484b9.tar.bz2
strongswan-44fb978169e99a7fa7c3f62a0e74157a886484b9.tar.xz
ha: Fix CHILD_SA installation in ha_dispatcher after adding initiator flag
-rw-r--r--src/libcharon/plugins/ha/ha_dispatcher.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/libcharon/plugins/ha/ha_dispatcher.c b/src/libcharon/plugins/ha/ha_dispatcher.c
index 97ed13111..1ce9d3a16 100644
--- a/src/libcharon/plugins/ha/ha_dispatcher.c
+++ b/src/libcharon/plugins/ha/ha_dispatcher.c
@@ -794,9 +794,11 @@ static void process_child_add(private_ha_dispatcher_t *this,
if (initiator)
{
if (child_sa->install(child_sa, encr_r, integ_r, inbound_spi,
- inbound_cpi, TRUE, TRUE, local_ts, remote_ts) != SUCCESS ||
+ inbound_cpi, initiator, TRUE, TRUE,
+ local_ts, remote_ts) != SUCCESS ||
child_sa->install(child_sa, encr_i, integ_i, outbound_spi,
- outbound_cpi, FALSE, TRUE, local_ts, remote_ts) != SUCCESS)
+ outbound_cpi, initiator, FALSE, TRUE,
+ local_ts, remote_ts) != SUCCESS)
{
failed = TRUE;
}
@@ -804,9 +806,11 @@ static void process_child_add(private_ha_dispatcher_t *this,
else
{
if (child_sa->install(child_sa, encr_i, integ_i, inbound_spi,
- inbound_cpi, TRUE, TRUE, local_ts, remote_ts) != SUCCESS ||
+ inbound_cpi, initiator, TRUE, TRUE,
+ local_ts, remote_ts) != SUCCESS ||
child_sa->install(child_sa, encr_r, integ_r, outbound_spi,
- outbound_cpi, FALSE, TRUE, local_ts, remote_ts) != SUCCESS)
+ outbound_cpi, initiator, FALSE, TRUE,
+ local_ts, remote_ts) != SUCCESS)
{
failed = TRUE;
}