From 2d14cb4d6c8c920b4794c82be276198b9ed21ab4 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Tue, 18 Aug 2015 17:35:39 +0200 Subject: [PATCH] ike: Use the original port when remote resolves to %any When reestablishing the IKE_SA we should still use the original port when right resolves to %any as some implementations might not like initial IKE messages on port 4500 (especially for IKEv1). --- src/libcharon/sa/ike_sa.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libcharon/sa/ike_sa.c b/src/libcharon/sa/ike_sa.c index 3bfd149f2..dcf9d5f2c 100644 --- a/src/libcharon/sa/ike_sa.c +++ b/src/libcharon/sa/ike_sa.c @@ -1240,7 +1240,9 @@ static void resolve_hosts(private_ike_sa_t *this) set_other_host(this, host); } else - { + { /* reuse the original port as some implementations might not like + * initial IKE messages on other ports */ + this->other_host->set_port(this->other_host, host->get_port(host)); host->destroy(host); } }