-- Copyright 2015 Jonathan Bennett <jbennett@incomsystems.biz>
-- Licensed to the public under the GNU General Public License v2.
-
+tmp = 0
m = Map("fwknopd", translate("Firewall Knock Operator"))
s = m:section(TypedSection, "global", translate("Enable Uci/Luci control")) -- Set uci control on or off
s.anonymous=true
s:option(Flag, "uci_enabled", translate("Enable config overwrite"), translate("When unchecked, the config files in /etc/fwknopd will be used as is, ignoring any settings here."))
-qr = s:option(DummyValue, "note0", "dummy")
-qr.template = "fwknopd-qr"
-qr:depends("uci_enabled", "1")
s = m:section(TypedSection, "access", translate("access.conf stanzas")) -- set the access.conf settings
s.anonymous=true
s.addremove=true
-s.dynamic=true
+qr = s:option(DummyValue, "note0", "dummy")
+qr.tmp = tmp
+qr.template = "fwknopd-qr"
+qr:depends("uci_enabled", "1")
s:option(Value, "SOURCE", "SOURCE", translate("Use ANY for any source ip"))
k1 = s:option(Value, "KEY", "KEY", translate("Define the symmetric key used for decrypting an incoming SPA packet that is encrypted by the fwknop client with Rijndael."))
k1:depends("keytype", translate("Normal Key"))
This makes it impossible to use the -s command line argument on the fwknop client command line, so either -R \
has to be used to automatically resolve the external address (if the client behind a NAT) or the client must \
know the external IP and set it via the -a argument."))
-s:option(DummyValue, "note1", translate("Enter custom access.conf variables below:"))
s = m:section(TypedSection, "config", translate("fwknopd.conf config options"))
s.anonymous=true
-s.dynamic=true
s:option(Value, "MAX_SPA_PACKET_AGE", "MAX_SPA_PACKET_AGE", translate("Maximum age in seconds that an SPA packet will be accepted. defaults to 120 seconds"))
s:option(Value, "PCAP_INTF", "PCAP_INTF", translate("Specify the ethernet interface on which fwknopd will sniff packets."))
s:option(Value, "ENABLE_IPT_FORWARDING", "ENABLE_IPT_FORWARDING", translate("Allow SPA clients to request access to services through an iptables firewall instead of just to it."))
-s:option(DummyValue, "note2", translate("Enter custom fwknopd.conf variables below:"))
+s:option(Value, "ENABLE_NAT_DNS", "ENABLE_NAT_DNS", translate("Allow SPA clients to request forwarding destination by DNS name."))
return m
-<% print(luci.sys.exec("sh /usr/sbin/gen-qr.sh")) %>
+<% print(luci.sys.exec("sh /usr/sbin/gen-qr.sh " .. self.tmp)) %>
+<% self.tmp = self.tmp + 1 %>
"Allow SPA clients to request access to services through an iptables firewall "
"instead of just to it."
+msgid "Allow SPA clients to request forwarding destination by DNS name."
+msgstr ""
+
msgid "Base 64 key"
msgstr "Base 64 key"
msgid "Enable config overwrite"
msgstr "Enable config overwrite"
-msgid "Enter custom access.conf variables below:"
-msgstr "Enter custom access.conf variables below:"
-
-msgid "Enter custom fwknopd.conf variables below:"
-msgstr "Enter custom fwknopd.conf variables below:"
-
msgid "Firewall Knock Daemon"
msgstr "Firewall Knock Daemon"
msgid "fwknopd.conf config options"
msgstr "fwknopd.conf config options"
+
+#~ msgid "Enter custom access.conf variables below:"
+#~ msgstr "Enter custom access.conf variables below:"
+
+#~ msgid "Enter custom fwknopd.conf variables below:"
+#~ msgstr "Enter custom fwknopd.conf variables below:"
"instead of just to it."
msgstr ""
+msgid "Allow SPA clients to request forwarding destination by DNS name."
+msgstr ""
+
msgid "Base 64 key"
msgstr ""
msgid "Enable config overwrite"
msgstr ""
-msgid "Enter custom access.conf variables below:"
-msgstr ""
-
-msgid "Enter custom fwknopd.conf variables below:"
-msgstr ""
-
msgid "Firewall Knock Daemon"
msgstr ""
uci set fwknopd.@access[0].KEY_BASE64=`fwknopd --key-gen | awk '/^KEY/ {print $2;}'`
uci set fwknopd.@access[0].HMAC_KEY_BASE64=`fwknopd --key-gen | awk '/^HMAC/ {print $2;}'`
uci set fwknopd.@config[0].ENABLE_IPT_FORWARDING='y'
+uci set fwknopd.@config[0].ENABLE_NAT_DNS='y'
uci commit fwknopd
rm -f /tmp/luci-indexcache
#!/bin/sh
+entry_num=0
+if [ "$1" != "" ]; then
+entry_num=$1
+fi
-key_base64=$(uci get fwknopd.@access[0].KEY_BASE64)
-key=$(uci get fwknopd.@access[0].KEY)
-hmac_key_base64=$(uci get fwknopd.@access[0].HMAC_KEY_BASE64)
-hmac_key=$(uci get fwknopd.@access[0].HMAC_KEY)
+key_base64=$(uci get fwknopd.@access[$entry_num].KEY_BASE64)
+key=$(uci get fwknopd.@access[$entry_num].KEY)
+hmac_key_base64=$(uci get fwknopd.@access[$entry_num].HMAC_KEY_BASE64)
+hmac_key=$(uci get fwknopd.@access[$entry_num].HMAC_KEY)
if [ $key_base64 != "" ]; then
qr="KEY_BASE64:$key_base64"
local v4_port = uci:get("olsrd", "olsrd_jsoninfo", "port") or 9090
local v6_port = uci:get("olsrd6", "olsrd_jsoninfo", "port") or 9090
- jsonreq4 = utl.exec("(echo /status | nc 127.0.0.1 " .. v4_port .. ") 2>/dev/null" )
- jsonreq6 = utl.exec("(echo /status | nc ::1 " .. v6_port .. ") 2>/dev/null")
+ jsonreq4 = utl.exec("(echo /status | nc 127.0.0.1 " .. v4_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null" )
+ jsonreq6 = utl.exec("(echo /status | nc ::1 " .. v6_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null")
http.prepare_content("application/json")
if not jsonreq4 or jsonreq4 == "" then
jsonreq4 = "{}"
local v4_port = uci:get("olsrd", "olsrd_jsoninfo", "port") or 9090
local v6_port = uci:get("olsrd6", "olsrd_jsoninfo", "port") or 9090
- jsonreq4 = utl.exec("(echo /" .. otable .. " | nc 127.0.0.1 " .. v4_port .. ") 2>/dev/null")
- jsonreq6 = utl.exec("(echo /" .. otable .. " | nc ::1 " .. v6_port .. ") 2>/dev/null")
+ jsonreq4 = utl.exec("(echo /" .. otable .. " | nc 127.0.0.1 " .. v4_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null")
+ jsonreq6 = utl.exec("(echo /" .. otable .. " | nc ::1 " .. v6_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null")
local jsondata4 = {}
local jsondata6 = {}
local data4 = {}
if luci.http.formvalue("status") == "1" then
local rv = {}
for k, link in ipairs(links) do
- link.linkCost = tonumber(link.linkCost)/1024 or 0
- if link.linkCost == 4096 then
+ link.linkCost = tonumber(link.linkCost) or 0
+ if link.linkCost == 4194304 then
link.linkCost = 0
end
local color = olsrtools.etx_color(link.linkCost)
<tbody id="olsr_neigh_table">
<% local i = 1
for k, link in ipairs(links) do
- link.linkCost = tonumber(link.linkCost)/1024 or 0
- if link.linkCost == 4096 then
+ link.linkCost = tonumber(link.linkCost) or 0
+ if link.linkCost == 4194304 then
link.linkCost = 0
end
return {
title = "%H: Disk space usage on %pi",
vlabel = "Bytes",
- per_instance = true,
number_format = "%5.1lf%sB",
data = {
--
-- Author: Nils Koenig <openwrt@newk.it>
-module("luci.controller.wifischedule.wifi_schedule", package.seeall)
+module("luci.controller.wifischedule.wifi_schedule", package.seeall)
+
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
+local template = require "luci.template"
+local i18n = require "luci.i18n"
function index()
- entry({"admin", "wifi_schedule"}, firstchild(), _("Wifi Schedule"), 60).dependent=false
- entry({"admin", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), _("Schedule"), 1)
- entry({"admin", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), _("View Logfile"), 2)
- entry({"admin", "wifi_schedule", "cronjob"}, call("view_crontab"), _("View Cron Jobs"), 3)
+ if not nixio.fs.access("/etc/config/wifi_schedule") then
+ return
+ end
+ entry({"admin", "services", "wifi_schedule"}, firstchild(), _("Wifi Schedule"), 60).dependent=false
+ entry({"admin", "services", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), _("Schedule"), 1)
+ entry({"admin", "services", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), _("View Logfile"), 2)
+ entry({"admin", "services", "wifi_schedule", "cronjob"}, call("view_crontab"), _("View Cron Jobs"), 3)
end
function wifi_schedule_log()
- local logfile = luci.sys.exec("cat /tmp/log/wifi_schedule.log")
- luci.template.render("wifischedule/file_viewer", {title="Wifi Schedule Logfile", content=logfile})
+ local logfile = fs.readfile("/tmp/log/wifi_schedule.log") or ""
+ template.render("wifischedule/file_viewer",
+ {title = i18n.translate("Wifi Schedule Logfile"), content = logfile})
end
function view_crontab()
- local crontab = luci.sys.exec("cat /etc/crontabs/root")
- luci.template.render("wifischedule/file_viewer", {title="Cron Jobs", content=crontab})
+ local crontab = fs.readfile("/etc/crontabs/root") or ""
+ template.render("wifischedule/file_viewer",
+ {title = i18n.translate("Cron Jobs"), content = crontab})
end
--
-- Author: Nils Koenig <openwrt@newk.it>
-function file_exists(name)
- local f=io.open(name,"r")
- if f~=nil then io.close(f) return true else return false end
-end
-
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
function time_validator(self, value, desc)
if value ~= nil then
-
h_str, m_str = string.match(value, "^(%d%d?):(%d%d?)$")
h = tonumber(h_str)
m = tonumber(m_str)
m <= 59) then
return value
end
- end
- return nil, translate("The value '" .. desc .. "' is invalid")
+ end
+ return nil, translatef("The value %s is invalid", desc)
end
-- -------------------------------------------------------------------------------------------------
-- BEGIN Map
-m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi."))
+m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi."))
function m.on_commit(self)
- luci.sys.exec("/usr/bin/wifi_schedule.sh cron")
+ sys.exec("/usr/bin/wifi_schedule.sh cron")
end
-- END Map
-- BEGIN Global Enable Checkbox
global_enable = global_section:option(Flag, "enabled", translate("Enable Wifi Schedule"))
-global_enable.optional=false;
-global_enable.rmempty = false;
+global_enable.optional = false
+global_enable.rmempty = false
function global_enable.validate(self, value, global_section)
if value == "1" then
- if ( file_exists("/sbin/wifi") and
- file_exists("/usr/bin/wifi_schedule.sh") )then
+ if ( fs.access("/sbin/wifi") and
+ fs.access("/usr/bin/wifi_schedule.sh") )then
return value
else
return nil, translate("Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi")
end
-- END Global Enable Checkbox
-
-- BEGIN Global Logging Checkbox
global_logging = global_section:option(Flag, "logging", translate("Enable logging"))
-global_logging.optional=false;
-global_logging.rmempty = false;
+global_logging.optional = false
+global_logging.rmempty = false
global_logging.default = 0
-- END Global Enable Checkbox
-- BEGIN Global Activate WiFi Button
enable_wifi = global_section:option(Button, "enable_wifi", translate("Activate wifi"))
function enable_wifi.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh start manual")
+ sys.exec("/usr/bin/wifi_schedule.sh start manual")
end
-- END Global Activate Wifi Button
-- BEGIN Global Disable WiFi Gracefully Button
disable_wifi_gracefully = global_section:option(Button, "disable_wifi_gracefully", translate("Disable wifi gracefully"))
function disable_wifi_gracefully.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh stop manual")
+ sys.exec("/usr/bin/wifi_schedule.sh stop manual")
end
--- END Global Disable Wifi Gracefully Button
+-- END Global Disable Wifi Gracefully Button
-- BEGIN Disable WiFi Forced Button
disable_wifi_forced = global_section:option(Button, "disable_wifi_forced", translate("Disabled wifi forced"))
function disable_wifi_forced.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh forcestop manual")
+ sys.exec("/usr/bin/wifi_schedule.sh forcestop manual")
end
-- END Global Disable WiFi Forced Button
-- BEGIN Global Unload Modules Checkbox
global_unload_modules = global_section:option(Flag, "unload_modules", translate("Unload Modules (experimental; saves more power)"))
-global_unload_modules.optional = false;
-global_unload_modules.rmempty = false;
+global_unload_modules.optional = false
+global_unload_modules.rmempty = false
global_unload_modules.default = 0
-- END Global Unload Modules Checkbox
-- BEGIN Modules
modules = global_section:option(TextValue, "modules", "")
modules:depends("unload_modules", global_unload_modules.enabled);
-modules.wrap = "off"
-modules.rows = 10
+modules.wrap = "off"
+modules.rows = 10
function modules.cfgvalue(self, section)
- mod=uci.get("wifi_schedule", section, "modules")
+ mod = uci.get("wifi_schedule", section, "modules")
if mod == nil then
- mod=""
+ mod = ""
end
return mod:gsub(" ", "\r\n")
end
end
-- END Modules
--- BEGIN Determine Modules
+-- BEGIN Determine Modules
determine_modules = global_section:option(Button, "determine_modules", translate("Determine Modules Automatically"))
determine_modules:depends("unload_modules", global_unload_modules.enabled);
function determine_modules.write(self, section)
- output = luci.sys.exec("/usr/bin/wifi_schedule.sh getmodules")
+ output = sys.exec("/usr/bin/wifi_schedule.sh getmodules")
modules:write(section, output)
end
-- END Determine Modules
-
-- BEGIN Section
d = m:section(TypedSection, "entry", translate("Schedule events"))
-d.addremove = true
+d.addremove = true
--d.anonymous = true
-- END Section
-- BEGIN Enable Checkbox
c = d:option(Flag, "enabled", translate("Enable"))
-c.optional=false; c.rmempty = false;
+c.optional = false
+c.rmempty = false
-- END Enable Checkbox
-
-- BEGIN Day(s) of Week
dow = d:option(MultiValue, "daysofweek", translate("Day(s) of Week"))
dow.optional = false
-- BEGIN Start Wifi Dropdown
starttime = d:option(Value, "starttime", translate("Start WiFi"))
-starttime.optional=false;
-starttime.rmempty = false;
+starttime.optional = false
+starttime.rmempty = false
starttime:value("00:00")
starttime:value("01:00")
starttime:value("02:00")
function starttime.validate(self, value, d)
return time_validator(self, value, translate("Start Time"))
end
-
-- END Start Wifi Dropdown
-
-- BEGIN Stop Wifi Dropdown
-stoptime = d:option(Value, "stoptime", translate("Stop WiFi"))
-stoptime.optional=false;
-stoptime.rmempty = false;
+stoptime = d:option(Value, "stoptime", translate("Stop WiFi"))
+stoptime.optional = false
+stoptime.rmempty = false
stoptime:value("00:00")
stoptime:value("01:00")
stoptime:value("02:00")
end
-- END Stop Wifi Dropdown
-
-- BEGIN Force Wifi Stop Checkbox
force_wifi = d:option(Flag, "forcewifidown", translate("Force disabling wifi even if stations associated"))
force_wifi.default = false
-force_wifi.rmempty = false;
+force_wifi.rmempty = false
function force_wifi.validate(self, value, d)
if value == "0" then
- if file_exists("/usr/bin/iwinfo") then
+ if fs.access("/usr/bin/iwinfo") then
return value
else
return nil, translate("Could not find required programm /usr/bin/iwinfo")
end
-- END Force Wifi Checkbox
-
return m
-%>
<%+header%>
-<h2 name="title"><%=translate(title)%></h2>
+<h2 name="title"><%=title%></h2>
<div id="content_fileviewer">
<textarea style="width: 100%" readonly="readonly" wrap="off" rows="<%=content:cmatch("\n")+1%>" id="content_id"><%=content:pcdata()%></textarea>
</div>
msgstr "WiFiのアクティブ化"
msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi"
-msgstr ""
-"必須の /usr/bin/wifi_schedule.sh または /sbin/wifi が見つかりませんでした。"
+msgstr "必須の /usr/bin/wifi_schedule.sh または /sbin/wifi が見つかりませんでした。"
msgid "Could not find required programm /usr/bin/iwinfo"
msgstr "必須のプログラム /usr/bin/iwinfo が見つかりませんでした。"
+msgid "Cron Jobs"
+msgstr "Cronジョブ"
+
msgid "Day(s) of Week"
msgstr "曜日"
msgid "Sunday"
msgstr "日曜日"
-msgid "The value '"
-msgstr ""
+msgid "The value %s is invalid"
+msgstr "%s の値が無効です"
msgid "Thursday"
msgstr "木曜日"
msgid "Wifi Schedule"
msgstr "WiFi スケジュール"
-#~ msgid "Cron Jobs"
-#~ msgstr "Cronジョブ"
-
-#~ msgid "Wifi Schedule Logfile"
-#~ msgstr "WiFiスケジュール ログファイル"
+msgid "Wifi Schedule Logfile"
+msgstr "WiFiスケジュール ログファイル"
msgid "Could not find required programm /usr/bin/iwinfo"
msgstr ""
+msgid "Cron Jobs"
+msgstr ""
+
msgid "Day(s) of Week"
msgstr ""
msgid "Sunday"
msgstr ""
-msgid "The value '"
+msgid "The value %s is invalid"
msgstr ""
msgid "Thursday"
msgid "Wifi Schedule"
msgstr ""
+
+msgid "Wifi Schedule Logfile"
+msgstr ""
msgid "Could not find required programm /usr/bin/iwinfo"
msgstr "无法找到必需程序:/usr/bin/iwinfo"
+msgid "Cron Jobs"
+msgstr "计划任务"
+
msgid "Day(s) of Week"
msgstr "星期"
msgid "Defines a schedule when to turn on and off wifi."
-msgstr "定义打开和关闭 WiFi 的时间表"
+msgstr "定义自动打开和关闭 WiFi 的计划表"
msgid "Determine Modules Automatically"
msgstr "自动确定模块"
msgstr "启用"
msgid "Enable Wifi Schedule"
-msgstr "启用 WiFi 时间表"
+msgstr "启用 WiFi 计划"
msgid "Enable logging"
msgstr "启用日志"
msgstr "星期六"
msgid "Schedule"
-msgstr "时间表"
+msgstr "计划表"
msgid "Schedule events"
msgstr "计划事件"
msgid "Sunday"
msgstr "星期日"
-msgid "The value '"
-msgstr ""
+msgid "The value %s is invalid"
+msgstr "%s 的值无效"
msgid "Thursday"
msgstr "星期四"
msgstr "星期二"
msgid "Unload Modules (experimental; saves more power)"
-msgstr "å\8f\96æ¶\88å\8a 载模块(实验性的,节省更多电量)"
+msgstr "å\8d¸载模块(实验性的,节省更多电量)"
msgid "View Cron Jobs"
msgstr "查看计划任务"
msgstr "星期三"
msgid "Wifi Schedule"
-msgstr "WiFi 时间表"
-
-#~ msgid "Cron Jobs"
-#~ msgstr "计划任务"
+msgstr "WiFi 计划"
-#~ msgid "Wifi Schedule Logfile"
-#~ msgstr "WiFi 时间表日志文件"
+msgid "Wifi Schedule Logfile"
+msgstr "WiFi 计划日志文件"
LUCI_TITLE:=LuCI with HTTPS support (OpenSSL as SSL backend)
LUCI_DESCRIPTION:=LuCI with OpenSSL as the SSL backend (libustream-openssl). \
- Note: px5g still requires libpolarssl
+ Note: px5g still requires libmbedtls (in LEDE) or libpolarssl (in Openwrt). \
+ In LEDE it is also possible to replace px5g with openssl-util as uhttpd can \
+ also generate keys with openssl commandline tools if px5g is not installed.
LUCI_DEPENDS:=+luci +libustream-openssl +px5g
include ../../luci.mk
if net.l3_device == iface or net.device == iface then
-- cross check with uci to filter out @name style aliases
local uciname = cur:get("network", net.interface, "ifname")
- if not uciname or uciname:sub(1, 1) ~= "@" then
+ if type(uciname) == "string" and uciname:sub(1,1) ~= "@" or uciname then
return net.interface
end
end
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Suma de verificació"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Kontrolní součet"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Prüfsumme"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Άθροισμα Ελέγχου"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Comprobación"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Somme de contrôle"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Ellenőrző összeg"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
msgid "Always announce default router"
msgstr "常にデフォルト ルーターとして通知する"
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr "マウント前にファイルシステムをチェックする"
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "チェックサム"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Jumlah disemak "
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Kontrollsum"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Suma kontrolna"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Soma de verificação"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Suma de verificare"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Контрольная сумма"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Контрольна сума"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
msgid "Always announce default router"
msgstr "总是广播默认路由"
-msgid "An additional network will be created if you leave this checked."
-msgstr "如果选中此复选框,则会创建一个附加网络。"
-
msgid "Annex"
msgstr "Annex"
msgid "Check fileystems before mount"
msgstr "在挂载前检查文件系统"
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "校验值"
msgid "« Back"
msgstr "« 后退"
+#~ msgid "An additional network will be created if you leave this checked."
+#~ msgstr "如果选中此复选框,则会创建一个附加网络。"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "取消选中将会另外创建一个新网络,而不会覆盖当前网络设置"
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "效驗碼"
if iw and iw.mbssid_support then
replace = m:field(Flag, "replace", translate("Replace wireless configuration"),
- translate("An additional network will be created if you leave this checked."))
+ translate("Check this option to delete the existing networks from this radio."))
function replace.cfgvalue() return "0" end
else