summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--applications/luci-radvd/luasrc/model/cbi/radvd.lua18
1 files changed, 10 insertions, 8 deletions
diff --git a/applications/luci-radvd/luasrc/model/cbi/radvd.lua b/applications/luci-radvd/luasrc/model/cbi/radvd.lua
index 67ef26a2f..041decce5 100644
--- a/applications/luci-radvd/luasrc/model/cbi/radvd.lua
+++ b/applications/luci-radvd/luasrc/model/cbi/radvd.lua
@@ -36,16 +36,18 @@ function s.create(...)
end
function s.remove(self, section)
- local iface = m.uci:get("radvd", section, "interface")
- if iface then
- m.uci:delete_all("radvd", "prefix",
- function(s) return s.interface == iface end)
+ if m.uci:get("radvd", section) == "interface" then
+ local iface = m.uci:get("radvd", section, "interface")
+ if iface then
+ m.uci:delete_all("radvd", "prefix",
+ function(s) return s.interface == iface end)
- m.uci:delete_all("radvd", "route",
- function(s) return s.interface == iface end)
+ m.uci:delete_all("radvd", "route",
+ function(s) return s.interface == iface end)
- m.uci:delete_all("radvd", "rdnss",
- function(s) return s.interface == iface end)
+ m.uci:delete_all("radvd", "rdnss",
+ function(s) return s.interface == iface end)
+ end
end
return TypedSection.remove(self, section)