- list_del(&route->list);
- system_del_route(iface->l3_iface->dev, route);
- if (!route->keep)
+ struct interface *iface;
+ struct device *dev;
+ struct device_route *route;
+
+ iface = container_of(tree, struct interface, proto_route);
+ dev = iface->l3_dev->dev;
+
+ if (node_old) {
+ route = container_of(node_old, struct device_route, node);
+ if (!(route->flags & DEVADDR_EXTERNAL))
+ system_del_route(dev, route);