aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/kernel/kernel_interface.c
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2007-05-22 07:47:16 +0000
committerMartin Willi <martin@strongswan.org>2007-05-22 07:47:16 +0000
commit905438735ad2b9b2b959ce0693e28374b393b28e (patch)
tree6b652cab701a452e27deb96b40b7a3958b899ada /src/charon/kernel/kernel_interface.c
parent3eb963007124506d9916d8622fe19dc728ff6e99 (diff)
downloadstrongswan-905438735ad2b9b2b959ce0693e28374b393b28e.tar.bz2
strongswan-905438735ad2b9b2b959ce0693e28374b393b28e.tar.xz
using local address as gateway in installed routes
Diffstat (limited to 'src/charon/kernel/kernel_interface.c')
-rw-r--r--src/charon/kernel/kernel_interface.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/charon/kernel/kernel_interface.c b/src/charon/kernel/kernel_interface.c
index 4aabded6f..42886b210 100644
--- a/src/charon/kernel/kernel_interface.c
+++ b/src/charon/kernel/kernel_interface.c
@@ -1697,8 +1697,7 @@ static status_t add_policy(private_kernel_interface_t *this,
policy->route = malloc_thing(route_entry_t);
if (get_address_by_ts(this, dst_ts, &policy->route->src_ip) == SUCCESS)
{
- policy->route->gateway = (direction == POLICY_IN) ?
- dst->clone(dst) : src->clone(src);
+ policy->route->gateway = dst->clone(dst);
policy->route->if_index = get_interface_index(this, dst);
policy->route->dst_net = chunk_alloc(policy->sel.family == AF_INET ? 4 : 16);
memcpy(policy->route->dst_net.ptr, &policy->sel.saddr, policy->route->dst_net.len);