diff options
author | Tobias Brunner <tobias@strongswan.org> | 2016-04-27 10:56:54 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2016-05-06 15:56:19 +0200 |
commit | 9c01e0142070d3e93c0dc2687020acd51879f7cd (patch) | |
tree | b1b625e537ead71268718ced8b9f2cda355c030b /src | |
parent | 3f4cc30b19b0d3294bff0a6306c8c5d6fa75e705 (diff) | |
download | strongswan-9c01e0142070d3e93c0dc2687020acd51879f7cd.tar.bz2 strongswan-9c01e0142070d3e93c0dc2687020acd51879f7cd.tar.xz |
trap-manager: Allow local address to be unspecified
If there is currently no route to reach the other peer we just default
to left=%any. The local address is only really used to resolve
leftsubnet=%dynamic anyway (and perhaps for MIPv6 proxy transport mode).
Fixes #1375.
Diffstat (limited to 'src')
-rw-r--r-- | src/libcharon/sa/trap_manager.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/libcharon/sa/trap_manager.c b/src/libcharon/sa/trap_manager.c index 7eb99caae..40a0682f2 100644 --- a/src/libcharon/sa/trap_manager.c +++ b/src/libcharon/sa/trap_manager.c @@ -197,9 +197,7 @@ METHOD(trap_manager_t, install, uint32_t, me = charon->kernel->get_source_addr(charon->kernel, other, NULL); if (!me) { - DBG1(DBG_CFG, "installing trap failed, local address unknown"); - other->destroy(other); - return 0; + me = host_create_any(other->get_family(other)); } me->set_port(me, ike_cfg->get_my_port(ike_cfg)); } |