diff mbox

[OpenWrt-Devel,netifd] interface-ip : Don't handle external addresses and routes

Message ID 1455559162-25054-1-git-send-email-dedeckeh@gmail.com
State Accepted
Headers show

Commit Message

Hans Dedecker Feb. 15, 2016, 5:59 p.m. UTC
Prevent external routes and address being added or deleted when changing
the state of the interface ip settings

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
---
 interface-ip.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff mbox

Patch

diff --git a/interface-ip.c b/interface-ip.c
index eb585f5..26a2865 100644
--- a/interface-ip.c
+++ b/interface-ip.c
@@ -1264,6 +1264,9 @@  void interface_ip_set_enabled(struct interface_ip_settings *ip, bool enabled)
 	vlist_for_each_element(&ip->addr, addr, node) {
 		bool v6 = ((addr->flags & DEVADDR_FAMILY) == DEVADDR_INET6) ? true : false;
 
+		if (addr->flags & DEVADDR_EXTERNAL)
+			continue;
+
 		if (addr->enabled == enabled)
 			continue;
 
@@ -1289,6 +1292,9 @@  void interface_ip_set_enabled(struct interface_ip_settings *ip, bool enabled)
 	vlist_for_each_element(&ip->route, route, node) {
 		bool _enabled = enabled;
 
+		if (route->flags & DEVADDR_EXTERNAL)
+			continue;
+
 		if (!enable_route(ip, route))
 			_enabled = false;