Routing table parameter needs to be checked in interface_update_proto_route; a route which has an identical nexthop but a different routing table needs to be deleted and added in the correct routing table.
Signed-off-by: Hans Dedecker <dedec...@gmail.com> --- interface-ip.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/interface-ip.c b/interface-ip.c index 084688c..fb1163c 100644 --- a/interface-ip.c +++ b/interface-ip.c @@ -632,7 +632,8 @@ interface_update_proto_route(struct vlist_tree *tree, route_new = container_of(node_new, struct device_route, node); if (node_old && node_new) - keep = !memcmp(&route_old->nexthop, &route_new->nexthop, sizeof(route_old->nexthop)); + keep = !memcmp(&route_old->nexthop, &route_new->nexthop, sizeof(route_old->nexthop)) && + (route_old->table == route_new->table); if (node_old) { if (!(route_old->flags & DEVADDR_EXTERNAL) && route_old->enabled && !keep) -- 1.7.1 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel