not installing a route when policy gets updated

This commit is contained in:
Martin Willi
2007-03-20 08:15:18 +00:00
parent a1e5881c42
commit 44cd2bf0fa
+8 -2
View File
@@ -1663,8 +1663,14 @@ static status_t add_policy(private_kernel_interface_t *this,
return FAILED; return FAILED;
} }
if (direction == POLICY_FWD && mode != MODE_TRANSPORT && /* install a route, if:
src->get_family(src) != AF_INET6) * - we are NOT updating a policy
* - this is a forward policy (to just get one for each child)
* - we are in tunnel mode
* - we are not using IPv6 (does not work correctly yet!)
*/
if (policy->route == NULL && direction == POLICY_FWD &&
mode != MODE_TRANSPORT && src->get_family(src) != AF_INET6)
{ {
policy->route = malloc_thing(route_entry_t); policy->route = malloc_thing(route_entry_t);
if (get_address_by_ts(this, dst_ts, &policy->route->src_ip) == SUCCESS) if (get_address_by_ts(this, dst_ts, &policy->route->src_ip) == SUCCESS)