Merge pull request #385 from oneru/fwknop-qr
authorJo-Philipp Wich <jow@openwrt.org>
Wed, 20 May 2015 18:26:59 +0000 (20:26 +0200)
committerJo-Philipp Wich <jow@openwrt.org>
Wed, 20 May 2015 18:26:59 +0000 (20:26 +0200)
luci-app-fwknopd: Add qr code support

13 files changed:
applications/luci-app-ddns/Makefile
applications/luci-app-ddns/luasrc/controller/ddns.lua
applications/luci-app-ddns/luasrc/model/cbi/ddns/detail.lua
applications/luci-app-ddns/po/de/ddns.po
applications/luci-app-ddns/po/templates/ddns.pot
protocols/luci-proto-3g/luasrc/model/cbi/admin_network/proto_3g.lua
protocols/luci-proto-ipv6/luasrc/model/cbi/admin_network/proto_464xlat.lua [new file with mode: 0644]
protocols/luci-proto-ipv6/luasrc/model/cbi/admin_network/proto_map.lua [new file with mode: 0644]
protocols/luci-proto-ipv6/luasrc/model/network/proto_4x6.lua
protocols/luci-proto-ppp/luasrc/model/cbi/admin_network/proto_l2tp.lua
protocols/luci-proto-ppp/luasrc/model/cbi/admin_network/proto_ppp.lua
protocols/luci-proto-ppp/luasrc/model/cbi/admin_network/proto_pppoa.lua
protocols/luci-proto-ppp/luasrc/model/cbi/admin_network/proto_pppoe.lua

index 1bffcaa..a2d2ae9 100644 (file)
@@ -10,7 +10,7 @@ PKG_NAME:=luci-app-ddns
 
 # Version == major.minor.patch
 # increase on new functionality (minor) or patches (patch)
-PKG_VERSION:=2.2.2
+PKG_VERSION:=2.2.3
 
 # Release == build
 # increase on changes of translation files
index 0b82021..946dfef 100644 (file)
@@ -15,7 +15,7 @@ local SYS  = require "luci.sys"
 local DDNS = require "luci.tools.ddns"         -- ddns multiused functions
 local UTIL = require "luci.util"
 
-DDNS_MIN = "2.2.0-1"   -- minimum version of service required
+DDNS_MIN = "2.4.2-1"   -- minimum version of service required
 
 function index()
        local nxfs      = require "nixio.fs"            -- global definitions not available
index 40a66ef..27f9a9f 100644 (file)
@@ -1156,11 +1156,13 @@ function fu.write(self, section, value)
 end
 
 -- retry_count (NEW) -- ########################################################
-rc = ns:taboption("timer", Value, "retry_count",
-       translate("Error Retry Counter"),
-       translate("On Error the script will stop execution after given number of retrys") )
-rc.default = 5
-rc.rmempty = false     -- validate ourselves for translatable error messages
+rc = ns:taboption("timer", Value, "retry_count")
+rc.title       = translate("Error Retry Counter")
+rc.description = translate("On Error the script will stop execution after given number of retrys")
+               .. "<br />"
+               .. translate("The default setting of '0' will retry infinite.")
+rc.default     = 0
+rc.rmempty     = false -- validate ourselves for translatable error messages
 function rc.validate(self, value)
        if not DTYP.uinteger(value) then
                return nil, err_tab_timer(self) .. translate("minimum value '0'")
index f6e0d5e..6ffde5d 100644 (file)
@@ -1,15 +1,15 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: luci-app-ddns\n"
-"POT-Creation-Date: 2015-02-08 18:30+0100\n"
-"PO-Revision-Date: 2015-02-08 18:36+0100\n"
+"POT-Creation-Date: 2015-05-08 21:29+0100\n"
+"PO-Revision-Date: 2015-05-08 21:47+0100\n"
 "Last-Translator: Christian Schoenebeck <christian.schoenebeck@gmail.com>\n"
 "Language-Team: \n"
 "Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.5.4\n"
+"X-Generator: Poedit 1.7.5\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "X-Poedit-SourceCharset: UTF-8\n"
 "X-Poedit-Basepath: .\n"
@@ -452,7 +452,7 @@ msgstr ""
 "wiederholen"
 
 msgid "On Error the script will stop execution after given number of retrys"
-msgstr "Das Skript wird nach der gegebener Anzahlt von Fehlversuchen beendet"
+msgstr "Das Skript wird nach der gegebenen Anzahl von Fehlversuchen beendet."
 
 msgid "Overview"
 msgstr "Übersicht"
@@ -527,6 +527,9 @@ msgstr ""
 "Die installierte Software 'ddns-scripts' unterstützt nicht alle verfügbaren "
 "Optionen."
 
+msgid "The default setting of '0' will retry infinite."
+msgstr "Der Standard-Wert von '0' wird es endlosen erneut versuchen."
+
 msgid "There is no service configured."
 msgstr "Kein Dienst konfiguriert"
 
index 6e4f2fe..3538680 100644 (file)
@@ -444,6 +444,9 @@ msgid ""
 "settings."
 msgstr ""
 
+msgid "The default setting of '0' will retry infinite."
+msgstr ""
+
 msgid "There is no service configured."
 msgstr ""
 
index 59bf2f6..1b2e23c 100644 (file)
@@ -47,10 +47,11 @@ dialnumber.placeholder = "*99***1#"
 
 if luci.model.network:has_ipv6() then
 
-       ipv6 = section:taboption("advanced", Flag, "ipv6",
-               translate("Enable IPv6 negotiation on the PPP link"))
-
-       ipv6.default = ipv6.disabled
+       ipv6 = section:taboption("advanced", ListValue, "ipv6")
+       ipv6:value("auto", translate("Automatic"))
+       ipv6:value("0", translate("Disabled"))
+       ipv6:value("1", translate("Manual"))
+       ipv6.default = "auto"
 
 end
 
diff --git a/protocols/luci-proto-ipv6/luasrc/model/cbi/admin_network/proto_464xlat.lua b/protocols/luci-proto-ipv6/luasrc/model/cbi/admin_network/proto_464xlat.lua
new file mode 100644 (file)
index 0000000..5a37582
--- /dev/null
@@ -0,0 +1,33 @@
+-- Copyright 2011 Jo-Philipp Wich <jow@openwrt.org>
+-- Copyright 2013 Steven Barth <steven@midlink.org>
+-- Licensed to the public under the Apache License 2.0.
+
+local map, section, net = ...
+local tunlink, defaultroute, metric, mtu
+
+section:taboption("general", Value, "ip6prefix",
+       translate("NAT64 Prefix"), translate("Leave empty to autodetect"))
+
+tunlink = section:taboption("advanced", DynamicList, "tunlink", translate("Tunnel Link"))
+tunlink.template = "cbi/network_netlist"
+tunlink.nocreate = true
+
+
+defaultroute = section:taboption("advanced", Flag, "defaultroute",
+       translate("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)
+
+
+mtu = section:taboption("advanced", Value, "mtu", translate("Use MTU on tunnel interface"))
+mtu.placeholder = "1280"
+mtu.datatype    = "max(9200)"
diff --git a/protocols/luci-proto-ipv6/luasrc/model/cbi/admin_network/proto_map.lua b/protocols/luci-proto-ipv6/luasrc/model/cbi/admin_network/proto_map.lua
new file mode 100644 (file)
index 0000000..2f8108e
--- /dev/null
@@ -0,0 +1,88 @@
+-- Copyright 2011 Jo-Philipp Wich <jow@openwrt.org>
+-- Copyright 2013 Steven Barth <steven@midlink.org>
+-- Licensed to the public under the Apache License 2.0.
+
+local map, section, net = ...
+
+local peeraddr, ip6addr
+local tunlink, defaultroute, metric, ttl, mtu
+
+
+maptype = section:taboption("general", ListValue, "type", translate("Type"))
+maptype:value("map-e", "MAP-E")
+maptype:value("map-t", "MAP-T")
+maptype:value("lw4o6", "LW4over6")
+
+
+peeraddr = section:taboption("general", Value, "peeraddr",
+       translate("BR / DMR / AFTR"))
+
+peeraddr.rmempty  = false
+peeraddr.datatype = "ip6addr"
+
+
+ipaddr = section:taboption("general", Value, "ipaddr",
+       translate("IPv4 prefix"))
+ipaddr.datatype = "ip4addr"
+
+
+ip4prefixlen = s:taboption("general", Value, "ip4prefixlen",
+        translate("IPv4 prefix length"),
+        translate("The length of the IPv4 prefix in bits, the remainder is used in the IPv6 addresses."))
+
+ip4prefixlen.placeholder = "32"
+ip4prefixlen.datatype    = "range(0,32)"
+
+ip6addr = s:taboption("general", Value, "ip6prefix",
+        translate("IPv6 prefix"),
+        translate("The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"))
+
+ip6addr.rmempty  = false
+ip6addr.datatype = "ip6addr"
+
+
+ip6prefixlen = s:taboption("general", Value, "ip6prefixlen",
+        translate("IPv6 prefix length"),
+        translate("The length of the IPv6 prefix in bits"))
+
+ip6prefixlen.placeholder = "16"
+ip6prefixlen.datatype    = "range(0,64)"
+
+
+s:taboption("general", Value, "ealen",
+       translate("EA-bits length")).datatype = "range(0,16)"
+
+s:taboption("general", Value, "psidlen",
+       translate("PSID-bits length")).datatype = "range(0,16)"
+
+s:taboption("general", Value, "offset",
+       translate("PSID offset")).datatype = "range(0,16)"
+
+tunlink = section:taboption("advanced", DynamicList, "tunlink", translate("Tunnel Link"))
+tunlink.template = "cbi/network_netlist"
+tunlink.nocreate = true
+
+
+defaultroute = section:taboption("advanced", Flag, "defaultroute",
+       translate("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)
+
+
+ttl = section:taboption("advanced", Value, "ttl", translate("Use TTL on tunnel interface"))
+ttl.placeholder = "64"
+ttl.datatype    = "range(1,255)"
+
+
+mtu = section:taboption("advanced", Value, "mtu", translate("Use MTU on tunnel interface"))
+mtu.placeholder = "1280"
+mtu.datatype    = "max(9200)"
index daebc2f..d876d69 100644 (file)
@@ -5,13 +5,17 @@
 local netmod = luci.model.network
 
 local _, p
-for _, p in ipairs({"dslite"}) do
+for _, p in ipairs({"dslite", "map", "464xlat"}) do
 
        local proto = netmod:register_protocol(p)
 
        function proto.get_i18n(self)
                if p == "dslite" then
                        return luci.i18n.translate("Dual-Stack Lite (RFC6333)")
+               elseif p == "map" then
+                       return luci.i18n.translate("MAP / LW4over6")
+               elseif p == "464xlat" then
+                       return luci.i18n.translate("464XLAT (CLAT)")
                end
        end
 
@@ -22,6 +26,10 @@ for _, p in ipairs({"dslite"}) do
        function proto.opkg_package(self)
                if p == "dslite" then
                        return "ds-lite"
+               elseif p == "map" then
+                       return "map-t"
+               elseif p == "464xlat" then
+                       return "464xlat"
                end
        end
 
@@ -45,5 +53,11 @@ for _, p in ipairs({"dslite"}) do
                return (netmod:ifnameof(ifc) == self:ifname())
        end
 
-       netmod:register_pattern_virtual("^%s-%%w" % p)
+       if p == "dslite" then
+               netmod:register_pattern_virtual("^ds-%w")
+       elseif p == "map" then
+               netmod:register_pattern_virtual("^map-%w")
+       elseif p == "464xlat" then
+               netmod:register_pattern_virtual("^464-%w")
+       end
 end
index 023cc02..523ef1b 100644 (file)
@@ -19,10 +19,11 @@ password.password = true
 
 if luci.model.network:has_ipv6() then
 
-       ipv6 = section:taboption("advanced", Flag, "ipv6",
-               translate("Enable IPv6 negotiation on the PPP link"))
-
-       ipv6.default = ipv6.disabled
+        ipv6 = section:taboption("advanced", ListValue, "ipv6")
+        ipv6:value("auto", translate("Automatic"))
+        ipv6:value("0", translate("Disabled"))
+        ipv6:value("1", translate("Manual"))
+        ipv6.default = "auto"
 
 end
 
index 0fce97a..b14db59 100644 (file)
@@ -31,10 +31,11 @@ password.password = true
 
 if luci.model.network:has_ipv6() then
 
-       ipv6 = section:taboption("advanced", Flag, "ipv6",
-               translate("Enable IPv6 negotiation on the PPP link"))
-
-       ipv6.default = ipv6.disabled
+        ipv6 = section:taboption("advanced", ListValue, "ipv6")
+        ipv6:value("auto", translate("Automatic"))
+        ipv6:value("0", translate("Disabled"))
+        ipv6:value("1", translate("Manual"))
+        ipv6.default = "auto"
 
 end
 
index 7df1004..8f463e5 100644 (file)
@@ -37,10 +37,11 @@ password.password = true
 
 if luci.model.network:has_ipv6() then
 
-       ipv6 = section:taboption("advanced", Flag, "ipv6",
-               translate("Enable IPv6 negotiation on the PPP link"))
-
-       ipv6.default = ipv6.disabled
+        ipv6 = section:taboption("advanced", ListValue, "ipv6")
+        ipv6:value("auto", translate("Automatic"))
+        ipv6:value("0", translate("Disabled"))
+        ipv6:value("1", translate("Manual"))
+        ipv6.default = "auto"
 
 end
 
index 0e5bbaf..5a05cd2 100644 (file)
@@ -31,10 +31,11 @@ service.placeholder = translate("auto")
 
 if luci.model.network:has_ipv6() then
 
-       ipv6 = section:taboption("advanced", Flag, "ipv6",
-               translate("Enable IPv6 negotiation on the PPP link"))
-
-       ipv6.default = ipv6.disabled
+        ipv6 = section:taboption("advanced", ListValue, "ipv6")
+        ipv6:value("auto", translate("Automatic"))
+        ipv6:value("0", translate("Disabled"))
+        ipv6:value("1", translate("Manual"))
+        ipv6.default = "auto"
 
 end