You can browse the generated API documentation [directly on Github](http://htmlpreview.github.io/?http://raw.githubusercontent.com/openwrt/luci/master/documentation/api/index.html).
+## Development
+
+Documentation for developing and extending LuCI can be found [in the Wiki](https://github.com/openwrt/luci/wiki)
+
## License
See [LICENSE](LICENSE) file.
--- /dev/null
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8\n"
+
+msgid ""
+"). Note that list URLs and Shallalist category selections are not "
+"configurable via Luci."
+msgstr ""
+
+msgid "Adblock"
+msgstr "Blockering av annonser"
+
+msgid "Available blocklist sources ("
+msgstr "Tillgängliga källor för blockeringslistor ("
+
+msgid "Backup directory"
+msgstr "Säkerhetskopiera mapp"
+
+msgid "Backup options"
+msgstr "Alternativ för säkerhetskopiering"
+
+msgid "Blocklist sources"
+msgstr "Källor för blockeringslistor"
+
+msgid ""
+"Configuration of the adblock package to block ad/abuse domains by using DNS."
+msgstr ""
+"Konfiguration av paket adblock för att blockera annons/otillåtna domäner "
+"genom att användning DNS."
+
+msgid "Count"
+msgstr "Räkna"
+
+msgid "Description"
+msgstr "Beskrivning"
+
+msgid "Do not write status info to flash"
+msgstr "Skriv inte status info till flash"
+
+msgid "Enable adblock"
+msgstr "Aktivera abblock"
+
+msgid "Enable blocklist backup"
+msgstr "Aktivera säkerhetskopiering av blockeringslistan"
+
+msgid "Enabled"
+msgstr "Aktiverad"
+
+msgid "Extra options"
+msgstr "Extra alternativ"
+
+msgid ""
+"File with whitelisted hosts/domains that are allowed despite being on a "
+"blocklist."
+msgstr ""
+
+msgid "Global options"
+msgstr "Globala alternativ"
+
+msgid "IPv4 blackhole ip address"
+msgstr ""
+
+msgid "IPv6 blackhole ip address"
+msgstr ""
+
+msgid "Last update of the blocklists"
+msgstr ""
+
+msgid "List date/state"
+msgstr ""
+
+msgid "Name of the logical lan interface"
+msgstr ""
+
+msgid ""
+"Options for further tweaking in case the defaults are not suitable for you."
+msgstr ""
+
+msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+msgstr ""
+
+msgid "Port of the adblock uhttpd instance"
+msgstr ""
+
+msgid "Port of the adblock uhttpd instance for https links"
+msgstr ""
+
+msgid "Redirect all DNS queries to the local resolver"
+msgstr "Dirigera om alla DNS-förfrågning till den lokala resolvern"
+
+msgid ""
+"Skip writing update status information to the config file. Status fields on "
+"this page will not be updated."
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Timeout for blocklist fetch (seconds)"
+msgstr ""
+
+msgid "Total count of blocked domains"
+msgstr ""
+
+msgid ""
+"When adblock is active, all DNS queries are redirected to the local resolver "
+"in this server by default. You can disable that to allow queries to external "
+"DNS servers."
+msgstr ""
+
+msgid "Whitelist file"
+msgstr "Vitlista fil"
+
+msgid "see list details"
+msgstr "se listans detaljer"
msgid "IPv6 blackhole ip address"
msgstr ""
+msgid "Last update of the blocklists"
+msgstr ""
+
msgid "List date/state"
msgstr ""
"Options for further tweaking in case the defaults are not suitable for you."
msgstr ""
+msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+msgstr ""
+
msgid "Port of the adblock uhttpd instance"
msgstr ""
+msgid "Port of the adblock uhttpd instance for https links"
+msgstr ""
+
msgid "Redirect all DNS queries to the local resolver"
msgstr ""
"this page will not be updated."
msgstr ""
+msgid "Statistics"
+msgstr ""
+
msgid "Timeout for blocklist fetch (seconds)"
msgstr ""
msgid "IPv6 blackhole ip address"
msgstr "IPv6禁止列表"
+msgid "Last update of the blocklists"
+msgstr ""
+
msgid "List date/state"
msgstr "列表日期/状态"
"Options for further tweaking in case the defaults are not suitable for you."
msgstr "在默认设置并不适合你时的额外选项。"
+msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+msgstr ""
+
msgid "Port of the adblock uhttpd instance"
msgstr "Adblock uhttpd端口"
+msgid "Port of the adblock uhttpd instance for https links"
+msgstr ""
+
msgid "Redirect all DNS queries to the local resolver"
msgstr "将所有DNS查询都重定向到本地解析器"
"this page will not be updated."
msgstr ""
+msgid "Statistics"
+msgstr ""
+
msgid "Timeout for blocklist fetch (seconds)"
msgstr "列表查询超时时间(秒)"
include $(TOPDIR)/rules.mk
+PKG_NAME:=luci-app-aria2
+
+# Version == major.minor.patch
+# increase "minor" on new functionality and "patch" on patches/optimization
+PKG_VERSION:=1.0.1
+
+# Release == build
+# increase on changes of translation files
+PKG_RELEASE:=2
+
+PKG_LICENSE:=Apache-2.0
+PKG_MAINTAINER:=Hsing-Wang Liao <kuoruan@gmail.com>
+
+# LuCI specific settings
LUCI_TITLE:=LuCI Support for Aria2
LUCI_DEPENDS:=+aria2
+LUCI_PKGARCH:=all
+
+define Package/$(PKG_NAME)/config
+# shown in make menuconfig <Help>
+help
+ $(LUCI_TITLE)
+ .
+ Version: $(PKG_VERSION)-$(PKG_RELEASE)
+ $(PKG_MAINTAINER)
+endef
include ../../luci.mk
m = Map("aria2", translate("Aria2"), translate("Aria2 is a multi-protocol & multi-source download utility, here you can configure the settings."))
-m:section(SimpleSection).template = "aria2/web_script"
+m:section(SimpleSection).template = "aria2/overview_status"
s = m:section(TypedSection, "aria2", translate("Aria2 Settings"))
s.addremove = false
o = s:taboption("general", Value, "rpc_passwd", translate("RPC password"))
o:depends("rpc_auth_method", "user_pass")
o.password = true
-o.rmempty = false
+o.rmempty = true
o = s:taboption("general", Value, "rpc_secret", translate("RPC Token"), "<br/>" .. cfgbtn)
o:depends("rpc_auth_method", "token")
-o.rmempty = false
+o.rmempty = true
o = s:taboption("file", Value, "config_dir", translate("Config file directory"))
o.placeholder = "/var/etc/aria2"
+o = s:taboption("file", Flag, "enable_log", translate("Enable log"), translate("Log file is in the config file dir."))
+o.enabled = "true"
+o.disabled = "false"
+
+o = s:taboption("file", ListValue, "log_level", translate("Log level"))
+o:depends("enable_log", "true")
+o:value("debug", translate("Debug"))
+o:value("info", translate("Info"))
+o:value("notice", translate("Notice"))
+o:value("warn", translate("Warn"))
+o:value("error", translate("Error"))
+
o = s:taboption("file", Value, "dir", translate("Default download directory"))
o.rmempty = false
-s:taboption("file", Value, "disk_cache", translate("Disk cache"), translate("in bytes, You can append K or M."))
+o = s:taboption("file", Value, "disk_cache", translate("Disk cache"), translate("in bytes, You can append K or M."))
+o.rmempty = true
o = s:taboption("file", ListValue, "file_allocation", translate("Preallocation"), translate("\"Falloc\" is not available in all cases."))
o:value("none", translate("Off"))
o:value("falloc", translate("Falloc"))
overall_speed_limit = s:taboption("task", Flag, "overall_speed_limit", translate("Overall speed limit enabled"))
+overall_speed_limit.rmempty = true
o = s:taboption("task", Value, "max_overall_download_limit", translate("Overall download limit"), translate("in bytes/sec, You can append K or M."))
o:depends("overall_speed_limit", "1")
o:depends("overall_speed_limit", "1")
task_speed_limit = s:taboption("task", Flag, "task_speed_limit", translate("Per task speed limit enabled"))
+task_speed_limit.rmempty = true
o = s:taboption("task", Value, "max_download_limit", translate("Per task download limit"), translate("in bytes/sec, You can append K or M."))
o:depends("task_speed_limit", "1")
--- /dev/null
+<script type="text/javascript">//<![CDATA[
+XHR.poll(5, '<%=luci.dispatcher.build_url("admin/services/aria2/status")%>', null,
+ function(x, data) {
+ var tb = document.getElementById('aria2_status');
+ if (data && tb) {
+ if (data.running) {
+ var links = '<em><%:The Aria2 service is running.%></em>';
+ if (data.yaaw) {
+ links += '<input class="cbi-button mar-10" type="button" value="<%:Open YAAW%>" onclick="openWebUI(\'yaaw\');" />';
+ }
+ if (data.webui) {
+ links += '<input class="cbi-button mar-10" type="button" value="<%:Open WebUI-Aria2%>" onclick="openWebUI(\'webui-aria2\');" />';
+ }
+ tb.innerHTML = links;
+ } else {
+ tb.innerHTML = '<em><%:The Aria2 service is not running.%></em>';
+ }
+ }
+ }
+);
+
+function randomString(len) {
+ len = len || 32;
+ var $chars = 'abcdefghijklmnopqrstuvwxyz1234567890';
+ var maxPos = $chars.length;
+ var pwd = '';
+ for (i = 0; i < len; i++) {
+ pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
+ }
+ return pwd;
+};
+
+function randomSecret() {
+ var Token = document.getElementById("cbid.aria2.main.rpc_secret");
+ Token.value = randomString(32);
+};
+
+function showRPCURL() {
+ var websocket = document.getElementById("use_websocket");
+ var protocol = (websocket.checked) ? "ws" : "http";
+ var newTextNode = document.getElementById("aria2rpcpath");
+ var auth_method = document.getElementById("cbid.aria2.main.rpc_auth_method");
+ var auth_port = document.getElementById("cbid.aria2.main.rpc_listen_port");
+ if (auth_port.value == "") {
+ auth_port_value = "6800"
+ } else {
+ auth_port_value = auth_port.value
+ };
+ if (auth_method.value == "token") {
+ var auth_token = document.getElementById("cbid.aria2.main.rpc_secret");
+ newTextNode.value = protocol + "://token:" + auth_token.value + "@" + document.domain + ":" + auth_port_value + "/jsonrpc";
+ } else if (auth_method.value == "user_pass") {
+ var auth_user = document.getElementById("cbid.aria2.main.rpc_user");
+ var auth_passwd = document.getElementById("cbid.aria2.main.rpc_passwd");
+ newTextNode.value = protocol + "://" + auth_user.value + ":" + auth_passwd.value + "@" + document.domain + ":" + auth_port_value + "/jsonrpc";
+ } else {
+ newTextNode.value = protocol + "://" + document.domain + ":" + auth_port_value + "/jsonrpc";
+ }
+};
+
+function openWebUI(path) {
+ var curWwwPath = window.document.location.href;
+ var pathName = window.document.location.pathname;
+ var pos = curWwwPath.indexOf(pathName);
+ var localhostPath = curWwwPath.substring(0, pos);
+ var url = "http:" + localhostPath.substring(window.location.protocol.length) + "/" + path;
+ window.open(url)
+};
+//]]>
+</script>
+<style>.mar-10 {margin-left: 10px; margin-right: 10px;}</style>
+<fieldset class="cbi-section">
+ <legend><%:Aria2 Status%></legend>
+ <p id="aria2_status">
+ <em><%:Collecting data...%></em>
+ </p>
+</fieldset>
+++ /dev/null
-<script type="text/javascript">//<![CDATA[
-XHR.poll(5, '<%=url([[admin]], [[services]], [[aria2]], [[status]])%>', null,
- function(x, data) {
- var tb = document.getElementById('aria2_status');
- if (data && tb) {
- if (data.running) {
- var links = '<em><%:The Aria2 service is running.%></em>';
- if (data.yaaw) {
- links += '<input class="cbi-button mar-10" type="button" value="<%:Open YAAW%>" onclick="openWebUI(\'yaaw\');" />';
- }
- if (data.webui) {
- links += '<input class="cbi-button mar-10" type="button" value="<%:Open WebUI-Aria2%>" onclick="openWebUI(\'webui-aria2\');" />';
- }
- tb.innerHTML = links;
- } else {
- tb.innerHTML = '<em><%:The Aria2 service is not running.%></em>';
- }
- }
- }
-);
-
-function randomString(len) {
- len = len || 32;
- var $chars = 'abcdefghijklmnopqrstuvwxyz1234567890';
- var maxPos = $chars.length;
- var pwd = '';
- for (i = 0; i < len; i++) {
- pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
- }
- return pwd;
-};
-
-function randomSecret() {
- var Token = document.getElementById("cbid.aria2.main.rpc_secret");
- Token.value = randomString(32);
-};
-
-function showRPCURL() {
- var websocket = document.getElementById("use_websocket");
- var protocol = (websocket.checked) ? "ws" : "http";
- var newTextNode = document.getElementById("aria2rpcpath");
- var auth_method = document.getElementById("cbid.aria2.main.rpc_auth_method");
- var auth_port = document.getElementById("cbid.aria2.main.rpc_listen_port");
- if (auth_port.value == "") {
- auth_port_value = "6800"
- } else {
- auth_port_value = auth_port.value
- };
- if (auth_method.value == "token") {
- var auth_token = document.getElementById("cbid.aria2.main.rpc_secret");
- newTextNode.value = protocol + "://token:" + auth_token.value + "@" + document.domain + ":" + auth_port_value + "/jsonrpc";
- } else if (auth_method.value == "user_pass") {
- var auth_user = document.getElementById("cbid.aria2.main.rpc_user");
- var auth_passwd = document.getElementById("cbid.aria2.main.rpc_passwd");
- newTextNode.value = protocol + "://" + auth_user.value + ":" + auth_passwd.value + "@" + document.domain + ":" + auth_port_value + "/jsonrpc";
- } else {
- newTextNode.value = protocol + "://" + document.domain + ":" + auth_port_value + "/jsonrpc";
- }
-};
-
-function openWebUI(path) {
- var curWwwPath = window.document.location.href;
- var pathName = window.document.location.pathname;
- var pos = curWwwPath.indexOf(pathName);
- var localhostPath = curWwwPath.substring(0, pos);
- var url = "http:" + localhostPath.substring(window.location.protocol.length) + "/" + path;
- window.open(url)
-};
-//]]>
-</script>
-<style>.mar-10 {margin-left: 10px; margin-right: 10px;}</style>
-<fieldset class="cbi-section">
- <legend><%:Aria2 Status%></legend>
- <p id="aria2_status">
- <em><%:Collecting data...%></em>
- </p>
-</fieldset>
+++ /dev/null
-msgid "Aria2"
-msgstr ""
-
-msgid "Aria2 is a multi-protocol & multi-source download utility, here you can configure the settings."
-msgstr ""
-
-msgid "Aria2 Status"
-msgstr ""
-
-msgid "Open YAAW"
-msgstr ""
-
-msgid "Open WebUI-Aria2"
-msgstr ""
-
-msgid "The Aria2 service is running."
-msgstr ""
-
-msgid "The Aria2 service is not running."
-msgstr ""
-
-msgid "Aria2 Settings"
-msgstr ""
-
-msgid "General settings"
-msgstr ""
-
-msgid "Files and Locations"
-msgstr ""
-
-msgid "Enabled"
-msgstr ""
-
-msgid "Task Settings"
-msgstr ""
-
-msgid "BitTorrent Settings"
-msgstr ""
-
-msgid "Run daemon as user"
-msgstr ""
-
-msgid "RPC port"
-msgstr ""
-
-msgid "RPC authentication method"
-msgstr ""
-
-msgid "No Authentication"
-msgstr ""
-
-msgid "Username & Password"
-msgstr ""
-
-msgid "Token"
-msgstr ""
-
-msgid "RPC username"
-msgstr ""
-
-msgid "RPC password"
-msgstr ""
-
-msgid "RPC Token"
-msgstr ""
-
-msgid "Generate Randomly"
-msgstr ""
-
-msgid "Config file directory"
-msgstr ""
-
-msgid "Default download directory"
-msgstr ""
-
-msgid "Disk cache"
-msgstr ""
-
-msgid "in bytes, You can append K or M."
-msgstr ""
-
-msgid "Preallocation"
-msgstr ""
-
-msgid "Off"
-msgstr ""
-
-msgid "Prealloc"
-msgstr ""
-
-msgid "Trunc"
-msgstr ""
-
-msgid "Falloc"
-msgstr ""
-
-msgid "\"Falloc\" is not available in all cases."
-msgstr ""
-
-msgid "Overall speed limit enabled"
-msgstr ""
-
-msgid "Overall download limit"
-msgstr ""
-
-msgid "in bytes/sec, You can append K or M."
-msgstr ""
-
-msgid "Overall upload limit"
-msgstr ""
-
-msgid "Per task speed limit enabled"
-msgstr ""
-
-msgid "Per task download limit"
-msgstr ""
-
-msgid "Per task upload limit"
-msgstr ""
-
-msgid "Max concurrent downloads"
-msgstr ""
-
-msgid "Max connection per server"
-msgstr ""
-
-msgid "Min split size"
-msgstr ""
-
-msgid "Max number of split"
-msgstr ""
-
-msgid "Autosave session interval"
-msgstr ""
-
-msgid "Sec"
-msgstr ""
-
-msgid "User agent value"
-msgstr ""
-
-msgid "<abbr title=\"Distributed Hash Table\">DHT</abbr> enabled"
-msgstr ""
-
-msgid "<abbr title=\"Local Peer Discovery\">LPD</abbr> enabled"
-msgstr ""
-
-msgid "Follow torrent"
-msgstr ""
-
-msgid "BitTorrent listen port"
-msgstr ""
-
-msgid "Max number of peers per torrent"
-msgstr ""
-
-msgid "Additional Bt tracker enabled"
-msgstr ""
-
-msgid "List of additional Bt tracker"
-msgstr ""
-
-msgid "Prefix of peer ID"
-msgstr ""
-
-msgid "Extra Settings"
-msgstr ""
-
-msgid "List of extra settings"
-msgstr ""
-
-msgid "View Json-RPC URL"
-msgstr ""
-
-msgid "Use WebSocket"
-msgstr ""
--- /dev/null
+msgid "Aria2"
+msgstr ""
+
+msgid "Aria2 is a multi-protocol & multi-source download utility, here you can configure the settings."
+msgstr ""
+
+msgid "Aria2 Status"
+msgstr ""
+
+msgid "Open YAAW"
+msgstr ""
+
+msgid "Open WebUI-Aria2"
+msgstr ""
+
+msgid "The Aria2 service is running."
+msgstr ""
+
+msgid "The Aria2 service is not running."
+msgstr ""
+
+msgid "Aria2 Settings"
+msgstr ""
+
+msgid "General settings"
+msgstr ""
+
+msgid "Files and Locations"
+msgstr ""
+
+msgid "Enabled"
+msgstr ""
+
+msgid "Task Settings"
+msgstr ""
+
+msgid "BitTorrent Settings"
+msgstr ""
+
+msgid "Run daemon as user"
+msgstr ""
+
+msgid "RPC port"
+msgstr ""
+
+msgid "RPC authentication method"
+msgstr ""
+
+msgid "No Authentication"
+msgstr ""
+
+msgid "Username & Password"
+msgstr ""
+
+msgid "Token"
+msgstr ""
+
+msgid "RPC username"
+msgstr ""
+
+msgid "RPC password"
+msgstr ""
+
+msgid "RPC Token"
+msgstr ""
+
+msgid "Generate Randomly"
+msgstr ""
+
+msgid "Enable log"
+msgstr ""
+
+msgid "Log file is in the config file dir."
+msgstr ""
+
+msgid "Log level"
+msgstr ""
+
+msgid "Debug"
+msgstr ""
+
+msgid "Info"
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "Warn"
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Config file directory"
+msgstr ""
+
+msgid "Default download directory"
+msgstr ""
+
+msgid "Disk cache"
+msgstr ""
+
+msgid "in bytes, You can append K or M."
+msgstr ""
+
+msgid "Preallocation"
+msgstr ""
+
+msgid "Off"
+msgstr ""
+
+msgid "Prealloc"
+msgstr ""
+
+msgid "Trunc"
+msgstr ""
+
+msgid "Falloc"
+msgstr ""
+
+msgid "\"Falloc\" is not available in all cases."
+msgstr ""
+
+msgid "Overall speed limit enabled"
+msgstr ""
+
+msgid "Overall download limit"
+msgstr ""
+
+msgid "in bytes/sec, You can append K or M."
+msgstr ""
+
+msgid "Overall upload limit"
+msgstr ""
+
+msgid "Per task speed limit enabled"
+msgstr ""
+
+msgid "Per task download limit"
+msgstr ""
+
+msgid "Per task upload limit"
+msgstr ""
+
+msgid "Max concurrent downloads"
+msgstr ""
+
+msgid "Max connection per server"
+msgstr ""
+
+msgid "Min split size"
+msgstr ""
+
+msgid "Max number of split"
+msgstr ""
+
+msgid "Autosave session interval"
+msgstr ""
+
+msgid "Sec"
+msgstr ""
+
+msgid "User agent value"
+msgstr ""
+
+msgid "<abbr title=\"Distributed Hash Table\">DHT</abbr> enabled"
+msgstr ""
+
+msgid "<abbr title=\"Local Peer Discovery\">LPD</abbr> enabled"
+msgstr ""
+
+msgid "Follow torrent"
+msgstr ""
+
+msgid "BitTorrent listen port"
+msgstr ""
+
+msgid "Max number of peers per torrent"
+msgstr ""
+
+msgid "Additional Bt tracker enabled"
+msgstr ""
+
+msgid "List of additional Bt tracker"
+msgstr ""
+
+msgid "Prefix of peer ID"
+msgstr ""
+
+msgid "Extra Settings"
+msgstr ""
+
+msgid "List of extra settings"
+msgstr ""
+
+msgid "View Json-RPC URL"
+msgstr ""
+
+msgid "Use WebSocket"
+msgstr ""
msgstr ""
msgid "Aria2 is a multi-protocol & multi-source download utility, here you can configure the settings."
-msgstr "Aria2 是一个支持多协议多线程的下载器, 你可以在这里对其进行配置."
+msgstr "Aria2 是一个支持多协议多线程的下载器, 你可以在这里对其进行配置"
msgid "Aria2 Status"
msgstr "Aria2 状态"
msgid "Generate Randomly"
msgstr "随机生成"
+msgid "Enable log"
+msgstr "启用日志"
+
+msgid "Log file is in the config file dir."
+msgstr "日志文件在配置文件目录下"
+
+msgid "Log level"
+msgstr "日志记录等级"
+
+msgid "Debug"
+msgstr "调试"
+
+msgid "Info"
+msgstr "信息"
+
+msgid "Notice"
+msgstr "注意"
+
+msgid "Warn"
+msgstr "警告"
+
+msgid "Error"
+msgstr "错误"
+
msgid "Config file directory"
msgstr "配置文件目录"
msgstr "磁盘缓存"
msgid "in bytes, You can append K or M."
-msgstr "单位 B, 你可以在数字后跟上 K 或 M."
+msgstr "单位 B, 你可以在数字后跟上 K 或 M"
msgid "Preallocation"
msgstr "磁盘预分配"
msgstr ""
msgid "\"Falloc\" is not available in all cases."
-msgstr "\"Falloc\" 并不是在所有情况下都可用."
+msgstr "\"Falloc\" 并不是在所有情况下都可用"
msgid "Overall speed limit enabled"
msgstr "启用全局限速"
msgstr "全局下载限速"
msgid "in bytes/sec, You can append K or M."
-msgstr "单位 B/s, 你可以在数字后跟上 K 或 M."
+msgstr "单位 B/s, 你可以在数字后跟上 K 或 M"
msgid "Overall upload limit"
msgstr "全局上传限速"
# Version == major.minor.patch
# increase on new functionality (minor) or patches (patch)
-PKG_VERSION:=2.4.6
+PKG_VERSION:=2.4.7
# Release == build
# increase on changes of translation files
-PKG_RELEASE:=2
+PKG_RELEASE:=1
PKG_LICENSE:=Apache-2.0
PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>
local DDNS = require "luci.tools.ddns" -- ddns multiused functions
local srv_name = "ddns-scripts"
-local srv_ver_min = "2.7.2" -- minimum version of service required
+local srv_ver_min = "2.7.5" -- minimum version of service required
local srv_ver_cmd = [[/usr/lib/ddns/dynamic_dns_updater.sh --version | awk {'print $2'}]]
local app_name = "luci-app-ddns"
local app_title = "Dynamic DNS"
-local app_version = "2.4.6-1"
+local app_version = "2.4.7-1"
function index()
local nxfs = require "nixio.fs" -- global definitions not available
value = value .. "<br />- " ..
translate("You should install 'wget' or 'curl' or 'uclient-fetch' package.")
end
- if not (DDNS.has_bindhost or DDNS.has_hostip) then
+ if not DDNS.has_bindhost then
value = value .. "<br />- " ..
- translate("You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' package for DNS requests.")
+ translate("You should install 'bind-host' or 'knot-host' or 'drill' package for DNS requests.")
end
fi.value = value
end
has_ipv6 = (NXFS.access("/proc/net/ipv6_route") and NXFS.access("/usr/sbin/ip6tables"))
has_ssl = (has_wgetssl or has_curlssl or (has_fetch and has_fetchssl))
has_proxy = (has_wgetssl or has_curlpxy or has_fetch or has_bbwget)
-has_forceip = ((has_wgetssl or has_curl or has_fetch) and (has_bindhost or has_hostip))
+has_forceip = (has_wgetssl or has_curl or has_fetch) -- only really needed for transfer
has_dnsserver = (has_bindhost or has_hostip or has_nslookup)
has_bindnet = (has_wgetssl or has_curl)
has_cacerts = _check_certs()
msgid ""
msgstr ""
"Project-Id-Version: luci-app-ddns 2.4.2-1\n"
-"POT-Creation-Date: 2016-05-08 19:10+0200\n"
-"PO-Revision-Date: 2016-05-08 19:12+0200\n"
+"POT-Creation-Date: 2016-09-25 10:43+0200\n"
+"PO-Revision-Date: 2016-09-25 10:43+0200\n"
"Last-Translator: Christian Schönebeck <christian.schoenebeck@gmail.com>\n"
"Language-Team: \n"
"Language: de\n"
"Schreibt Meldungen ins Systemprotokoll. Kritische Fehler werden immer in das "
"Systemprotokoll geschrieben."
-msgid ""
-"You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' package "
-"for DNS requests."
-msgstr ""
-"Sie sollten das Programmpakete 'bind-host' oder 'knot-host' oder 'drill' "
-"oder 'hostip' für DNS Anfragen installieren."
-
msgid ""
"You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' "
"package, if you need to specify a DNS server to detect your registered IP."
"syslog."
msgstr ""
-msgid ""
-"You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' package "
-"for DNS requests."
-msgstr ""
-
msgid ""
"You should install 'bind-host' or 'knot-host' or 'drill' or 'hostip' "
"package, if you need to specify a DNS server to detect your registered IP."
msgstr ""
msgid "Drop invalid packets"
-msgstr ""
+msgstr "Attiva"
msgid "Enable"
msgstr ""
msgstr ""
msgid "External IP address"
-msgstr ""
+msgstr "Indirizzo IP Esterno"
msgid "External port"
msgstr "Porta Esterna"
msgid "External zone"
-msgstr ""
+msgstr "Zona Esterna"
msgid "Extra arguments"
-msgstr ""
+msgstr "Comandi extra"
msgid "Firewall"
msgstr "Firewall"
msgid "Firewall - Custom Rules"
-msgstr ""
+msgstr "Firewall - Regole Personalizzate"
msgid "Firewall - Port Forwards"
-msgstr ""
+msgstr "Firewall - Inoltro Porte"
msgid "Firewall - Traffic Rules"
-msgstr ""
+msgstr "Firewall - Regole Traffico"
msgid "Firewall - Zone Settings"
msgstr "Firewall - Opzioni delle Zone"
msgstr ""
msgid "Forward"
-msgstr ""
+msgstr "Inoltra"
msgid "Forward to"
-msgstr ""
+msgstr "Inoltro a"
msgid "Friday"
msgstr ""
msgstr "Solo IPv6"
msgid "Input"
-msgstr ""
+msgstr "Ingresso"
msgid "Inter-Zone Forwarding"
msgstr ""
msgstr "Porta interna"
msgid "Internal zone"
-msgstr ""
+msgstr "Zona Interna"
msgid "Limit log messages"
msgstr ""
msgstr ""
msgid "Masquerading"
-msgstr ""
+msgstr "Dettagli"
msgid "Match"
msgstr ""
msgstr ""
msgid "New input rule"
-msgstr ""
+msgstr "Nuova regola di inoltro porta"
msgid "New port forward"
msgstr ""
msgid ""
"Port forwarding allows remote computers on the Internet to connect to a "
"specific computer or service within the private LAN."
-msgstr ""
+msgstr "L'inoltro delle porte permette ai computer in remoto su Internet di"
+"connettersi a uno specifico computer o servizio presente nella tua LAN privata"
msgid "Protocol"
msgstr "Protocollo"
msgid ""
"The firewall creates zones over your network interfaces to control network "
"traffic flow."
-msgstr ""
+msgstr "Il firewall crea delle zone nelle tue interfacce di rete per controllare"
+"il flusso del traffico."
msgid ""
"The options below control the forwarding policies between this zone (%s) and "
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Support for the Freifunk P2P-Block addon
-LUCI_DEPENDS:=+luci-app-firewall +freifunk-p2pblock
+LUCI_DEPENDS:=+luci-app-firewall +freifunk-p2pblock @BROKEN
include ../../luci.mk
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI PBX Administration Voicemail Support
-LUCI_DEPENDS:=+luci-app-pbx +asterisk18 +msmtp +coreutils-base64
+LUCI_DEPENDS:=+luci-app-pbx +asterisk18 +msmtp +coreutils-base64 @BROKEN
include ../../luci.mk
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI PBX Administration
-LUCI_DEPENDS:= \
+LUCI_DEPENDS:= @BROKEN \
+asterisk18 +asterisk18-app-authenticate +asterisk18-app-disa \
+asterisk18-app-setcallerid +asterisk18-app-system +asterisk18-chan-gtalk \
+asterisk18-codec-a-mu +asterisk18-codec-alaw +asterisk18-func-cut \
"Angenommenes serverseitiges Keep-Alive-Timeout (in Sekunden), falls nicht "
"vom Server festgelegt."
+msgid "Boot delay"
+msgstr ""
+
msgid "CGI user interface"
msgstr "Protokolliert die CGI Benutzer Schnittstelle"
msgid "Debug regular expression filters"
msgstr "Protokolliert Filter für reguläre Ausdrücke"
+msgid "Delay (in seconds) during system boot before Privoxy start"
+msgstr ""
+
msgid "Directory does not exist!"
msgstr "Verzeichnis existiert nicht!"
msgid "Disabled == Transparent Proxy Mode"
msgstr "Deaktiviert == Transparent Proxy Betrieb"
+msgid "Documentation"
+msgstr ""
+
+msgid "During delay ifup-events are not monitored !"
+msgstr ""
+
msgid "Enable proxy authentication forwarding"
msgstr "Aktivieren die Weiterleitung von Proxy-Authentifizierungen"
msgid "It is NOT recommended for the casual user."
msgstr "Es wird NICHT für den gelegentlichen Anwender empfohlen."
-msgid "Local Set-up"
-msgstr "Lokale Einstellungen"
-
msgid "Location of the Privoxy User Manual."
msgstr "Ort des Privoxy Benutzer Handbuches"
msgid "Miscellaneous"
msgstr "Verschiedenes"
+msgid "NOT installed"
+msgstr ""
+
msgid "No trailing '/', please."
msgstr "Bitte kein '/' am Ende."
"Only when using 'external filters', Privoxy has to create temporary files."
msgstr ""
+msgid "Please install current version !"
+msgstr ""
+
msgid "Please press [Read] button"
msgstr "Bitte Protokolldatei einlesen"
msgid "Show header parsing"
msgstr "Protokolliert das 'Header parsing'"
-msgid "Software update required"
-msgstr "Softwareaktualisierung nötig"
+msgid "Software package '%s' is not installed."
+msgstr ""
+
+msgid "Software package '%s' is outdated."
+msgstr ""
msgid "Start"
msgstr "Start"
msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
msgstr "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
+msgid "System"
+msgstr ""
+
msgid ""
"The actions file(s) to use. Multiple actionsfile lines are permitted, and "
"are in fact recommended!"
"Die Komprimierungsstufe (0-9), die der zlib-Bibliothek beim Komprimieren "
"gepufferten Inhaltes übergeben wird."
-msgid ""
-"The currently installed 'privoxy' package is not supported by LuCI "
-"application."
-msgstr ""
-"Das aktuell installierte 'privoxy' Paket wird von dieser LuCI Anwendung "
-"NICHT unterstützt."
-
msgid ""
"The directory where all logging takes place (i.e. where the logfile is "
"located)."
msgid "Value is not a number"
msgstr "Eingabe ist keine Zahl"
+msgid "Value not between 0 and 300"
+msgstr ""
+
msgid "Value not between 0 and 9"
msgstr "Wert nicht zwischen 0 und 9"
msgid "required"
msgstr "benötigt"
+
+#~ msgid "Local Set-up"
+#~ msgstr "Lokale Einstellungen"
+
+#~ msgid "Software update required"
+#~ msgstr "Softwareaktualisierung nötig"
+
+#~ msgid ""
+#~ "The currently installed 'privoxy' package is not supported by LuCI "
+#~ "application."
+#~ msgstr ""
+#~ "Das aktuell installierte 'privoxy' Paket wird von dieser LuCI Anwendung "
+#~ "NICHT unterstützt."
"server."
msgstr ""
+msgid "Boot delay"
+msgstr ""
+
msgid "CGI user interface"
msgstr "CGI-användargränssnitt"
msgid "Debug regular expression filters"
msgstr ""
+msgid "Delay (in seconds) during system boot before Privoxy start"
+msgstr ""
+
msgid "Directory does not exist!"
msgstr "Mappen finns inte!"
msgid "Disabled == Transparent Proxy Mode"
msgstr "Inaktiverad == "
+msgid "Documentation"
+msgstr ""
+
+msgid "During delay ifup-events are not monitored !"
+msgstr ""
+
msgid "Enable proxy authentication forwarding"
msgstr ""
msgid "It is NOT recommended for the casual user."
msgstr "Det är INTE rekommenderat för den vanliga användaren."
-msgid "Local Set-up"
-msgstr "Lokal installation"
-
msgid "Location of the Privoxy User Manual."
msgstr "Plats för Privoxy's användarmanual."
msgid "Miscellaneous"
msgstr "Diverse"
+msgid "NOT installed"
+msgstr ""
+
msgid "No trailing '/', please."
msgstr "Vänligen, inget eftersläpande '/'"
"Only when using 'external filters', Privoxy has to create temporary files."
msgstr ""
+msgid "Please install current version !"
+msgstr ""
+
msgid "Please press [Read] button"
msgstr "Vänligen tryck på [Läs]-knappen"
msgid "Show header parsing"
msgstr ""
-msgid "Software update required"
-msgstr "Uppdatering av mjukvara krävs"
+msgid "Software package '%s' is not installed."
+msgstr ""
+
+msgid "Software package '%s' is outdated."
+msgstr ""
msgid "Start"
msgstr "Starta"
msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
msgstr ""
+msgid "System"
+msgstr ""
+
msgid ""
"The actions file(s) to use. Multiple actionsfile lines are permitted, and "
"are in fact recommended!"
"buffered content."
msgstr ""
-msgid ""
-"The currently installed 'privoxy' package is not supported by LuCI "
-"application."
-msgstr ""
-
msgid ""
"The directory where all logging takes place (i.e. where the logfile is "
"located)."
msgid "Value is not a number"
msgstr "Värdet är inte ett nummer"
+msgid "Value not between 0 and 300"
+msgstr ""
+
msgid "Value not between 0 and 9"
msgstr "Värdet är inte mellan 0 och 9"
msgid "required"
msgstr "krävs"
+
+#~ msgid "Local Set-up"
+#~ msgstr "Lokal installation"
+
+#~ msgid "Software update required"
+#~ msgstr "Uppdatering av mjukvara krävs"
"server."
msgstr ""
+msgid "Boot delay"
+msgstr ""
+
msgid "CGI user interface"
msgstr ""
msgid "Debug regular expression filters"
msgstr ""
+msgid "Delay (in seconds) during system boot before Privoxy start"
+msgstr ""
+
msgid "Directory does not exist!"
msgstr ""
msgid "Disabled == Transparent Proxy Mode"
msgstr ""
+msgid "Documentation"
+msgstr ""
+
+msgid "During delay ifup-events are not monitored !"
+msgstr ""
+
msgid "Enable proxy authentication forwarding"
msgstr ""
msgid "It is NOT recommended for the casual user."
msgstr ""
-msgid "Local Set-up"
-msgstr ""
-
msgid "Location of the Privoxy User Manual."
msgstr ""
msgid "Miscellaneous"
msgstr ""
+msgid "NOT installed"
+msgstr ""
+
msgid "No trailing '/', please."
msgstr ""
"Only when using 'external filters', Privoxy has to create temporary files."
msgstr ""
+msgid "Please install current version !"
+msgstr ""
+
msgid "Please press [Read] button"
msgstr ""
msgid "Show header parsing"
msgstr ""
-msgid "Software update required"
+msgid "Software package '%s' is not installed."
+msgstr ""
+
+msgid "Software package '%s' is outdated."
msgstr ""
msgid "Start"
msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
msgstr ""
+msgid "System"
+msgstr ""
+
msgid ""
"The actions file(s) to use. Multiple actionsfile lines are permitted, and "
"are in fact recommended!"
"buffered content."
msgstr ""
-msgid ""
-"The currently installed 'privoxy' package is not supported by LuCI "
-"application."
-msgstr ""
-
msgid ""
"The directory where all logging takes place (i.e. where the logfile is "
"located)."
msgid "Value is not a number"
msgstr ""
+msgid "Value not between 0 and 300"
+msgstr ""
+
msgid "Value not between 0 and 9"
msgstr ""
-msgid ""\r
-msgstr ""\r
-"Project-Id-Version: luci-app-privoxy\n"\r
-"POT-Creation-Date: 2015-06-10 20:16+0100\n"\r
-"PO-Revision-Date: 2015-06-10 20:16+0100\n"\r
-"Last-Translator: maz-1 <ohmygod19993 at gmail dotcom>\n"\r
-"Language-Team: \n"\r
-"Language: zh-cn\n"\r
-"MIME-Version: 1.0\n"\r
-"Content-Type: text/plain; charset=UTF-8\n"\r
-"Content-Transfer-Encoding: 8bit\n"\r
-"X-Generator: Poedit 1.5.4\n"\r
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"\r
-"X-Poedit-SourceCharset: UTF-8\n"\r
-\r
-msgid ""\r
-"A URL to be displayed in the error page that users will see if access to an "\r
-"untrusted page is denied."\r
-msgstr ""\r
-"当用户试图访问不受信任的页面时,错误页面所显示的URL。"\r
-\r
-\r
-msgid ""\r
-"A URL to documentation about the local Privoxy setup, configuration or "\r
-"policies."\r
-msgstr ""\r
-"指向Privoxy安装、设置和规则说明文档的URL"\r
-\r
-\r
-msgid "A directory where Privoxy can create temporary files."\r
-msgstr "Privoxy存放临时文件的目录。"\r
-\r
-msgid "Access Control"\r
-msgstr "访问控制"\r
-\r
-msgid "Actions that are applied to all sites and maybe overruled later on."\r
-msgstr ""\r
-"作用在所有站点上的规则,可能被后面的规则覆盖。"\r
-\r
-\r
-msgid "An alternative directory where the templates are loaded from."\r
-msgstr "可选的目录,放在里面的模板会被加载。"\r
-\r
-msgid "An email address to reach the Privoxy administrator."\r
-msgstr "用于联系privoxy管理员的邮箱地址。"\r
-\r
-msgid ""\r
-"Assumed server-side keep-alive timeout (in seconds) if not specified by the "\r
-"server."\r
-msgstr ""\r
-"当服务端没有指定超时时间时假定的超时时间(单位秒)。"\r
-\r
-msgid "CGI user interface"\r
-msgstr "CGI用户界面"\r
-\r
-msgid "Common Log Format"\r
-msgstr "通用日志格式"\r
-\r
-msgid ""\r
-"Configure here the routing of HTTP requests through a chain of multiple "\r
-"proxies. Note that parent proxies can severely decrease your privacy level. "\r
-"Also specified here are SOCKS proxies."\r
-msgstr ""\r
-"在这里设置http请求所经过的多重代理链。"\r
-"注意父级代理可能严重降低你的隐私安全度。"\r
-"在这里还可以设置SOCKS代理。"\r
-\r
-msgid "Debug GIF de-animation"\r
-msgstr "GIF动画日志"\r
-\r
-msgid "Debug force feature"\r
-msgstr "force feature日志"\r
-\r
-msgid "Debug redirects"\r
-msgstr "重定向日志"\r
-\r
-msgid "Debug regular expression filters"\r
-msgstr "正则表达式日志"\r
-\r
-msgid "Directory does not exist!"\r
-msgstr "目录不存在!"\r
-\r
-msgid "Disabled == Transparent Proxy Mode"\r
-msgstr "禁用 == 透明代理模式"\r
-\r
-msgid "Enable proxy authentication forwarding"\r
-msgstr "允许转发代理认证"\r
-\r
-msgid ""\r
-"Enable/Disable autostart of Privoxy on system startup and interface events"\r
-msgstr ""\r
-"开启/关闭Privoxy在系统启动或者设置界面更改时自动启动。"\r
-\r
-msgid "Enable/Disable filtering when Privoxy starts."\r
-msgstr "Privoxy启动时开启/关闭过滤。"\r
-\r
-msgid "Enabled"\r
-msgstr "已开启"\r
-\r
-msgid ""\r
-"Enabling this option is NOT recommended if there is no parent proxy that "\r
-"requires authentication!"\r
-msgstr ""\r
-"父级代理不需要认证时不推荐开启这个选项!"\r
-\r
-msgid "File '%s' not found inside Configuration Directory"\r
-msgstr "文件 '%s' 没有在设置目录中找到!"\r
-\r
-msgid "File not found or empty"\r
-msgstr "文件不存在或为空"\r
-\r
-msgid "Files and Directories"\r
-msgstr "文件和目录"\r
-\r
-msgid "For help use link at the relevant option"\r
-msgstr ""\r
-"在相应选项下的连接可获取帮助。"\r
-\r
-msgid "Forwarding"\r
-msgstr "转发"\r
-\r
-msgid ""\r
-"If enabled, Privoxy hides the 'go there anyway' link. The user obviously "\r
-"should not be able to bypass any blocks."\r
-msgstr ""\r
-"如果启用,Privoxy会隐藏'go there anyway'链接。用户显然不应能绕过屏蔽。"\r
-\r
-msgid ""\r
-"If you intend to operate Privoxy for more users than just yourself, it might "\r
-"be a good idea to let them know how to reach you, what you block and why you "\r
-"do that, your policies, etc."\r
-msgstr ""\r
-"如果除了你还有其他用户通过privoxy连接,让他们知道如何联系你、什么内容被屏蔽了、"\r
-"你为什么要这么做、你所制定的规范等等是一个好主意。"\r
-\r
-msgid "Invalid email address"\r
-msgstr "邮箱地址无效"\r
-\r
-msgid "It is NOT recommended for the casual user."\r
-msgstr "不推荐新手使用。"\r
-\r
-msgid "Local Set-up"\r
-msgstr "本地设置"\r
-\r
-msgid "Location of the Privoxy User Manual."\r
-msgstr "Privoxy用户手册位置"\r
-\r
-msgid "Log File Viewer"\r
-msgstr "日志查看器"\r
-\r
-msgid "Log all data read from the network"\r
-msgstr "记录所有从网络接收的数据"\r
-\r
-msgid "Log all data written to the network"\r
-msgstr "记录所有发送给网络的数据"\r
-\r
-msgid "Log the applying actions"\r
-msgstr "记录被应用的规则"\r
-\r
-msgid ""\r
-"Log the destination for each request Privoxy let through. See also 'Debug "\r
-"1024'."\r
-msgstr ""\r
-"记录Privoxy所允许的所有请求。另请参考'Debug 1024'。"\r
-\r
-msgid ""\r
-"Log the destination for requests Privoxy didn't let through, and the reason "\r
-"why."\r
-msgstr ""\r
-"记录被Privoxy拒绝的请求目标以及拒绝原因。"\r
-\r
-msgid "Logging"\r
-msgstr "日志"\r
-\r
-msgid "Main actions file"\r
-msgstr "主要规则文件"\r
-\r
-msgid "Mandatory Input: No Data given!"\r
-msgstr "必需选项: 没有设置数据!"\r
-\r
-msgid "Mandatory Input: No Directory given!"\r
-msgstr "必需选项: 没有设置目录!"\r
-\r
-msgid "Mandatory Input: No File given!"\r
-msgstr "必需选项: 没有设置文件!"\r
-\r
-msgid "Mandatory Input: No Port given!"\r
-msgstr "必需选项: 没有设置端口!"\r
-\r
-msgid "Mandatory Input: No files given!"\r
-msgstr "必需选项: 没有设置文件!"\r
-\r
-msgid "Mandatory Input: No valid IPv4 address or host given!"\r
-msgstr ""\r
-"必需选项: 没有设置有效的IPV4地址或者主机!"\r
-\r
-msgid "Mandatory Input: No valid IPv6 address given!"\r
-msgstr "必需选项: 没有设置有效的IPV6地址!"\r
-\r
-msgid "Mandatory Input: No valid Port given!"\r
-msgstr "必需选项: 没有设置有效的端口!"\r
-\r
-msgid "Maximum number of client connections that will be served."\r
-msgstr "客户端数量上限。"\r
-\r
-msgid "Maximum size (in KB) of the buffer for content filtering."\r
-msgstr "内容过滤的最大缓冲(单位KB)。"\r
-\r
-msgid "Miscellaneous"\r
-msgstr "杂项"\r
-\r
-msgid "No trailing '/', please."\r
-msgstr "路径结尾不要加'/' ."\r
-\r
-msgid "Non-fatal errors - *we highly recommended enabling this*"\r
-msgstr ""\r
-"非致命性错误 - * 建议开启 *"\r
-\r
-msgid ""\r
-"Number of seconds after which a socket times out if no data is received."\r
-msgstr ""\r
-"socket连接未收到数据的超时时间。"\r
-\r
-msgid ""\r
-"Number of seconds after which an open connection will no longer be reused."\r
-msgstr ""\r
-"一个开放的连接不再重复使用的超时时间。"\r
-\r
-msgid ""\r
-"Only when using 'external filters', Privoxy has to create temporary files."\r
-msgstr ""\r
-"只有使用外置规则时,privoxy才需要创建临时文件。"\r
-\r
-msgid "Please press [Read] button"\r
-msgstr "请点击[读取]按钮"\r
-\r
-msgid "Please read Privoxy manual for details!"\r
-msgstr "请阅读Privoxy手册以了解详情!"\r
-\r
-msgid "Please update to the current version!"\r
-msgstr "请升级到当前版本!"\r
-\r
-msgid "Privoxy WEB proxy"\r
-msgstr "Privoxy 网络代理"\r
-\r
-msgid ""\r
-"Privoxy can (and normally does) use a number of other files for additional "\r
-"configuration, help and logging. This section of the configuration file "\r
-"tells Privoxy where to find those other files."\r
-msgstr ""\r
-"Privoxy可以使用其他一些文件用于附加设置,帮助和日志。这个区域用来告诉Privoxy从哪里找到这些文件。"\r
-\r
-msgid ""\r
-"Privoxy is a non-caching web proxy with advanced filtering capabilities for "\r
-"enhancing privacy, modifying web page data and HTTP headers, controlling "\r
-"access, and removing ads and other obnoxious Internet junk."\r
-msgstr ""\r
-"Privoxy是一个无缓存的网络代理,具有高级过滤功能,能够修改网页数据和HTTP头,控制访问,移除广告等。"\r
-\r
-msgid "Read / Reread log file"\r
-msgstr "读取/刷新日志文件"\r
-\r
-msgid "Show I/O status"\r
-msgstr "显示 I/O 状态"\r
-\r
-msgid "Show each connection status"\r
-msgstr "显示每个连接的状态"\r
-\r
-msgid "Show header parsing"\r
-msgstr "Show header parsing"\r
-\r
-msgid "Software update required"\r
-msgstr "需要升级软件"\r
-\r
-msgid "Start"\r
-msgstr "启动"\r
-\r
-msgid "Start / Stop"\r
-msgstr "启动 / 停止"\r
-\r
-msgid "Start/Stop Privoxy WEB Proxy"\r
-msgstr "启动/停止 Privoxy 网络代理"\r
-\r
-msgid "Startup banner and warnings."\r
-msgstr "启动标语和警告。"\r
-\r
-msgid "Syntax:"\r
-msgstr "格式:"\r
-\r
-msgid "Syntax: Client header names delimited by spaces."\r
-msgstr "格式: Client header names delimited by spaces."\r
-\r
-msgid "Syntax: target_pattern http_parent[:port]"\r
-msgstr "格式: target_pattern http_parent[:port]"\r
-\r
-msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"\r
-msgstr "格式: target_pattern socks_proxy[:port] http_parent[:port]"\r
-\r
-msgid ""\r
-"The actions file(s) to use. Multiple actionsfile lines are permitted, and "\r
-"are in fact recommended!"\r
-msgstr ""\r
-"所使用的规则文件。允许并且推荐使用多个规则文件。"\r
-\r
-msgid ""\r
-"The address and TCP port on which Privoxy will listen for client requests."\r
-msgstr ""\r
-"Privoxy接收客户端请求时监听的地址和TCP端口。"\r
-\r
-msgid ""\r
-"The compression level that is passed to the zlib library when compressing "\r
-"buffered content."\r
-msgstr ""\r
-"使用zlib压缩缓冲内容时的压缩级别。"\r
-\r
-msgid ""\r
-"The currently installed 'privoxy' package is not supported by LuCI "\r
-"application."\r
-msgstr ""\r
-"目前安装的privoxy版本不被luci支持。"\r
-\r
-msgid ""\r
-"The directory where all logging takes place (i.e. where the logfile is "\r
-"located)."\r
-msgstr "所有日志所在的目录。"\r
-\r
-msgid "The directory where the other configuration files are located."\r
-msgstr "其他设置文件所在的目录。"\r
-\r
-msgid ""\r
-"The filter files contain content modification rules that use regular "\r
-"expressions."\r
-msgstr ""\r
-"过滤文件包含了使用正则表达式编写的内容修改规则"\r
-\r
-msgid "The hostname shown on the CGI pages."\r
-msgstr "CGI页面显示的主机名。"\r
-\r
-msgid "The log file to use. File name, relative to log directory."\r
-msgstr ""\r
-"日志文件名称,与日志路径相对。"\r
-\r
-msgid "The order in which client headers are sorted before forwarding them."\r
-msgstr ""\r
-"转发数据前,client headers的排序。"\r
-\r
-msgid ""\r
-"The status code Privoxy returns for pages blocked with +handle-as-empty-"\r
-"document."\r
-msgstr ""\r
-"当页面因为handle-as-empty-document规则被阻止时返回的状态码(选上为200 OK,不选上为403 Forbidden)"\r
-\r
-msgid ""\r
-"The trust mechanism is an experimental feature for building white-lists and "\r
-"should be used with care."\r
-msgstr ""\r
-"信任机制是一个实验性的白名单特性,使用时应小心。"\r
-\r
-msgid ""\r
-"The value of this option only matters if the experimental trust mechanism "\r
-"has been activated."\r
-msgstr ""\r
-"只有开启了信任机制时这个选项的值才有效"\r
-\r
-msgid ""\r
-"This option is only there for debugging purposes. It will drastically reduce "\r
-"performance."\r
-msgstr ""\r
-"这个选项仅用于调试,开启后会极大地降低性能。"\r
-\r
-msgid ""\r
-"This option will be removed in future releases as it has been obsoleted by "\r
-"the more general header taggers."\r
-msgstr "这个选项在以后的版本中将被移除,因为它被header taggers所取代了。"\r
-\r
-msgid ""\r
-"This tab controls the security-relevant aspects of Privoxy's configuration."\r
-msgstr ""\r
-"这个标签用于设置与安全相关的Privoxy选项。"\r
-\r
-msgid ""\r
-"Through which SOCKS proxy (and optionally to which parent HTTP proxy) "\r
-"specific requests should be routed."\r
-msgstr ""\r
-"指定的请求应该通过哪一个SOCKS代理(并且通过哪一个HTTP父代理,可选)"\r
-\r
-msgid "To which parent HTTP proxy specific requests should be routed."\r
-msgstr ""\r
-"请求应转发至哪一个父级HTTP代理。"\r
-\r
-msgid "User customizations"\r
-msgstr "用户自定义"\r
-\r
-msgid "Value is not a number"\r
-msgstr "输入值不是数字"\r
-\r
-msgid "Value not between 0 and 9"\r
-msgstr "输入值不在0和9之间。"\r
-\r
-msgid "Value not between 1 and 4096"\r
-msgstr "输入值不在1和4096之间"\r
-\r
-msgid "Value not greater 0 or empty"\r
-msgstr "输入值为空或者不是大于零。"\r
-\r
-msgid "Value range 1 to 4096, no entry defaults to 4096"\r
-msgstr "输入值为1到4096,默认为4096"\r
-\r
-msgid "Version"\r
-msgstr "版本"\r
-\r
-msgid "Version Information"\r
-msgstr "版本信息"\r
-\r
-msgid "Whether intercepted requests should be treated as valid."\r
-msgstr "被拦截的请求是否应被当作有效的。"\r
-\r
-msgid ""\r
-"Whether or not Privoxy recognizes special HTTP headers to change toggle "\r
-"state."\r
-msgstr ""\r
-"Privoxy是否识别特殊的HTTP头以切换状态。"\r
-\r
-msgid "Whether or not buffered content is compressed before delivery."\r
-msgstr ""\r
-"缓冲内容在传递之前是否压缩。"\r
-\r
-msgid ""\r
-"Whether or not outgoing connections that have been kept alive should be "\r
-"shared between different incoming connections."\r
-msgstr ""\r
-"持久出站连接是否应在不同的入站连接之间共享。"\r
-\r
-msgid "Whether or not pipelined requests should be served."\r
-msgstr "是否处理管道化的请求。"\r
-\r
-msgid "Whether or not proxy authentication through Privoxy should work."\r
-msgstr "是否可以通过Privoxy进行代理验证。"\r
-\r
-msgid "Whether or not the web-based actions file editor may be used."\r
-msgstr "是否使用基于网页的规则编辑器。"\r
-\r
-msgid "Whether or not the web-based toggle feature may be used."\r
-msgstr "是否启用基于网页的切换功能。"\r
-\r
-msgid "Whether requests to Privoxy's CGI pages can be blocked or redirected."\r
-msgstr "访问Privoxy CGI页面的请求是否可以被拦截或重定向。"\r
-\r
-\r
-msgid ""\r
-"Whether the CGI interface should stay compatible with broken HTTP clients."\r
-msgstr ""\r
-"CGI界面是否应兼容过时的HTTP客户端。"\r
-\r
-msgid "Whether to run only one server thread."\r
-msgstr "是否只运行一个服务线程。"\r
-\r
-msgid "Who can access what."\r
-msgstr "谁可以访问什么。"\r
-\r
-msgid "installed"\r
-msgstr "已安装"\r
-\r
-msgid "or higher"\r
-msgstr "或更高"\r
-\r
-msgid "required"\r
-msgstr "需要"\r
+msgid ""
+msgstr ""
+"Project-Id-Version: luci-app-privoxy\n"
+"POT-Creation-Date: 2015-06-10 20:16+0100\n"
+"PO-Revision-Date: 2015-06-10 20:16+0100\n"
+"Last-Translator: maz-1 <ohmygod19993 at gmail dotcom>\n"
+"Language-Team: \n"
+"Language: zh-cn\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-SourceCharset: UTF-8\n"
+
+msgid ""
+"A URL to be displayed in the error page that users will see if access to an "
+"untrusted page is denied."
+msgstr "当用户试图访问不受信任的页面时,错误页面所显示的URL。"
+
+msgid ""
+"A URL to documentation about the local Privoxy setup, configuration or "
+"policies."
+msgstr "指向Privoxy安装、设置和规则说明文档的URL"
+
+msgid "A directory where Privoxy can create temporary files."
+msgstr "Privoxy存放临时文件的目录。"
+
+msgid "Access Control"
+msgstr "访问控制"
+
+msgid "Actions that are applied to all sites and maybe overruled later on."
+msgstr "作用在所有站点上的规则,可能被后面的规则覆盖。"
+
+msgid "An alternative directory where the templates are loaded from."
+msgstr "可选的目录,放在里面的模板会被加载。"
+
+msgid "An email address to reach the Privoxy administrator."
+msgstr "用于联系privoxy管理员的邮箱地址。"
+
+msgid ""
+"Assumed server-side keep-alive timeout (in seconds) if not specified by the "
+"server."
+msgstr "当服务端没有指定超时时间时假定的超时时间(单位秒)。"
+
+msgid "Boot delay"
+msgstr ""
+
+msgid "CGI user interface"
+msgstr "CGI用户界面"
+
+msgid "Common Log Format"
+msgstr "通用日志格式"
+
+msgid ""
+"Configure here the routing of HTTP requests through a chain of multiple "
+"proxies. Note that parent proxies can severely decrease your privacy level. "
+"Also specified here are SOCKS proxies."
+msgstr ""
+"在这里设置http请求所经过的多重代理链。注意父级代理可能严重降低你的隐私安全"
+"度。在这里还可以设置SOCKS代理。"
+
+msgid "Debug GIF de-animation"
+msgstr "GIF动画日志"
+
+msgid "Debug force feature"
+msgstr "force feature日志"
+
+msgid "Debug redirects"
+msgstr "重定向日志"
+
+msgid "Debug regular expression filters"
+msgstr "正则表达式日志"
+
+msgid "Delay (in seconds) during system boot before Privoxy start"
+msgstr ""
+
+msgid "Directory does not exist!"
+msgstr "目录不存在!"
+
+msgid "Disabled == Transparent Proxy Mode"
+msgstr "禁用 == 透明代理模式"
+
+msgid "Documentation"
+msgstr ""
+
+msgid "During delay ifup-events are not monitored !"
+msgstr ""
+
+msgid "Enable proxy authentication forwarding"
+msgstr "允许转发代理认证"
+
+msgid ""
+"Enable/Disable autostart of Privoxy on system startup and interface events"
+msgstr "开启/关闭Privoxy在系统启动或者设置界面更改时自动启动。"
+
+msgid "Enable/Disable filtering when Privoxy starts."
+msgstr "Privoxy启动时开启/关闭过滤。"
+
+msgid "Enabled"
+msgstr "已开启"
+
+msgid ""
+"Enabling this option is NOT recommended if there is no parent proxy that "
+"requires authentication!"
+msgstr "父级代理不需要认证时不推荐开启这个选项!"
+
+msgid "File '%s' not found inside Configuration Directory"
+msgstr "文件 '%s' 没有在设置目录中找到!"
+
+msgid "File not found or empty"
+msgstr "文件不存在或为空"
+
+msgid "Files and Directories"
+msgstr "文件和目录"
+
+msgid "For help use link at the relevant option"
+msgstr "在相应选项下的连接可获取帮助。"
+
+msgid "Forwarding"
+msgstr "转发"
+
+msgid ""
+"If enabled, Privoxy hides the 'go there anyway' link. The user obviously "
+"should not be able to bypass any blocks."
+msgstr "如果启用,Privoxy会隐藏'go there anyway'链接。用户显然不应能绕过屏蔽。"
+
+msgid ""
+"If you intend to operate Privoxy for more users than just yourself, it might "
+"be a good idea to let them know how to reach you, what you block and why you "
+"do that, your policies, etc."
+msgstr ""
+"如果除了你还有其他用户通过privoxy连接,让他们知道如何联系你、什么内容被屏蔽"
+"了、你为什么要这么做、你所制定的规范等等是一个好主意。"
+
+msgid "Invalid email address"
+msgstr "邮箱地址无效"
+
+msgid "It is NOT recommended for the casual user."
+msgstr "不推荐新手使用。"
+
+msgid "Location of the Privoxy User Manual."
+msgstr "Privoxy用户手册位置"
+
+msgid "Log File Viewer"
+msgstr "日志查看器"
+
+msgid "Log all data read from the network"
+msgstr "记录所有从网络接收的数据"
+
+msgid "Log all data written to the network"
+msgstr "记录所有发送给网络的数据"
+
+msgid "Log the applying actions"
+msgstr "记录被应用的规则"
+
+msgid ""
+"Log the destination for each request Privoxy let through. See also 'Debug "
+"1024'."
+msgstr "记录Privoxy所允许的所有请求。另请参考'Debug 1024'。"
+
+msgid ""
+"Log the destination for requests Privoxy didn't let through, and the reason "
+"why."
+msgstr "记录被Privoxy拒绝的请求目标以及拒绝原因。"
+
+msgid "Logging"
+msgstr "日志"
+
+msgid "Main actions file"
+msgstr "主要规则文件"
+
+msgid "Mandatory Input: No Data given!"
+msgstr "必需选项: 没有设置数据!"
+
+msgid "Mandatory Input: No Directory given!"
+msgstr "必需选项: 没有设置目录!"
+
+msgid "Mandatory Input: No File given!"
+msgstr "必需选项: 没有设置文件!"
+
+msgid "Mandatory Input: No Port given!"
+msgstr "必需选项: 没有设置端口!"
+
+msgid "Mandatory Input: No files given!"
+msgstr "必需选项: 没有设置文件!"
+
+msgid "Mandatory Input: No valid IPv4 address or host given!"
+msgstr "必需选项: 没有设置有效的IPV4地址或者主机!"
+
+msgid "Mandatory Input: No valid IPv6 address given!"
+msgstr "必需选项: 没有设置有效的IPV6地址!"
+
+msgid "Mandatory Input: No valid Port given!"
+msgstr "必需选项: 没有设置有效的端口!"
+
+msgid "Maximum number of client connections that will be served."
+msgstr "客户端数量上限。"
+
+msgid "Maximum size (in KB) of the buffer for content filtering."
+msgstr "内容过滤的最大缓冲(单位KB)。"
+
+msgid "Miscellaneous"
+msgstr "杂项"
+
+msgid "NOT installed"
+msgstr ""
+
+msgid "No trailing '/', please."
+msgstr "路径结尾不要加'/' ."
+
+msgid "Non-fatal errors - *we highly recommended enabling this*"
+msgstr "非致命性错误 - * 建议开启 *"
+
+msgid ""
+"Number of seconds after which a socket times out if no data is received."
+msgstr "socket连接未收到数据的超时时间。"
+
+msgid ""
+"Number of seconds after which an open connection will no longer be reused."
+msgstr "一个开放的连接不再重复使用的超时时间。"
+
+msgid ""
+"Only when using 'external filters', Privoxy has to create temporary files."
+msgstr "只有使用外置规则时,privoxy才需要创建临时文件。"
+
+msgid "Please install current version !"
+msgstr ""
+
+msgid "Please press [Read] button"
+msgstr "请点击[读取]按钮"
+
+msgid "Please read Privoxy manual for details!"
+msgstr "请阅读Privoxy手册以了解详情!"
+
+msgid "Please update to the current version!"
+msgstr "请升级到当前版本!"
+
+msgid "Privoxy WEB proxy"
+msgstr "Privoxy 网络代理"
+
+msgid ""
+"Privoxy can (and normally does) use a number of other files for additional "
+"configuration, help and logging. This section of the configuration file "
+"tells Privoxy where to find those other files."
+msgstr ""
+"Privoxy可以使用其他一些文件用于附加设置,帮助和日志。这个区域用来告诉Privoxy"
+"从哪里找到这些文件。"
+
+msgid ""
+"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
+"enhancing privacy, modifying web page data and HTTP headers, controlling "
+"access, and removing ads and other obnoxious Internet junk."
+msgstr ""
+"Privoxy是一个无缓存的网络代理,具有高级过滤功能,能够修改网页数据和HTTP头,控"
+"制访问,移除广告等。"
+
+msgid "Read / Reread log file"
+msgstr "读取/刷新日志文件"
+
+msgid "Show I/O status"
+msgstr "显示 I/O 状态"
+
+msgid "Show each connection status"
+msgstr "显示每个连接的状态"
+
+msgid "Show header parsing"
+msgstr "Show header parsing"
+
+msgid "Software package '%s' is not installed."
+msgstr ""
+
+msgid "Software package '%s' is outdated."
+msgstr ""
+
+msgid "Start"
+msgstr "启动"
+
+msgid "Start / Stop"
+msgstr "启动 / 停止"
+
+msgid "Start/Stop Privoxy WEB Proxy"
+msgstr "启动/停止 Privoxy 网络代理"
+
+msgid "Startup banner and warnings."
+msgstr "启动标语和警告。"
+
+msgid "Syntax:"
+msgstr "格式:"
+
+msgid "Syntax: Client header names delimited by spaces."
+msgstr "格式: Client header names delimited by spaces."
+
+msgid "Syntax: target_pattern http_parent[:port]"
+msgstr "格式: target_pattern http_parent[:port]"
+
+msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
+msgstr "格式: target_pattern socks_proxy[:port] http_parent[:port]"
+
+msgid "System"
+msgstr ""
+
+msgid ""
+"The actions file(s) to use. Multiple actionsfile lines are permitted, and "
+"are in fact recommended!"
+msgstr "所使用的规则文件。允许并且推荐使用多个规则文件。"
+
+msgid ""
+"The address and TCP port on which Privoxy will listen for client requests."
+msgstr "Privoxy接收客户端请求时监听的地址和TCP端口。"
+
+msgid ""
+"The compression level that is passed to the zlib library when compressing "
+"buffered content."
+msgstr "使用zlib压缩缓冲内容时的压缩级别。"
+
+msgid ""
+"The directory where all logging takes place (i.e. where the logfile is "
+"located)."
+msgstr "所有日志所在的目录。"
+
+msgid "The directory where the other configuration files are located."
+msgstr "其他设置文件所在的目录。"
+
+msgid ""
+"The filter files contain content modification rules that use regular "
+"expressions."
+msgstr "过滤文件包含了使用正则表达式编写的内容修改规则"
+
+msgid "The hostname shown on the CGI pages."
+msgstr "CGI页面显示的主机名。"
+
+msgid "The log file to use. File name, relative to log directory."
+msgstr "日志文件名称,与日志路径相对。"
+
+msgid "The order in which client headers are sorted before forwarding them."
+msgstr "转发数据前,client headers的排序。"
+
+msgid ""
+"The status code Privoxy returns for pages blocked with +handle-as-empty-"
+"document."
+msgstr ""
+"当页面因为handle-as-empty-document规则被阻止时返回的状态码(选上为200 OK,不"
+"选上为403 Forbidden)"
+
+msgid ""
+"The trust mechanism is an experimental feature for building white-lists and "
+"should be used with care."
+msgstr "信任机制是一个实验性的白名单特性,使用时应小心。"
+
+msgid ""
+"The value of this option only matters if the experimental trust mechanism "
+"has been activated."
+msgstr "只有开启了信任机制时这个选项的值才有效"
+
+msgid ""
+"This option is only there for debugging purposes. It will drastically reduce "
+"performance."
+msgstr "这个选项仅用于调试,开启后会极大地降低性能。"
+
+msgid ""
+"This option will be removed in future releases as it has been obsoleted by "
+"the more general header taggers."
+msgstr "这个选项在以后的版本中将被移除,因为它被header taggers所取代了。"
+
+msgid ""
+"This tab controls the security-relevant aspects of Privoxy's configuration."
+msgstr "这个标签用于设置与安全相关的Privoxy选项。"
+
+msgid ""
+"Through which SOCKS proxy (and optionally to which parent HTTP proxy) "
+"specific requests should be routed."
+msgstr "指定的请求应该通过哪一个SOCKS代理(并且通过哪一个HTTP父代理,可选)"
+
+msgid "To which parent HTTP proxy specific requests should be routed."
+msgstr "请求应转发至哪一个父级HTTP代理。"
+
+msgid "User customizations"
+msgstr "用户自定义"
+
+msgid "Value is not a number"
+msgstr "输入值不是数字"
+
+msgid "Value not between 0 and 300"
+msgstr ""
+
+msgid "Value not between 0 and 9"
+msgstr "输入值不在0和9之间。"
+
+msgid "Value not between 1 and 4096"
+msgstr "输入值不在1和4096之间"
+
+msgid "Value not greater 0 or empty"
+msgstr "输入值为空或者不是大于零。"
+
+msgid "Value range 1 to 4096, no entry defaults to 4096"
+msgstr "输入值为1到4096,默认为4096"
+
+msgid "Version"
+msgstr "版本"
+
+msgid "Version Information"
+msgstr "版本信息"
+
+msgid "Whether intercepted requests should be treated as valid."
+msgstr "被拦截的请求是否应被当作有效的。"
+
+msgid ""
+"Whether or not Privoxy recognizes special HTTP headers to change toggle "
+"state."
+msgstr "Privoxy是否识别特殊的HTTP头以切换状态。"
+
+msgid "Whether or not buffered content is compressed before delivery."
+msgstr "缓冲内容在传递之前是否压缩。"
+
+msgid ""
+"Whether or not outgoing connections that have been kept alive should be "
+"shared between different incoming connections."
+msgstr "持久出站连接是否应在不同的入站连接之间共享。"
+
+msgid "Whether or not pipelined requests should be served."
+msgstr "是否处理管道化的请求。"
+
+msgid "Whether or not proxy authentication through Privoxy should work."
+msgstr "是否可以通过Privoxy进行代理验证。"
+
+msgid "Whether or not the web-based actions file editor may be used."
+msgstr "是否使用基于网页的规则编辑器。"
+
+msgid "Whether or not the web-based toggle feature may be used."
+msgstr "是否启用基于网页的切换功能。"
+
+msgid "Whether requests to Privoxy's CGI pages can be blocked or redirected."
+msgstr "访问Privoxy CGI页面的请求是否可以被拦截或重定向。"
+
+msgid ""
+"Whether the CGI interface should stay compatible with broken HTTP clients."
+msgstr "CGI界面是否应兼容过时的HTTP客户端。"
+
+msgid "Whether to run only one server thread."
+msgstr "是否只运行一个服务线程。"
+
+msgid "Who can access what."
+msgstr "谁可以访问什么。"
+
+msgid "installed"
+msgstr "已安装"
+
+msgid "or higher"
+msgstr "或更高"
+
+msgid "required"
+msgstr "需要"
+
+#~ msgid "Local Set-up"
+#~ msgstr "本地设置"
+
+#~ msgid "Software update required"
+#~ msgstr "需要升级软件"
+
+#~ msgid ""
+#~ "The currently installed 'privoxy' package is not supported by LuCI "
+#~ "application."
+#~ msgstr "目前安装的privoxy版本不被luci支持。"
LUCI_TITLE:=LuCI Statistics Application
LUCI_DEPENDS:= \
+collectd +rrdtool1 +collectd-mod-rrdtool +collectd-mod-iwinfo \
+ +collectd-mod-cpu +collectd-mod-memory \
+collectd-mod-interface +collectd-mod-load +collectd-mod-network
include ../../luci.mk
option enable '0'
config statistics 'collectd_cpu'
- option enable '0'
+ option enable '1'
config statistics 'collectd_df'
option enable '0'
option enable '1'
config statistics 'collectd_memory'
- option enable '0'
+ option enable '1'
config statistics 'collectd_netlink'
option enable '0'
CATEGORY:=LuCI
SUBMENU:=9. Freifunk
TITLE:=Freifunk p2pblock Addon
- DEPENDS:=+iptables-mod-filter +iptables-mod-ipp2p +l7-protocols +iptables-mod-conntrack-extra
+ DEPENDS:=+iptables-mod-filter +iptables-mod-ipp2p +l7-protocols +iptables-mod-conntrack-extra @BROKEN
endef
define Package/freifunk-p2pblock/description
local _protocols = { }
-local _interfaces, _bridge, _switch, _tunnel
+local _interfaces, _bridge, _switch, _tunnel, _swtopo
local _ubusnetcache, _ubusdevcache, _ubuswificache
local _uci
return false
end
-
function init(cursor)
_uci = cursor or _uci or uci.cursor()
_bridge = { }
_switch = { }
_tunnel = { }
+ _swtopo = { }
_ubusnetcache = { }
_ubusdevcache = { }
local n, i
for n, i in ipairs(nxo.getifaddrs()) do
local name = i.name:match("[^:]+")
- local prnt = name:match("^([^%.]+)%.")
if _iface_virtual(name) then
_tunnel[name] = true
ip6addrs = { }
}
- if prnt then
- _switch[name] = true
- _switch[prnt] = true
- end
-
if i.family == "packet" then
_interfaces[name].flags = i.flags
_interfaces[name].stats = i.data
end
end
+ -- read switch topology
+ local boardinfo = jsc.parse(nfs.readfile("/etc/board.json") or "")
+ if type(boardinfo) == "table" and type(boardinfo.switch) == "table" then
+ local switch, layout
+ for switch, layout in pairs(boardinfo.switch) do
+ if type(layout) == "table" and type(layout.ports) == "table" then
+ local _, port
+ local ports = { }
+ local nports = { }
+ local netdevs = { }
+
+ for _, port in ipairs(layout.ports) do
+ if type(port) == "table" and
+ type(port.num) == "number" and
+ (type(port.role) == "string" or
+ type(port.device) == "string")
+ then
+ local spec = {
+ num = port.num,
+ role = port.role or "cpu",
+ index = port.index or port.num
+ }
+
+ if port.device then
+ spec.device = port.device
+ spec.tagged = port.need_tag
+ netdevs[tostring(port.num)] = port.device
+ end
+
+ ports[#ports+1] = spec
+
+ if port.role then
+ nports[port.role] = (nports[port.role] or 0) + 1
+ end
+ end
+ end
+
+ table.sort(ports, function(a, b)
+ if a.role ~= b.role then
+ return (a.role < b.role)
+ end
+
+ return (a.index < b.index)
+ end)
+
+ local pnum, role
+ for _, port in ipairs(ports) do
+ if port.role ~= role then
+ role = port.role
+ pnum = 1
+ end
+
+ if role == "cpu" then
+ port.label = "CPU (%s)" % port.device
+ elseif nports[role] > 1 then
+ port.label = "%s %d" %{ role:upper(), pnum }
+ pnum = pnum + 1
+ else
+ port.label = role:upper()
+ end
+
+ port.role = nil
+ port.index = nil
+ end
+
+ _swtopo[switch] = {
+ ports = ports,
+ netdevs = netdevs
+ }
+ end
+ end
+ end
+
return _M
end
end
end
-local function swdev_from_board_json()
- local boardinfo = jsc.parse(nfs.readfile("/etc/board.json") or "")
- if type(boardinfo) == "table" and type(boardinfo.network) == "table" then
- local net, val
- for net, val in pairs(boardinfo.network) do
- if type(val) == "table" and type(val.ifname) == "string" and
- val.create_vlan == true
- then
- return val.ifname
- end
- end
- end
- return nil
-end
-
function get_interfaces(self)
local iface
local ifaces = { }
- local seen = { }
local nfs = { }
- local baseof = { }
-- find normal interfaces
_uci:foreach("network", "interface",
function(s)
for iface in utl.imatch(s.ifname) do
if not _iface_ignore(iface) and not _iface_virtual(iface) and not _wifi_iface(iface) then
- seen[iface] = true
nfs[iface] = interface(iface)
end
end
end)
for iface in utl.kspairs(_interfaces) do
- if not (seen[iface] or _iface_ignore(iface) or _iface_virtual(iface) or _wifi_iface(iface)) then
+ if not (nfs[iface] or _iface_ignore(iface) or _iface_virtual(iface) or _wifi_iface(iface)) then
nfs[iface] = interface(iface)
end
end
-- find vlan interfaces
_uci:foreach("network", "switch_vlan",
function(s)
- if not s.device then
+ if type(s.ports) ~= "string" or
+ type(s.device) ~= "string" or
+ type(_swtopo[s.device]) ~= "table"
+ then
return
end
- local base = baseof[s.device]
- if not base then
- if not s.device:match("^eth%d") then
- local l
- for l in utl.execi("swconfig dev %q help 2>/dev/null" % s.device) do
- if not base then
- base = l:match("^%w+: (%w+)")
- end
+ local pnum, ptag
+ for pnum, ptag in s.ports:gmatch("(%d+)([tu]?)") do
+ local netdev = _swtopo[s.device].netdevs[pnum]
+ if netdev then
+ if not nfs[netdev] then
+ nfs[netdev] = interface(netdev)
end
- if not base or not base:match("^eth%d") then
- base = swdev_from_board_json() or "eth0"
+ _switch[netdev] = true
+
+ if ptag == "t" then
+ local vid = tonumber(s.vid or s.vlan)
+ if vid ~= nil and vid >= 0 and vid <= 4095 then
+ local iface = "%s.%d" %{ netdev, vid }
+ if not nfs[iface] then
+ nfs[iface] = interface(iface)
+ end
+ _switch[iface] = true
+ end
end
- else
- base = s.device
- end
- baseof[s.device] = base
- end
-
- local vid = tonumber(s.vid or s.vlan)
- if vid ~= nil and vid >= 0 and vid <= 4095 then
- local iface = "%s.%d" %{ base, vid }
- if not seen[iface] then
- seen[iface] = true
- nfs[iface] = interface(iface)
end
end
end)
return stat and interface(stat.l3_device or stat.device)
end
+function get_switch_topologies(self)
+ return _swtopo
+end
+
function network(name, proto)
if name then
elseif x == "switch" then
return lng.translate("Ethernet Switch")
elseif x == "vlan" then
- return lng.translate("VLAN Interface")
+ if _switch[self.ifname] then
+ return lng.translate("Switch VLAN")
+ else
+ return lng.translate("Software VLAN")
+ end
elseif x == "tunnel" then
return lng.translate("Tunnel Interface")
else
<%+header%>
<form method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
+ <%- if fuser then %>
+ <div class="errorbox"><%:Invalid username and/or password! Please try again.%></div>
+ <% end -%>
+
<div class="cbi-map">
<h2 name="content"><%:Authorization Required%></h2>
<div class="cbi-map-descr">
<%:Please enter your username and password.%>
- <%- if fuser then %>
- <div class="error"><%:Invalid username and/or password! Please try again.%></div>
- <br />
- <% end -%>
</div>
<fieldset class="cbi-section"><fieldset class="cbi-section-node">
<div class="cbi-value">
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(finestra de %d minuts, interval de %d segons)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Ús de CPU (%)"
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr "Estatus de port"
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Programari"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "No es pot desar els valors perquè alguns camps estan invàlids!"
msgid "Switch %q (%s)"
msgstr "Commutador %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Protocol de commutador"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interfície VLAN"
-
msgid "VLANs on %q"
msgstr "VLANs en %q"
msgid "Write received DNS requests to syslog"
msgstr "Escriure les peticions DNS rebudes al syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Suport XR"
msgid "« Back"
msgstr "« Enrere"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interfície VLAN"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d minutové okno, %d sekundový interval)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Vytížení CPU (%)"
msgid "External system log server port"
msgstr "Port externího protokolovacího serveru"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Port %d je neoznačený ve více VLAN!"
-
msgid "Port status:"
msgstr "Stav portu:"
msgid "Run filesystem check"
msgstr "Spustit kontrolu souborového systému"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Software"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Některá pole obsahují neplatné hodnoty, nelze uložit!"
msgid "Switch %q (%s)"
msgstr "Směrovač číslo %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Směrovací protokol"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Rozhraní VLAN"
-
msgid "VLANs on %q"
msgstr "VLANy na %q"
msgid "Write received DNS requests to syslog"
msgstr "Zapisovat přijaté požadavky DNS do systemového logu"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Podpora XR"
msgid "« Back"
msgstr "« Zpět"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Port %d je neoznačený ve více VLAN!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Rozhraní VLAN"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d Minuten Abschnitt, %d Sekunden Intervall)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "Prozessor"
-
msgid "CPU usage (%)"
msgstr "CPU-Nutzung (%)"
msgid "External system log server port"
msgstr "Externer Protokollserver Port"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Port %d ist untagged in mehreren VLANs!"
-
msgid "Port status:"
msgstr "Port-Status:"
msgid "Run filesystem check"
msgstr "Dateisystemprüfung durchführen"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Paketverwaltung"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Einige Felder sind ungültig, kann das Formular nicht speichern!"
msgid "Switch %q (%s)"
msgstr "Switch %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Wechsle Protokoll"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLAN Schnittstelle"
-
msgid "VLANs on %q"
msgstr "VLANs auf %q"
msgid "Write received DNS requests to syslog"
msgstr "Empfangene DNS-Anfragen in das Systemprotokoll schreiben"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "XR-Unterstützung"
msgid "« Back"
msgstr "« Zurück"
+
+#~ msgid "CPU"
+#~ msgstr "Prozessor"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Port %d ist untagged in mehreren VLANs!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLAN Schnittstelle"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.4\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(παράθυρο %d λεπτών, διάστημα %d δευτερολέπτων)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr "Χρήση CPU (%)"
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr "Θύρα"
-msgid "Port %d"
-msgstr "Θύρα %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr "Εκτέλεση ελέγχου συστήματος αρχείων"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Λογισμικό"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Κάποια πεδία δεν είναι έγκυρα, δεν μπορούν να αποθηκευτούν οι τιμές!"
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Διεπαφή VLAN"
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr "Καταγραφή των ληφθέντων DNS αιτήσεων στο syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Υποστήριξη XR"
msgid "« Back"
msgstr "« Πίσω"
+
+#~ msgid "Port %d"
+#~ msgstr "Θύρα %d"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Διεπαφή VLAN"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.4\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d minute window, %d second interval)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "CPU usage (%)"
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Software"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "XR Support"
msgid "« Back"
msgstr "« Back"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(ventana de %d minutos, intervalo de %d segundos)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Uso de CPU (%)"
msgid "External system log server port"
msgstr "Puerto del servidor externo de registro del sistema"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Puerto"
-msgid "Port %d"
-msgstr "Puerto %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "¡El puerto %d está desmarcado en múltiples VLANs!"
-
msgid "Port status:"
msgstr "Estado del puerto:"
msgid "Run filesystem check"
msgstr "Comprobar el sistema de ficheros"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Instalación de programas"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Algunos campos no son válidos, ¡no se pueden guardar!"
msgid "Switch %q (%s)"
msgstr "Switch %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Intercambiar protocolo"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interfaz VLAN"
-
msgid "VLANs on %q"
msgstr "VLANs en %q"
msgid "Write received DNS requests to syslog"
msgstr "Escribir las peticiones de DNS recibidas en el registro del sistema"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Soporte de XR"
msgid "« Back"
msgstr "« Volver"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Puerto %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "¡El puerto %d está desmarcado en múltiples VLANs!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interfaz VLAN"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(fenêtre de %d minutes, intervalle de %d secondes)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Utilisation CPU (%)"
msgid "External system log server port"
msgstr "Port du serveur distant de journaux système"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Le port %d n'est pas marqué dans plusieurs VLANs !"
-
msgid "Port status:"
msgstr "Statut du port :"
msgid "Run filesystem check"
msgstr "Faire une vérification du système de fichiers"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Logiciels"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Certains champs sont invalides, ne peut sauvegarder les valeurs !"
msgid "Switch %q (%s)"
msgstr "Commutateur %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Protocole du commutateur"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interface du VLAN"
-
msgid "VLANs on %q"
msgstr "VLANs sur %q"
msgid "Write received DNS requests to syslog"
msgstr "Écrire les requêtes DNS reçues dans syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Gestion du mode XR"
msgid "« Back"
msgstr "« Retour"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Le port %d n'est pas marqué dans plusieurs VLANs !"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interface du VLAN"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr ""
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "מעבד"
-
msgid "CPU usage (%)"
msgstr "שימוש מעבד (%)"
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr ""
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr "הרץ בדיקת מערכת קבצים"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "תוכנה"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "חלק מהשדות אינם תקינים, אין אפשרות לשמור את הערכים!"
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr ""
msgid "« Back"
msgstr "<< אחורה"
+
+#~ msgid "CPU"
+#~ msgstr "מעבד"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d perces ablak, %d másodperces intervallum)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "Processzor"
-
msgid "CPU usage (%)"
msgstr "Processzor használat (%)"
msgid "External system log server port"
msgstr "Külső rendszernapló kiszolgáló port"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "A %d port egyszerre több VLAN-ban is cimkézetlen!"
-
msgid "Port status:"
msgstr "Port állapot:"
msgid "Run filesystem check"
msgstr "Fájlrendszer ellenőrzés futtatása"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Szoftver"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Néhán mező érvénytelen, az értékek nem menthetők!"
msgid "Switch %q (%s)"
msgstr "Kapcsoló %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Protokoll csere"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLAN interfész"
-
msgid "VLANs on %q"
msgstr "VLAN-ok %q-n"
msgid "Write received DNS requests to syslog"
msgstr "A kapott DNS kéréseket írja a rendszernaplóba"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "XR támogatás"
msgid "« Back"
msgstr "« Vissza"
+
+#~ msgid "CPU"
+#~ msgstr "Processzor"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "A %d port egyszerre több VLAN-ban is cimkézetlen!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLAN interfész"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.6.10\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d finestra in minuti , %d secondi intervallo)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Uso CPU (%)"
msgid "External system log server port"
msgstr "Porta Server Log di Sistema esterno"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgstr ""
msgid "Global network options"
-msgstr ""
+msgstr "Opzioni rete globale"
msgid "Go to password configuration..."
msgstr "Vai alla configurazione della password..."
msgstr "Tempo di Inattività"
msgid "Inbound:"
-msgstr "in entrata:"
+msgstr "In entrata:"
msgid "Info"
msgstr "Informazioni"
msgstr "Server L2TP"
msgid "LCP echo failure threshold"
-msgstr "fallimento soglia echo LCP"
+msgstr "Fallimento soglia echo LCP"
msgid "LCP echo interval"
msgstr "Intervallo echo LCP"
msgstr "Login"
msgid "Logout"
-msgstr "Logout"
+msgstr "Slogga"
msgid "Loss of Signal Seconds (LOSS)"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgstr ""
msgid "Network without interfaces."
-msgstr ""
+msgstr "Rete senza interfaccia"
msgid "Next »"
msgstr "Prossimo »"
msgstr ""
msgid "Outbound:"
-msgstr ""
+msgstr "In uscita:"
msgid "Outdoor Channels"
msgstr ""
msgstr ""
msgid "Override MTU"
-msgstr ""
+msgstr "Sovrascivi MTU"
msgid "Override default interface name"
msgstr ""
msgid "Port"
msgstr "Porta"
-msgid "Port %d"
-msgstr "Porta %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Software"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Alcuni campi non sono validi, non è possibile salvare i valori!"
msgid "Switch %q (%s)"
msgstr "Switch %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Cambia protocollo"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interfaccia VLAN"
-
msgid "VLANs on %q"
msgstr "VLANs su %q"
msgid "Write received DNS requests to syslog"
msgstr "Scrittura delle richiesta DNS ricevute nel syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Supporto XR"
msgid "« Back"
msgstr "« Indietro"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Porta %d"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interfaccia VLAN"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d 分幅, %d 秒間隔)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "CPU使用率 (%)"
msgid "External system log server port"
msgstr "外部システムログ・サーバーポート"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "ポート"
-msgid "Port %d"
-msgstr "ポート %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr "ポート ステータス:"
msgid "Run filesystem check"
msgstr "ファイルシステムチェックを行う"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "ソフトウェア"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "無効な値が設定されているフィールドがあるため、保存できません。"
msgid "Switch %q (%s)"
msgstr "スイッチ %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "プロトコルの切り替え"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLANインターフェース"
-
msgid "VLANs on %q"
msgstr "%q上のVLANs"
msgid "Write received DNS requests to syslog"
msgstr "受信したDNSリクエストをsyslogへ記録します"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "XRサポート"
msgid "« Back"
msgstr "« 戻る"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "ポート %d"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLANインターフェース"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Translate Toolkit 1.1.1\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr ""
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr "Penggunaan CPU (%)"
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Perisian"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Sokongan XR"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d minutters vindu, %d sekunds intervall)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "CPU forbruk (%)"
msgid "External system log server port"
msgstr "Ekstern systemlogg server port"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Port %d er utagget i flere VLANs!"
-
msgid "Port status:"
msgstr "Port status:"
msgid "Run filesystem check"
msgstr "Kjør filsystem sjekk"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Programvare"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Noen felt er ugyldige, kan ikke lagre verdier!"
msgid "Switch %q (%s)"
msgstr "Svitsj %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Svitsj protokoll"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLAN grensesnitt"
-
msgid "VLANs on %q"
msgstr "VLANs på %q"
msgid "Write received DNS requests to syslog"
msgstr "Skriv mottatte DNS forespørsler til syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "XR Støtte"
msgid "« Back"
msgstr "« Tilbake"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Port %d er utagget i flere VLANs!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLAN grensesnitt"
"|| n%100>=20) ? 1 : 2);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(okno %d minut, interwał %d sekund)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Użycie CPU (%)"
msgid "External system log server port"
msgstr "Port zewnętrznego serwera dla loga systemowego"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Port %d jest nietagowany w wielu VLAN`ach!"
-
msgid "Port status:"
msgstr "Status portu:"
msgid "Run filesystem check"
msgstr "Sprawdź czy system plików nie zawiera błędów"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Oprogramowanie"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Wartości pewnych pól są niewłaściwe, nie mogę ich zachować!"
msgid "Switch %q (%s)"
msgstr "Przełącznik %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Protokół przełącznika"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interfejs VLAN"
-
msgid "VLANs on %q"
msgstr "Sieci VLAN na %q"
msgid "Write received DNS requests to syslog"
msgstr "Zapisz otrzymane żądania DNS do syslog'a"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Wsparcie XR"
msgid "« Back"
msgstr "« Wróć"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Port %d jest nietagowany w wielu VLAN`ach!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interfejs VLAN"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(janela de %d minutos, intervalo de %d segundos)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Uso da CPU (%)"
msgid "External system log server port"
msgstr "Porta do servidor externo de registro do sistema (syslog)"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Porta"
-msgid "Port %d"
-msgstr "Porta %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Porta %d está sem etiqueta para mútliplas VLANs!"
-
msgid "Port status:"
msgstr "Status da porta"
msgid "Run filesystem check"
msgstr "Execute a verificação do sistema de arquivos "
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Software"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Alguns campos estão inválidos e os valores não podem ser salvos!"
msgid "Switch %q (%s)"
msgstr "Switch %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Trocar o protocolo"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interface VLAN"
-
msgid "VLANs on %q"
msgstr "VLANs em %q"
msgid "Write received DNS requests to syslog"
msgstr "Escreva as requisições DNS para o servidor de registro (syslog)"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Suporte a XR"
msgid "« Back"
msgstr "« Voltar"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Porta %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Porta %d está sem etiqueta para mútliplas VLANs!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interface VLAN"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(janela de %d minutos, intervalo de %d segundos)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "Uso da CPU (%)"
msgid "External system log server port"
msgstr "Porta do Servidor externo de logs de sistema"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "Porta"
-msgid "Port %d"
-msgstr "Porta %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr "Estado da porta:"
msgid "Run filesystem check"
msgstr "Correr uma verificação do sistema de ficheiros"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Software"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Alguns campos são inválidos, não é possível gravar valores!"
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interface VLAN"
-
msgid "VLANs on %q"
msgstr "VLANs em %q"
msgid "Write received DNS requests to syslog"
msgstr "Escrever os pedidos de DNS para o syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Suporte XR"
msgid "« Back"
msgstr "« Voltar"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "Porta %d"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interface VLAN"
"20)) ? 1 : 2);;\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d fereastra minute, %d interval secunde)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "Procesor"
-
msgid "CPU usage (%)"
msgstr "Utilizarea procesorului (%)"
msgid "External system log server port"
msgstr "Portul serverului de log-uri extern"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr "Port"
-msgid "Port %d"
-msgstr "Port %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr "Stare port:"
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Software"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Interfata VLAN"
-
msgid "VLANs on %q"
msgstr "VLANuri pe %q"
msgid "Write received DNS requests to syslog"
msgstr "Scrie cererile DNS primite in syslog"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Suport XR"
msgid "« Back"
msgstr "« Inapoi"
+
+#~ msgid "CPU"
+#~ msgstr "Procesor"
+
+#~ msgid "Port %d"
+#~ msgstr "Port %d"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Interfata VLAN"
"X-Generator: Pootle 2.0.6\n"
"X-Poedit-SourceCharset: UTF-8\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d минутное окно, %d секундный интервал)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "ЦП"
-
msgid "CPU usage (%)"
msgstr "Загрузка ЦП (%)"
msgid "External system log server port"
msgstr "Порт сервера системного журнала"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "МБ/с"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "МГц"
msgid "Port"
msgstr "Порт"
-msgid "Port %d"
-msgstr "Порт %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Порт %d нетегирован в нескольких VLANах!"
-
msgid "Port status:"
msgstr "Состояние порта:"
msgid "Run filesystem check"
msgstr "Проверять файловую систему"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Программное обеспечение"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Некоторые значения полей недопустимы, невозможно сохранить информацию!"
msgid "Switch %q (%s)"
msgstr "Коммутатор %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Изменить протокол"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "Интерфейс VLAN"
-
msgid "VLANs on %q"
msgstr "VLANы на %q"
msgid "Write received DNS requests to syslog"
msgstr "Записывать полученные DNS-запросы в системный журнал"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Поддержка XR"
msgid "« Back"
msgstr "« Назад"
+
+#~ msgid "CPU"
+#~ msgstr "ЦП"
+
+#~ msgid "Port %d"
+#~ msgstr "Порт %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Порт %d нетегирован в нескольких VLANах!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "Интерфейс VLAN"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr ""
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr ""
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr ""
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr ""
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr ""
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr ""
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr ""
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr ""
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr ""
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr ""
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d dakika gösteriliyor, %d saniye aralıklı)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr ""
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr ""
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr ""
"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d-хвилинне вікно, %d-секундний інтервал)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "ЦП"
-
msgid "CPU usage (%)"
msgstr "Завантаження ЦП, %"
msgid "External system log server port"
msgstr "Порт зовнішнього сервера системного журналу"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MБ/с"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "МГц"
msgid "Port"
msgstr "Порт"
-msgid "Port %d"
-msgstr "Порт %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "Порт %d нетегований у кількох VLAN-ах!"
-
msgid "Port status:"
msgstr "Статус порту:"
msgid "Run filesystem check"
msgstr "Виконати перевірку файлової системи"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Програмне забезпечення"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "Деякі поля є неприпустимими, неможливо зберегти значення!"
msgid "Switch %q (%s)"
msgstr "Комутатор %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "Протокол комутатора"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLAN-інтерфейс"
-
msgid "VLANs on %q"
msgstr "VLAN на %q"
msgid "Write received DNS requests to syslog"
msgstr "Записувати отримані DNS-запити до системного журналу"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Підтримка XR"
msgid "« Back"
msgstr "« Назад"
+
+#~ msgid "CPU"
+#~ msgstr "ЦП"
+
+#~ msgid "Port %d"
+#~ msgstr "Порт %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "Порт %d нетегований у кількох VLAN-ах!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLAN-інтерфейс"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Pootle 1.1.0\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr ""
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr ""
-
msgid "CPU usage (%)"
msgstr "CPU usage (%)"
msgid "External system log server port"
msgstr ""
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr ""
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr ""
msgid "Port"
msgstr "Cửa "
-msgid "Port %d"
-msgstr ""
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr ""
-
msgid "Port status:"
msgstr ""
msgid "Run filesystem check"
msgstr ""
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "Phần mềm"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr ""
msgid "Switch %q (%s)"
msgstr ""
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr ""
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr ""
-
msgid "VLANs on %q"
msgstr ""
msgid "Write received DNS requests to syslog"
msgstr ""
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "Hỗ trợ XR"
"X-Generator: Poedit 1.8.5\n"
"Language-Team: \n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d分钟信息,%d秒刷新)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr "CA证书.如果留空的话证书将在第一次连接时被保存."
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "CPU使用率(%)"
msgid "External system log server port"
msgstr "远程log服务器端口"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr "额外的SSH命令选项"
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "端口"
-msgid "Port %d"
-msgstr "端口 %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "端口 %d 在多个VLAN中均未关联!"
-
msgid "Port status:"
msgstr "端口状态:"
msgid "Run filesystem check"
msgstr "文件系统检查"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "软件包"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "一些项目的值无效,无法保存!"
msgid "Switch %q (%s)"
msgstr "交换机%q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "切换协议"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLAN接口"
-
msgid "VLANs on %q"
msgstr "%q上的VLAN"
msgid "Write received DNS requests to syslog"
msgstr "将收到的DNS请求写入系统日志"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "XR支持"
msgid "« Back"
msgstr "« 后退"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "端口 %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "端口 %d 在多个VLAN中均未关联!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLAN接口"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Pootle 2.0.6\n"
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
msgid "(%d minute window, %d second interval)"
msgstr "(%d 分鐘訊息, %d 秒更新)"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
-msgid "CPU"
-msgstr "CPU"
-
msgid "CPU usage (%)"
msgstr "CPU 使用率 (%)"
msgid "External system log server port"
msgstr "外部系統日誌伺服器埠號"
+msgid "External system log server protocol"
+msgstr ""
+
msgid "Extra SSH command options"
msgstr ""
msgid "MB/s"
msgstr "MB/s"
+msgid "MD5"
+msgstr ""
+
msgid "MHz"
msgstr "MHz"
msgid "Port"
msgstr "埠"
-msgid "Port %d"
-msgstr "埠 %d"
-
-msgid "Port %d is untagged in multiple VLANs!"
-msgstr "埠 %d 尚未標記在多個VLANs中!"
-
msgid "Port status:"
msgstr "埠狀態:"
msgid "Run filesystem check"
msgstr "執行系統檢查"
+msgid "SHA256"
+msgstr ""
+
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgid "Software"
msgstr "軟體"
+msgid "Software VLAN"
+msgstr ""
+
msgid "Some fields are invalid, cannot save values!"
msgstr "有些欄位失效, 無法儲存數值!"
msgid "Switch %q (%s)"
msgstr "交換器 %q (%s)"
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr ""
+
msgid "Switch protocol"
msgstr "交換器協定"
msgid "VDSL"
msgstr ""
-msgid "VLAN Interface"
-msgstr "VLAN介面"
-
msgid "VLANs on %q"
msgstr "VLAN 在 %q"
msgid "Write received DNS requests to syslog"
msgstr "寫入已接收的DNS請求到系統日誌中"
+msgid "Write system log to file"
+msgstr ""
+
msgid "XR Support"
msgstr "支援XR無線陣列"
msgid "« Back"
msgstr "« 倒退"
+
+#~ msgid "CPU"
+#~ msgstr "CPU"
+
+#~ msgid "Port %d"
+#~ msgstr "埠 %d"
+
+#~ msgid "Port %d is untagged in multiple VLANs!"
+#~ msgstr "埠 %d 尚未標記在多個VLANs中!"
+
+#~ msgid "VLAN Interface"
+#~ msgstr "VLAN介面"
return (luci.sys.exec("md5sum %q" % image):match("^([^%s]+)"))
end
+local function image_sha256_checksum(image)
+ return (luci.sys.exec("sha256sum %q" % image):match("^([^%s]+)"))
+end
+
local function supports_sysupgrade()
return nixio.fs.access("/lib/upgrade/platform.sh")
end
if image_supported(image_tmp) then
luci.template.render("admin_system/upgrade", {
checksum = image_checksum(image_tmp),
+ sha256ch = image_sha256_checksum(image_tmp),
storage = storage_size(),
size = (fs.stat(image_tmp, "size") or 0),
keep = (not not http.formvalue("keep"))
m = Map("network", translate("Switch"), translate("The network ports on this device can be combined to several <abbr title=\"Virtual Local Area Network\">VLAN</abbr>s in which computers can communicate directly with each other. <abbr title=\"Virtual Local Area Network\">VLAN</abbr>s are often used to separate different network segments. Often there is by default one Uplink port for a connection to the next greater network like the internet and other ports for a local network."))
local fs = require "nixio.fs"
+local nw = require "luci.model.network"
local switches = { }
+nw.init(m.uci)
+
+local topologies = nw:get_switch_topologies() or {}
+
m.uci:foreach("network", "switch",
function(x)
local sid = x['.name']
local min_vid = 0
local max_vid = 16
local num_vlans = 16
- local cpu_port = tonumber(fs.readfile("/proc/switch/eth0/cpuport") or 5)
- local num_ports = cpu_port + 1
local switch_title
local enable_vlan4k = false
+ local topo = topologies[switch_name]
+
+ if not topo then
+ m.message = translatef("Switch %q has an unknown topology - the VLAN settings might not be accurate.", switch_name)
+ topo = {
+ ports = {
+ { num = 0, label = "Port 1" },
+ { num = 1, label = "Port 2" },
+ { num = 2, label = "Port 3" },
+ { num = 3, label = "Port 4" },
+ { num = 4, label = "Port 5" },
+ { num = 5, label = "CPU (eth0)", tagged = false }
+ }
+ }
+ end
+
-- Parse some common switch properties from swconfig help output.
local swc = io.popen("swconfig dev %q help 2>/dev/null" % switch_name)
if swc then
elseif line:match("cpu @") then
switch_title = line:match("^switch%d: %w+%((.-)%)")
- num_ports, cpu_port, num_vlans =
- line:match("ports: (%d+) %(cpu @ (%d+)%), vlans: (%d+)")
-
- num_ports = tonumber(num_ports) or 6
- num_vlans = tonumber(num_vlans) or 16
- cpu_port = tonumber(cpu_port) or 5
+ num_vlans = tonumber(line:match("vlans: (%d+)")) or 16
min_vid = 1
elseif line:match(": pvid") or line:match(": tag") or line:match(": vid") then
mp:depends("enable_mirror_tx", "1")
mp:depends("enable_mirror_rx", "1")
- local pt
- for pt = 0, num_ports - 1 do
- local name
-
- name = (pt == cpu_port) and translate("CPU") or translatef("Port %d", pt)
-
- sp:value(pt, name)
- mp:value(pt, name)
+ local _, pt
+ for _, pt in ipairs(topo.ports) do
+ sp:value(pt.num, pt.label)
+ mp:value(pt.num, pt.label)
end
end
if value == "u" then
if not untagged[self.option] then
untagged[self.option] = true
- elseif min_vid > 0 or tonumber(self.option) ~= cpu_port then -- enable multiple untagged cpu ports due to weird broadcom default setup
+ else
return nil,
- translatef("Port %d is untagged in multiple VLANs!", tonumber(self.option) + 1)
+ translatef("%s is untagged in multiple VLANs!", self.title)
end
end
return value
or m:get(section, "vlan")
end
- -- Build per-port off/untagged/tagged choice lists.
- local pt
- for pt = 0, num_ports - 1 do
- local title
- if pt == cpu_port then
- title = translate("CPU")
- else
- title = translatef("Port %d", pt)
- end
-
- local po = s:option(ListValue, tostring(pt), title)
+ local _, pt
+ for _, pt in ipairs(topo.ports) do
+ local po = s:option(ListValue, tostring(pt.num), pt.label, '<div id="portstatus-%s-%d"></div>' %{ switch_name, pt.num })
po:value("", translate("off"))
- po:value("u", translate("untagged"))
+
+ if not pt.tagged then
+ po:value("u", translate("untagged"))
+ end
+
po:value("t", translate("tagged"))
po.cfgvalue = portvalue
port_opts[#port_opts+1] = po
end
+ table.sort(port_opts, function(a, b) return a.option < b.option end)
switches[#switches+1] = switch_name
end
)
for (var j = 0; j < ports.length; j++)
{
- var th = th0.parentNode.parentNode.childNodes[j+1];
+ var th = document.getElementById('portstatus-' + switches[i] + '-' + j);
+
+ if (!th)
+ continue;
if (ports[j].link)
{
<fieldset class="cbi-section">
<ul>
- <li><%:Checksum%>: <code><%=checksum%></code></li>
+ <li><%:Checksum%><br />
+ <%:MD5%>: <code><%=checksum%></code><br />
+ <%:SHA256%>: <code><%=sha256ch%></code></li>
<li><%:Size%>: <%
local w = require "luci.tools.webadmin"
write(w.byte_format(size))
opacity: 0.4;
}
-.alert-message {
+.alert-message, .errorbox {
position: relative;
padding: 7px 15px;
margin-bottom: 18px;