X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=modules%2Fadmin-full%2Fluasrc%2Fmodel%2Fcbi%2Fadmin_network%2Froutes.lua;h=cd9be570a08f7edc343408fbbbced64783f66e83;hp=8a6ca7b746024e6c15441a7da345fb8344ff4cbe;hb=96ec7d4d616748e3e72a97a6d51971bbb4ba5879;hpb=838fa54541f300b39f3805c5d22686b45fef5c3f;ds=sidebyside diff --git a/modules/admin-full/luasrc/model/cbi/admin_network/routes.lua b/modules/admin-full/luasrc/model/cbi/admin_network/routes.lua index 8a6ca7b74..cd9be570a 100644 --- a/modules/admin-full/luasrc/model/cbi/admin_network/routes.lua +++ b/modules/admin-full/luasrc/model/cbi/admin_network/routes.lua @@ -11,101 +11,42 @@ You may obtain a copy of the License at $Id$ ]]-- -require("luci.tools.webadmin") -m = Map("network", translate("a_n_routes"), translate("a_n_routes1")) - -if not arg or not arg[1] then - local routes = luci.sys.net.routes() - - v = m:section(Table, routes, translate("a_n_routes_kernel4")) - - net = v:option(DummyValue, "iface", translate("network")) - function net.cfgvalue(self, section) - return luci.tools.webadmin.iface_get_network(routes[section].Iface) - or routes[section].Iface - end - - target = v:option(DummyValue, "target", translate("target")) - function target.cfgvalue(self, section) - return luci.ip.Hex(routes[section].Destination, 32):string() - end - - netmask = v:option(DummyValue, "netmask", translate("netmask")) - function netmask.cfgvalue(self, section) - return luci.ip.Hex(routes[section].Mask, 32):string() - end - - gateway = v:option(DummyValue, "gateway", translate("gateway")) - function gateway.cfgvalue(self, section) - return luci.ip.Hex(routes[section].Gateway, 32):string() - end - - metric = v:option(DummyValue, "Metric", translate("metric")) - - - local routes6 = luci.sys.net.routes6() - - v = m:section(Table, routes6, translate("a_n_routes_kernel6")) - - net = v:option(DummyValue, "iface", translate("network")) - function net.cfgvalue(self, section) - return luci.tools.webadmin.iface_get_network(routes6[section].device) - or routes6[section].device - end - - target = v:option(DummyValue, "target", translate("target")) - function target.cfgvalue(self, section) - return routes6[section].dst_ip .. "/" .. routes6[section].dst_prefix - end - - gateway = v:option(DummyValue, "gateway", translate("gateway6")) - function gateway.cfgvalue(self, section) - return routes6[section].src_ip .. "/" .. routes6[section].src_prefix - end - metric = v:option(DummyValue, "Metric", translate("metric")) - function metric.cfgvalue(self, section) - return string.format( "%08X", routes6[section].metric ) - end -end +require("luci.tools.webadmin") +m = Map("network", + translate("Routes"), + translate("Routes specify over which interface and gateway a certain host or network " .. + "can be reached.")) +local routes6 = luci.sys.net.routes6() +local bit = require "bit" -s = m:section(TypedSection, "route", translate("a_n_routes_static")) +s = m:section(TypedSection, "route", translate("Static IPv4 Routes")) s.addremove = true s.anonymous = true s.template = "cbi/tblsection" -iface = s:option(ListValue, "interface", translate("interface")) +iface = s:option(ListValue, "interface", translate("Interface")) luci.tools.webadmin.cbi_add_networks(iface) -if not arg or not arg[1] then - net.titleref = iface.titleref -end - -s:option(Value, "target", translate("target"), translate("a_n_r_target1")) +s:option(Value, "target", translate("Target"), translate("Host-IP or Network")) +s:option(Value, "netmask", translate("IPv4-Netmask"), translate("if target is a network")).rmemepty = true +s:option(Value, "gateway", translate("IPv4-Gateway")) -s:option(Value, "netmask", translate("netmask"), translate("a_n_r_netmask1")).rmemepty = true +if routes6 then + s = m:section(TypedSection, "route6", translate("Static IPv6 Routes")) + s.addremove = true + s.anonymous = true -s:option(Value, "gateway", translate("gateway")) + s.template = "cbi/tblsection" + iface = s:option(ListValue, "interface", translate("Interface")) + luci.tools.webadmin.cbi_add_networks(iface) -s = m:section(TypedSection, "route6", translate("a_n_routes_static6")) -s.addremove = true -s.anonymous = true - -s.template = "cbi/tblsection" - -iface = s:option(ListValue, "interface", translate("interface")) -luci.tools.webadmin.cbi_add_networks(iface) - -if not arg or not arg[1] then - net.titleref = iface.titleref + s:option(Value, "target", translate("Target"), translate("IPv6-Address or Network (CIDR)")) + s:option(Value, "gateway", translate("IPv6-Gateway")).rmempty = true end -s:option(Value, "target", translate("target"), translate("a_n_r_target6")) - -s:option(Value, "gateway", translate("gateway6")).rmempty = true - return m