From c6a8990bc5db3d737ef594580ad10f0b36bed220 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Mon, 21 Sep 2009 15:19:39 +0200 Subject: Enforce a local address of the same family as remote address --- src/charon/sa/ike_sa.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/charon/sa/ike_sa.c b/src/charon/sa/ike_sa.c index 5a0ab5dc9..02e2fec45 100644 --- a/src/charon/sa/ike_sa.c +++ b/src/charon/sa/ike_sa.c @@ -1075,9 +1075,15 @@ static void resolve_hosts(private_ike_sa_t *this) } else { + int family = 0; + + /* use same address family as for other */ + if (!this->other_host->is_anyaddr(this->other_host)) + { + family = this->other_host->get_family(this->other_host); + } host = host_create_from_dns(this->ike_cfg->get_my_addr(this->ike_cfg), - this->my_host->get_family(this->my_host), - IKEV2_UDP_PORT); + family, IKEV2_UDP_PORT); if (host && host->is_anyaddr(host) && !this->other_host->is_anyaddr(this->other_host)) -- cgit v1.2.3