From 629e3db294769d1fa76a2271756e8d6611fa59de Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 21 Jun 2012 17:26:25 +0000 Subject: [PATCH] Add L2TP support Signed-off-by: David Woodhouse --- .../model/cbi/admin_network/proto_l2tp.lua | 57 +++++++++++++++++++ .../ppp/luasrc/model/network/proto_ppp.lua | 6 +- 2 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 protocols/ppp/luasrc/model/cbi/admin_network/proto_l2tp.lua diff --git a/protocols/ppp/luasrc/model/cbi/admin_network/proto_l2tp.lua b/protocols/ppp/luasrc/model/cbi/admin_network/proto_l2tp.lua new file mode 100644 index 000000000..fc01203a0 --- /dev/null +++ b/protocols/ppp/luasrc/model/cbi/admin_network/proto_l2tp.lua @@ -0,0 +1,57 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2011 Jo-Philipp Wich + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 +]]-- + +local map, section, net = ... + +local server, username, password +local buffering, defaultroute, metric, peerdns, dns + + +server = section:taboption("general", Value, "server", translate("L2TP Server")) +server.datatype = "host" + + +username = section:taboption("general", Value, "username", translate("PAP/CHAP username")) + + +password = section:taboption("general", Value, "password", translate("PAP/CHAP password")) +password.password = true + + +defaultroute = section:taboption("advanced", Flag, "defaultroute", + translate("Use default gateway"), + translate("If unchecked, no default route is configured")) + +defaultroute.default = defaultroute.enabled + + +metric = section:taboption("advanced", Value, "metric", + translate("Use gateway metric")) + +metric.placeholder = "0" +metric.datatype = "uinteger" +metric:depends("defaultroute", defaultroute.enabled) + + +peerdns = section:taboption("advanced", Flag, "peerdns", + translate("Use DNS servers advertised by peer"), + translate("If unchecked, the advertised DNS server addresses are ignored")) + +peerdns.default = peerdns.enabled + + +dns = section:taboption("advanced", DynamicList, "dns", + translate("Use custom DNS servers")) + +dns:depends("peerdns", "") +dns.datatype = "ipaddr" +dns.cast = "string" diff --git a/protocols/ppp/luasrc/model/network/proto_ppp.lua b/protocols/ppp/luasrc/model/network/proto_ppp.lua index 2dded366d..049525d34 100644 --- a/protocols/ppp/luasrc/model/network/proto_ppp.lua +++ b/protocols/ppp/luasrc/model/network/proto_ppp.lua @@ -20,7 +20,7 @@ limitations under the License. local netmod = luci.model.network local _, p -for _, p in ipairs({"ppp", "pptp", "pppoe", "pppoa", "3g"}) do +for _, p in ipairs({"ppp", "pptp", "pppoe", "pppoa", "3g", "l2tp"}) do local proto = netmod:register_protocol(p) @@ -35,6 +35,8 @@ for _, p in ipairs({"ppp", "pptp", "pppoe", "pppoa", "3g"}) do return luci.i18n.translate("PPPoE") elseif p == "pppoa" then return luci.i18n.translate("PPPoATM") + elseif p == "l2tp" then + return luci.i18n.translate("L2TP") end end @@ -53,6 +55,8 @@ for _, p in ipairs({"ppp", "pptp", "pppoe", "pppoa", "3g"}) do return "ppp-mod-pppoe" elseif p == "pppoa" then return "ppp-mod-pppoa" + elseif p == "l2tp" then + return "xl2tpd" end end -- 2.25.1