summaryrefslogtreecommitdiffhomepage
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/luci-base/Makefile6
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/cbi.js114
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/cbi/edit.gifbin280 -> 272 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gifbin379 -> 371 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/cbi/file.gifbin371 -> 267 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/bridge.pngbin838 -> 681 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.pngbin517 -> 405 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/encryption.pngbin1224 -> 920 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/encryption_disabled.pngbin1197 -> 888 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/ethernet.pngbin814 -> 701 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.pngbin508 -> 399 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/loading.gifbin1787 -> 1786 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/port_down.pngbin982 -> 769 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/port_up.pngbin1401 -> 1151 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/signal-0-25.pngbin495 -> 462 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/signal-0.pngbin478 -> 439 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/signal-25-50.pngbin501 -> 465 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/signal-50-75.pngbin500 -> 467 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/signal-75-100.pngbin485 -> 457 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/signal-none.pngbin681 -> 639 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/switch.pngbin794 -> 680 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/switch_disabled.pngbin505 -> 398 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/tunnel.pngbin533 -> 343 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.pngbin546 -> 235 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/vlan.pngbin794 -> 680 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/vlan_disabled.pngbin505 -> 398 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/wifi.pngbin1037 -> 767 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/wifi_big.pngbin2865 -> 2276 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.pngbin2853 -> 1512 bytes
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/icons/wifi_disabled.pngbin980 -> 494 bytes
-rw-r--r--modules/luci-base/luasrc/cbi.lua172
-rw-r--r--modules/luci-base/luasrc/cbi/datatypes.lua78
-rw-r--r--modules/luci-base/luasrc/controller/admin/servicectl.lua2
-rw-r--r--modules/luci-base/luasrc/dispatcher.lua146
-rw-r--r--modules/luci-base/luasrc/http.lua1
-rw-r--r--modules/luci-base/luasrc/http.luadoc3
-rw-r--r--modules/luci-base/luasrc/http/protocol.lua17
-rw-r--r--modules/luci-base/luasrc/model/ipkg.lua22
-rw-r--r--modules/luci-base/luasrc/model/ipkg.luadoc3
-rw-r--r--modules/luci-base/luasrc/model/network.lua305
-rw-r--r--modules/luci-base/luasrc/model/uci.luadoc10
-rw-r--r--modules/luci-base/luasrc/sys.lua131
-rw-r--r--modules/luci-base/luasrc/sys.luadoc3
-rw-r--r--modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua13
-rw-r--r--modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua5
-rw-r--r--modules/luci-base/luasrc/util.lua75
-rw-r--r--modules/luci-base/luasrc/util.luadoc6
-rw-r--r--modules/luci-base/luasrc/view/cbi/apply_xhr.htm4
-rw-r--r--modules/luci-base/luasrc/view/cbi/browser.htm2
-rw-r--r--modules/luci-base/luasrc/view/cbi/dynlist.htm4
-rw-r--r--modules/luci-base/luasrc/view/cbi/error.htm2
-rw-r--r--modules/luci-base/luasrc/view/cbi/header.htm1
-rw-r--r--modules/luci-base/luasrc/view/cbi/map.htm2
-rw-r--r--modules/luci-base/luasrc/view/cbi/mvalue.htm2
-rw-r--r--modules/luci-base/luasrc/view/cbi/simpleform.htm3
-rw-r--r--modules/luci-base/luasrc/view/cbi/upload.htm16
-rw-r--r--modules/luci-base/luasrc/view/cbi/value.htm5
-rw-r--r--modules/luci-base/luasrc/view/csrftoken.htm24
-rw-r--r--modules/luci-base/luasrc/view/error404.htm2
-rw-r--r--modules/luci-base/luasrc/view/error500.htm2
-rw-r--r--modules/luci-base/luasrc/view/sysauth.htm2
-rw-r--r--modules/luci-base/po/ca/base.po198
-rw-r--r--modules/luci-base/po/cs/base.po196
-rw-r--r--modules/luci-base/po/de/base.po204
-rw-r--r--modules/luci-base/po/el/base.po201
-rw-r--r--modules/luci-base/po/en/base.po200
-rw-r--r--modules/luci-base/po/es/base.po204
-rw-r--r--modules/luci-base/po/fr/base.po204
-rw-r--r--modules/luci-base/po/he/base.po185
-rw-r--r--modules/luci-base/po/hu/base.po198
-rw-r--r--modules/luci-base/po/it/base.po199
-rw-r--r--modules/luci-base/po/ja/base.po202
-rw-r--r--modules/luci-base/po/ms/base.po196
-rw-r--r--modules/luci-base/po/no/base.po197
-rw-r--r--modules/luci-base/po/pl/base.po206
-rw-r--r--modules/luci-base/po/pt-br/base.po204
-rw-r--r--modules/luci-base/po/pt/base.po204
-rw-r--r--modules/luci-base/po/ro/base.po189
-rw-r--r--modules/luci-base/po/ru/base.po204
-rw-r--r--modules/luci-base/po/sk/base.po173
-rw-r--r--modules/luci-base/po/sv/base.po173
-rw-r--r--modules/luci-base/po/templates/base.pot181
-rw-r--r--modules/luci-base/po/tr/base.po173
-rw-r--r--modules/luci-base/po/uk/base.po197
-rw-r--r--modules/luci-base/po/vi/base.po193
-rw-r--r--modules/luci-base/po/zh-cn/base.po202
-rw-r--r--modules/luci-base/po/zh-tw/base.po196
-rw-r--r--modules/luci-base/root/etc/config/luci2
-rw-r--r--modules/luci-base/root/etc/luci-uploads/.placeholder (renamed from modules/luci-base/root/lib/uci/upload/.placeholder)0
-rw-r--r--modules/luci-base/root/www/index.html4
-rw-r--r--modules/luci-mod-admin-full/Makefile2
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/index.lua4
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/network.lua79
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/status.lua23
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/system.lua359
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/uci.lua8
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua11
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua7
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua6
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua7
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua73
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua2
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua43
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm6
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm46
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm14
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm12
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm33
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/connections.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm6
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm149
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/load.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/routes.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm6
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm36
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/packages.htm191
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm68
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm9
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm2
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm13
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm2
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/applyreboot.htm2
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/backup.htm2
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/index.htm2
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/reboot.htm2
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm2
-rw-r--r--modules/luci-mod-failsafe/luasrc/controller/failsafe/failsafe.lua12
-rw-r--r--modules/luci-mod-failsafe/luasrc/view/failsafe/applyreboot.htm2
-rw-r--r--modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm2
-rw-r--r--modules/luci-mod-failsafe/luasrc/view/failsafe/reboot.htm2
-rw-r--r--modules/luci-mod-failsafe/luasrc/view/failsafe/upgrade.htm2
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm2
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm2
-rw-r--r--modules/luci-mod-rpc/luasrc/controller/rpc.lua4
145 files changed, 6054 insertions, 1497 deletions
diff --git a/modules/luci-base/Makefile b/modules/luci-base/Makefile
index 80bbda107a..a9c5e71cba 100644
--- a/modules/luci-base/Makefile
+++ b/modules/luci-base/Makefile
@@ -12,7 +12,7 @@ LUCI_TYPE:=mod
LUCI_BASENAME:=base
LUCI_TITLE:=LuCI core libraries
-LUCI_DEPENDS:=+lua +libuci-lua +luci-lib-nixio +luci-lib-ip +rpcd
+LUCI_DEPENDS:=+lua +libuci-lua +luci-lib-nixio +luci-lib-ip +rpcd +libubus-lua +luci-lib-jsonc
PKG_SOURCE:=LuaSrcDiet-0.12.1.tar.bz2
PKG_SOURCE_URL:=https://luasrcdiet.googlecode.com/files
@@ -22,6 +22,10 @@ HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/LuaSrcDiet-0.12.1
include $(INCLUDE_DIR)/host-build.mk
+define Package/luci-base/conffiles
+/etc/luci-uploads
+endef
+
include ../../luci.mk
define Host/Configure
diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi.js b/modules/luci-base/htdocs/luci-static/resources/cbi.js
index 5e31bf2099..1c4123bdad 100644
--- a/modules/luci-base/htdocs/luci-static/resources/cbi.js
+++ b/modules/luci-base/htdocs/luci-static/resources/cbi.js
@@ -139,10 +139,11 @@ var cbi_validators = {
return (this.match(/^([a-fA-F0-9]{2}:){5}[a-fA-F0-9]{2}$/) != null);
},
- 'host': function()
+ 'host': function(ipv4only)
{
return cbi_validators.hostname.apply(this) ||
- cbi_validators.ipaddr.apply(this);
+ ((ipv4only != 1) && cbi_validators.ipaddr.apply(this)) ||
+ ((ipv4only == 1) && cb_validators.ip4addr.apply(this));
},
'hostname': function()
@@ -161,6 +162,49 @@ var cbi_validators = {
cbi_validators.host.apply(this);
},
+ 'hostport': function(ipv4only)
+ {
+ var hp = this.split(/:/);
+
+ if (hp.length == 2)
+ return (cbi_validators.host.apply(hp[0], ipv4only) &&
+ cbi_validators.port.apply(hp[1]));
+
+ return false;
+ },
+
+ 'ip4addrport': function()
+ {
+ var hp = this.split(/:/);
+
+ if (hp.length == 2)
+ return (cbi_validators.ipaddr.apply(hp[0]) &&
+ cbi_validators.port.apply(hp[1]));
+ return false;
+ },
+
+ 'ipaddrport': function(bracket)
+ {
+ if (this.match(/^([^\[\]:]+):([^:]+)$/)) {
+ var addr = RegExp.$1
+ var port = RegExp.$2
+ return (cbi_validators.ip4addr.apply(addr) &&
+ cbi_validators.port.apply(port));
+ } else if ((bracket == 1) && (this.match(/^\[(.+)\]:([^:]+)$/))) {
+ var addr = RegExp.$1
+ var port = RegExp.$2
+ return (cbi_validators.ip6addr.apply(addr) &&
+ cbi_validators.port.apply(port));
+ } else if ((bracket != 1) && (this.match(/^([^\[\]]+):([^:]+)$/))) {
+ var addr = RegExp.$1
+ var port = RegExp.$2
+ return (cbi_validators.ip6addr.apply(addr) &&
+ cbi_validators.port.apply(port));
+ } else {
+ return false;
+ }
+ },
+
'wpakey': function()
{
var v = this;
@@ -300,6 +344,47 @@ var cbi_validators = {
'phonedigit': function()
{
return (this.match(/^[0-9\*#!\.]+$/) != null);
+ },
+ 'timehhmmss': function()
+ {
+ return (this.match(/^[0-6][0-9]:[0-6][0-9]:[0-6][0-9]$/) != null);
+ },
+ 'dateyyyymmdd': function()
+ {
+ if (this == null) {
+ return false;
+ }
+ if (this.match(/^(\d\d\d\d)-(\d\d)-(\d\d)/)) {
+ var year = RegExp.$1;
+ var month = RegExp.$2;
+ var day = RegExp.$2
+
+ var days_in_month = [ 31, 28, 31, 30, 31, 30, 31, 31, 30 , 31, 30, 31 ];
+ function is_leap_year(year) {
+ return ((year % 4) == 0) && ((year % 100) != 0) || ((year % 400) == 0);
+ }
+ function get_days_in_month(month, year) {
+ if ((month == 2) && is_leap_year(year)) {
+ return 29;
+ } else {
+ return days_in_month[month];
+ }
+ }
+ /* Firewall rules in the past don't make sense */
+ if (year < 2015) {
+ return false;
+ }
+ if ((month <= 0) || (month > 12)) {
+ return false;
+ }
+ if ((day <= 0) || (day > get_days_in_month(month, year))) {
+ return false;
+ }
+ return true;
+
+ } else {
+ return false;
+ }
}
};
@@ -545,7 +630,7 @@ function cbi_browser_init(id, respath, url, defpath)
cbi_bind(btn, 'click', cbi_browser_btnclick);
}
-function cbi_dynlist_init(name, respath, datatype, optional, choices)
+function cbi_dynlist_init(name, respath, datatype, optional, url, defpath, choices)
{
var input0 = document.getElementsByName(name)[0];
var prefix = input0.name;
@@ -606,6 +691,11 @@ function cbi_dynlist_init(name, respath, datatype, optional, choices)
parent.appendChild(t);
parent.appendChild(b);
+ if (datatype == 'file')
+ {
+ cbi_browser_init(t.id, respath, url, defpath);
+ }
+
parent.appendChild(document.createElement('br'));
if (datatype)
@@ -616,13 +706,13 @@ function cbi_dynlist_init(name, respath, datatype, optional, choices)
if (choices)
{
cbi_combobox_init(t.id, choices[0], '', choices[1]);
- t.nextSibling.index = i;
+ b.index = i;
- cbi_bind(t.nextSibling, 'keydown', cbi_dynlist_keydown);
- cbi_bind(t.nextSibling, 'keypress', cbi_dynlist_keypress);
+ cbi_bind(b, 'keydown', cbi_dynlist_keydown);
+ cbi_bind(b, 'keypress', cbi_dynlist_keypress);
if (i == focus || -i == focus)
- t.nextSibling.focus();
+ b.focus();
}
else
{
@@ -758,20 +848,24 @@ function cbi_dynlist_init(name, respath, datatype, optional, choices)
ev = ev ? ev : window.event;
var se = ev.target ? ev.target : ev.srcElement;
+ var input = se.previousSibling;
+ while (input && input.name != name) {
+ input = input.previousSibling;
+ }
if (se.src.indexOf('remove') > -1)
{
- se.previousSibling.value = '';
+ input.value = '';
cbi_dynlist_keydown({
- target: se.previousSibling,
+ target: input,
keyCode: 8
});
}
else
{
cbi_dynlist_keydown({
- target: se.previousSibling,
+ target: input,
keyCode: 13
});
}
diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi/edit.gif b/modules/luci-base/htdocs/luci-static/resources/cbi/edit.gif
index 7b02b6e72a..e06e37c750 100644
--- a/modules/luci-base/htdocs/luci-static/resources/cbi/edit.gif
+++ b/modules/luci-base/htdocs/luci-static/resources/cbi/edit.gif
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif b/modules/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif
index 431ff64d1f..eebe0fffe0 100644
--- a/modules/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif
+++ b/modules/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi/file.gif b/modules/luci-base/htdocs/luci-static/resources/cbi/file.gif
index 3b1217dd65..342a8463d2 100644
--- a/modules/luci-base/htdocs/luci-static/resources/cbi/file.gif
+++ b/modules/luci-base/htdocs/luci-static/resources/cbi/file.gif
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/bridge.png b/modules/luci-base/htdocs/luci-static/resources/icons/bridge.png
index 4c163bf692..7faadecf92 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/bridge.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/bridge.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png
index 0f367c5369..b3e620b3a1 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/encryption.png b/modules/luci-base/htdocs/luci-static/resources/icons/encryption.png
index 41d2ba9ace..7762833604 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/encryption.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/encryption.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/encryption_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/encryption_disabled.png
index f2e05a4251..9a8721b02c 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/encryption_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/encryption_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/ethernet.png b/modules/luci-base/htdocs/luci-static/resources/icons/ethernet.png
index a02538124c..e3d24f2791 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/ethernet.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/ethernet.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png
index 2bb02e455a..d8792df54b 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/loading.gif b/modules/luci-base/htdocs/luci-static/resources/icons/loading.gif
index 5bb90fd6a4..7154314832 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/loading.gif
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/loading.gif
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/port_down.png b/modules/luci-base/htdocs/luci-static/resources/icons/port_down.png
index 25ea172324..5a2b235d0a 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/port_down.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/port_down.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/port_up.png b/modules/luci-base/htdocs/luci-static/resources/icons/port_up.png
index e063037910..8105e77d08 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/port_up.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/port_up.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/signal-0-25.png b/modules/luci-base/htdocs/luci-static/resources/icons/signal-0-25.png
index 2e5dff4663..b3a8118afc 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/signal-0-25.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/signal-0-25.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/signal-0.png b/modules/luci-base/htdocs/luci-static/resources/icons/signal-0.png
index 114583a676..333b1557ba 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/signal-0.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/signal-0.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/signal-25-50.png b/modules/luci-base/htdocs/luci-static/resources/icons/signal-25-50.png
index ee8cc4f1ce..b465de3f57 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/signal-25-50.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/signal-25-50.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/signal-50-75.png b/modules/luci-base/htdocs/luci-static/resources/icons/signal-50-75.png
index 26bcbf715d..cd7bcaf9a6 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/signal-50-75.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/signal-50-75.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/signal-75-100.png b/modules/luci-base/htdocs/luci-static/resources/icons/signal-75-100.png
index 5cffaa1b84..f7a3658df8 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/signal-75-100.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/signal-75-100.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/signal-none.png b/modules/luci-base/htdocs/luci-static/resources/icons/signal-none.png
index b77585c0f0..4a11356af2 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/signal-none.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/signal-none.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/switch.png b/modules/luci-base/htdocs/luci-static/resources/icons/switch.png
index 5c99ba5684..be99b19bad 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/switch.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/switch.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/switch_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/switch_disabled.png
index b8c84c8dc4..54588d24d1 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/switch_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/switch_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/tunnel.png b/modules/luci-base/htdocs/luci-static/resources/icons/tunnel.png
index c5a09dd685..63eabfef59 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/tunnel.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/tunnel.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png
index ad9856cfec..ca79d81707 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/vlan.png b/modules/luci-base/htdocs/luci-static/resources/icons/vlan.png
index 5c99ba5684..be99b19bad 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/vlan.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/vlan.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/vlan_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/vlan_disabled.png
index b8c84c8dc4..54588d24d1 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/vlan_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/vlan_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/wifi.png b/modules/luci-base/htdocs/luci-static/resources/icons/wifi.png
index 528ce2b4e9..80a23e8e9a 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/wifi.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/wifi.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big.png b/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big.png
index d73a5e7401..9e466aebf4 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png
index af93b37b7a..6f9fff3813 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png
Binary files differ
diff --git a/modules/luci-base/htdocs/luci-static/resources/icons/wifi_disabled.png b/modules/luci-base/htdocs/luci-static/resources/icons/wifi_disabled.png
index 338a34f78c..e989a2bd3d 100644
--- a/modules/luci-base/htdocs/luci-static/resources/icons/wifi_disabled.png
+++ b/modules/luci-base/htdocs/luci-static/resources/icons/wifi_disabled.png
Binary files differ
diff --git a/modules/luci-base/luasrc/cbi.lua b/modules/luci-base/luasrc/cbi.lua
index f3d4618b65..2c1bb4d226 100644
--- a/modules/luci-base/luasrc/cbi.lua
+++ b/modules/luci-base/luasrc/cbi.lua
@@ -38,7 +38,7 @@ function load(cbimap, ...)
require("luci.config")
require("luci.util")
- local upldir = "/lib/uci/upload/"
+ local upldir = "/etc/luci-uploads/"
local cbidir = luci.util.libpath() .. "/model/cbi/"
local func, err
@@ -367,63 +367,64 @@ end
-- Use optimized UCI writing
function Map.parse(self, readinput, ...)
- self.readinput = (readinput ~= false)
- self:_run_hooks("on_parse")
-
if self:formvalue("cbi.skip") then
self.state = FORM_SKIP
+ elseif not self.save then
+ self.state = FORM_INVALID
+ elseif not self:submitstate() then
+ self.state = FORM_NODATA
+ end
+
+ -- Back out early to prevent unauthorized changes on the subsequent parse
+ if self.state ~= nil then
return self:state_handler(self.state)
end
+ self.readinput = (readinput ~= false)
+ self:_run_hooks("on_parse")
+
Node.parse(self, ...)
- if self.save then
- self:_run_hooks("on_save", "on_before_save")
+ self:_run_hooks("on_save", "on_before_save")
+ for i, config in ipairs(self.parsechain) do
+ self.uci:save(config)
+ end
+ self:_run_hooks("on_after_save")
+ if (not self.proceed and self.flow.autoapply) or luci.http.formvalue("cbi.apply") then
+ self:_run_hooks("on_before_commit")
for i, config in ipairs(self.parsechain) do
- self.uci:save(config)
- end
- self:_run_hooks("on_after_save")
- if self:submitstate() and ((not self.proceed and self.flow.autoapply) or luci.http.formvalue("cbi.apply")) then
- self:_run_hooks("on_before_commit")
- for i, config in ipairs(self.parsechain) do
- self.uci:commit(config)
-
- -- Refresh data because commit changes section names
- self.uci:load(config)
- end
- self:_run_hooks("on_commit", "on_after_commit", "on_before_apply")
- if self.apply_on_parse then
- self.uci:apply(self.parsechain)
- self:_run_hooks("on_apply", "on_after_apply")
- else
- -- This is evaluated by the dispatcher and delegated to the
- -- template which in turn fires XHR to perform the actual
- -- apply actions.
- self.apply_needed = true
- end
-
- -- Reparse sections
- Node.parse(self, true)
+ self.uci:commit(config)
+ -- Refresh data because commit changes section names
+ self.uci:load(config)
end
- for i, config in ipairs(self.parsechain) do
- self.uci:unload(config)
- end
- if type(self.commit_handler) == "function" then
- self:commit_handler(self:submitstate())
+ self:_run_hooks("on_commit", "on_after_commit", "on_before_apply")
+ if self.apply_on_parse then
+ self.uci:apply(self.parsechain)
+ self:_run_hooks("on_apply", "on_after_apply")
+ else
+ -- This is evaluated by the dispatcher and delegated to the
+ -- template which in turn fires XHR to perform the actual
+ -- apply actions.
+ self.apply_needed = true
end
+
+ -- Reparse sections
+ Node.parse(self, true)
+ end
+ for i, config in ipairs(self.parsechain) do
+ self.uci:unload(config)
+ end
+ if type(self.commit_handler) == "function" then
+ self:commit_handler(self:submitstate())
end
- if self:submitstate() then
- if not self.save then
- self.state = FORM_INVALID
- elseif self.proceed then
- self.state = FORM_PROCEED
- else
- self.state = self.changed and FORM_CHANGED or FORM_VALID
- end
+ if self.proceed then
+ self.state = FORM_PROCEED
+ elseif self.changed then
+ self.state = FORM_CHANGED
else
- self.state = FORM_NODATA
+ self.state = FORM_VALID
end
return self:state_handler(self.state)
@@ -1470,6 +1471,7 @@ function Value.__init__(self, ...)
self.template = "cbi/value"
self.keylist = {}
self.vallist = {}
+ self.readonly = nil
end
function Value.reset_values(self)
@@ -1483,6 +1485,10 @@ function Value.value(self, key, val)
table.insert(self.vallist, tostring(val))
end
+function Value.parse(self, section, novld)
+ if self.readonly then return end
+ AbstractValue.parse(self, section, novld)
+end
-- DummyValue - This does nothing except being there
DummyValue = class(AbstractValue)
@@ -1527,17 +1533,25 @@ function Flag.__init__(self, ...)
end
-- A flag can only have two states: set or unset
-function Flag.parse(self, section)
+function Flag.parse(self, section, novld)
local fexists = self.map:formvalue(
FEXIST_PREFIX .. self.config .. "." .. section .. "." .. self.option)
if fexists then
local fvalue = self:formvalue(section) and self.enabled or self.disabled
local cvalue = self:cfgvalue(section)
- if fvalue ~= self.default or (not self.optional and not self.rmempty) then
- self:write(section, fvalue)
- else
+ local val_err
+ fvalue, val_err = self:validate(fvalue, section)
+ if not fvalue then
+ if not novld then
+ self:add_error(section, "invalid", val_err)
+ end
+ return
+ end
+ if fvalue == self.default and (self.optional or self.rmempty) then
self:remove(section)
+ else
+ self:write(section, fvalue)
end
if (fvalue ~= cvalue) then self.section.changed = true end
else
@@ -1549,7 +1563,9 @@ end
function Flag.cfgvalue(self, section)
return AbstractValue.cfgvalue(self, section) or self.default
end
-
+function Flag.validate(self, value)
+ return value
+end
--[[
ListValue - A one-line value predefined in a list
@@ -1795,6 +1811,7 @@ function Button.__init__(self, ...)
self.template = "cbi/button"
self.inputstyle = nil
self.rmempty = true
+ self.unsafeupload = false
end
@@ -1811,9 +1828,15 @@ function FileUpload.__init__(self, ...)
end
function FileUpload.formcreated(self, section)
- return AbstractValue.formcreated(self, section) or
- self.map:formvalue("cbi.rlf."..section.."."..self.option) or
- self.map:formvalue("cbi.rlf."..section.."."..self.option..".x")
+ if self.unsafeupload then
+ return AbstractValue.formcreated(self, section) or
+ self.map:formvalue("cbi.rlf."..section.."."..self.option) or
+ self.map:formvalue("cbi.rlf."..section.."."..self.option..".x") or
+ self.map:formvalue("cbid."..self.map.config.."."..section.."."..self.option..".textbox")
+ else
+ return AbstractValue.formcreated(self, section) or
+ self.map:formvalue("cbid."..self.map.config.."."..section.."."..self.option..".textbox")
+ end
end
function FileUpload.cfgvalue(self, section)
@@ -1824,27 +1847,50 @@ function FileUpload.cfgvalue(self, section)
return nil
end
+-- If we have a new value, use it
+-- otherwise use old value
+-- deletion should be managed by a separate button object
+-- unless self.unsafeupload is set in which case if the user
+-- choose to remove the old file we do so.
+-- Also, allow to specify (via textbox) a file already on router
function FileUpload.formvalue(self, section)
local val = AbstractValue.formvalue(self, section)
if val then
- if not self.map:formvalue("cbi.rlf."..section.."."..self.option) and
- not self.map:formvalue("cbi.rlf."..section.."."..self.option..".x")
- then
+ if self.unsafeupload then
+ if not self.map:formvalue("cbi.rlf."..section.."."..self.option) and
+ not self.map:formvalue("cbi.rlf."..section.."."..self.option..".x")
+ then
+ return val
+ end
+ fs.unlink(val)
+ self.value = nil
+ return nil
+ elseif val ~= "" then
return val
- end
- fs.unlink(val)
- self.value = nil
+ end
end
- return nil
+ val = luci.http.formvalue("cbid."..self.map.config.."."..section.."."..self.option..".textbox")
+ if val == "" then
+ val = nil
+ end
+ if not self.unsafeupload then
+ if not val then
+ val = self.map:formvalue("cbi.rlf."..section.."."..self.option)
+ end
+ end
+ return val
end
function FileUpload.remove(self, section)
- local val = AbstractValue.formvalue(self, section)
- if val and fs.access(val) then fs.unlink(val) end
- return AbstractValue.remove(self, section)
+ if self.unsafeupload then
+ local val = AbstractValue.formvalue(self, section)
+ if val and fs.access(val) then fs.unlink(val) end
+ return AbstractValue.remove(self, section)
+ else
+ return nil
+ end
end
-
FileBrowser = class(AbstractValue)
function FileBrowser.__init__(self, ...)
diff --git a/modules/luci-base/luasrc/cbi/datatypes.lua b/modules/luci-base/luasrc/cbi/datatypes.lua
index ebd7e594f7..626ad91c75 100644
--- a/modules/luci-base/luasrc/cbi/datatypes.lua
+++ b/modules/luci-base/luasrc/cbi/datatypes.lua
@@ -176,14 +176,43 @@ function hostname(val)
return false
end
-function host(val)
- return hostname(val) or ipaddr(val)
+function host(val, ipv4only)
+ return hostname(val) or ((ipv4only == 1) and ip4addr(val)) or ((not (ipv4only == 1)) and ipaddr(val))
end
function network(val)
return uciname(val) or host(val)
end
+function hostport(val, ipv4only)
+ local h, p = val:match("^([^:]+):([^:]+)$")
+ return not not (h and p and host(h, ipv4only) and port(p))
+end
+
+function ip4addrport(val, bracket)
+ local h, p = val:match("^([^:]+):([^:]+)$")
+ return (h and p and ip4addr(h) and port(p))
+end
+
+function ip4addrport(val)
+ local h, p = val:match("^([^:]+):([^:]+)$")
+ return (h and p and ip4addr(h) and port(p))
+end
+
+function ipaddrport(val, bracket)
+ local h, p = val:match("^([^%[%]:]+):([^:]+)$")
+ if (h and p and ip4addr(h) and port(p)) then
+ return true
+ elseif (bracket == 1) then
+ h, p = val:match("^%[(.+)%]:([^:]+)$")
+ if (h and p and ip6addr(h) and port(p)) then
+ return true
+ end
+ end
+ h, p = val:match("^([^%[%]]+):([^:]+)$")
+ return (h and p and ip6addr(h) and port(p))
+end
+
function wpakey(val)
if #val == 64 then
return (val:match("^[a-fA-F0-9]+$") ~= nil)
@@ -331,3 +360,48 @@ end
function phonedigit(val)
return (val:match("^[0-9\*#!%.]+$") ~= nil)
end
+
+function timehhmmss(val)
+ return (val:match("^[0-6][0-9]:[0-6][0-9]:[0-6][0-9]$") ~= nil)
+end
+
+function dateyyyymmdd(val)
+ if val ~= nil then
+ yearstr, monthstr, daystr = val:match("^(%d%d%d%d)-(%d%d)-(%d%d)$")
+ if (yearstr == nil) or (monthstr == nil) or (daystr == nil) then
+ return false;
+ end
+ year = tonumber(yearstr)
+ month = tonumber(monthstr)
+ day = tonumber(daystr)
+ if (year == nil) or (month == nil) or (day == nil) then
+ return false;
+ end
+
+ local days_in_month = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
+
+ local function is_leap_year(year)
+ return (year % 4 == 0) and ((year % 100 ~= 0) or (year % 400 == 0))
+ end
+
+ function get_days_in_month(month, year)
+ if (month == 2) and is_leap_year(year) then
+ return 29
+ else
+ return days_in_month[month]
+ end
+ end
+ if (year < 2015) then
+ return false
+ end
+ if ((month == 0) or (month > 12)) then
+ return false
+ end
+ if ((day == 0) or (day > get_days_in_month(month, year))) then
+ return false
+ end
+ return true
+ end
+ return false
+end
+
diff --git a/modules/luci-base/luasrc/controller/admin/servicectl.lua b/modules/luci-base/luasrc/controller/admin/servicectl.lua
index 5b855cb24b..1d73eb4ecc 100644
--- a/modules/luci-base/luasrc/controller/admin/servicectl.lua
+++ b/modules/luci-base/luasrc/controller/admin/servicectl.lua
@@ -6,7 +6,7 @@ module("luci.controller.admin.servicectl", package.seeall)
function index()
entry({"servicectl"}, alias("servicectl", "status")).sysauth = "root"
entry({"servicectl", "status"}, call("action_status")).leaf = true
- entry({"servicectl", "restart"}, call("action_restart")).leaf = true
+ entry({"servicectl", "restart"}, post("action_restart")).leaf = true
end
function action_status()
diff --git a/modules/luci-base/luasrc/dispatcher.lua b/modules/luci-base/luasrc/dispatcher.lua
index 8b8d1fa349..cd5d77a12b 100644
--- a/modules/luci-base/luasrc/dispatcher.lua
+++ b/modules/luci-base/luasrc/dispatcher.lua
@@ -1,4 +1,5 @@
-- Copyright 2008 Steven Barth <steven@midlink.org>
+-- Copyright 2008-2015 Jo-Philipp Wich <jow@openwrt.org>
-- Licensed to the public under the Apache License 2.0.
local fs = require "nixio.fs"
@@ -26,14 +27,6 @@ function build_url(...)
local path = {...}
local url = { http.getenv("SCRIPT_NAME") or "" }
- local k, v
- for k, v in pairs(context.urltoken) do
- url[#url+1] = "/;"
- url[#url+1] = http.urlencode(k)
- url[#url+1] = "="
- url[#url+1] = http.urlencode(v)
- end
-
local p
for _, p in ipairs(path) do
if p:match("^[a-zA-Z0-9_%-%.%%/,;]+$") then
@@ -42,6 +35,10 @@ function build_url(...)
end
end
+ if #path == 0 then
+ url[#url+1] = "/"
+ end
+
return table.concat(url, "")
end
@@ -112,24 +109,11 @@ function authenticator.htmlauth(validator, accs, default)
return user
end
- if context.urltoken.stok then
- context.urltoken.stok = nil
-
- local cookie = 'sysauth=%s; expires=%s; path=%s/' %{
- http.getcookie('sysauth') or 'x',
- 'Thu, 01 Jan 1970 01:00:00 GMT',
- build_url()
- }
-
- http.header("Set-Cookie", cookie)
- http.redirect(build_url())
- else
- require("luci.i18n")
- require("luci.template")
- context.path = {}
- http.status(403, "Forbidden")
- luci.template.render("sysauth", {duser=default, fuser=user})
- end
+ require("luci.i18n")
+ require("luci.template")
+ context.path = {}
+ http.status(403, "Forbidden")
+ luci.template.render("sysauth", {duser=default, fuser=user})
return false
@@ -140,7 +124,6 @@ function httpdispatch(request, prefix)
local r = {}
context.request = r
- context.urltoken = {}
local pathinfo = http.urldecode(request:getenv("PATH_INFO") or "", true)
@@ -150,18 +133,8 @@ function httpdispatch(request, prefix)
end
end
- local tokensok = true
for node in pathinfo:gmatch("[^/]+") do
- local tkey, tval
- if tokensok then
- tkey, tval = node:match(";(%w+)=([a-fA-F0-9]*)")
- end
- if tkey then
- context.urltoken[tkey] = tval
- else
- tokensok = false
- r[#r+1] = node
- end
+ r[#r+1] = node
end
local stat, err = util.coxpcall(function()
@@ -173,6 +146,48 @@ function httpdispatch(request, prefix)
--context._disable_memtrace()
end
+local function require_post_security(target)
+ if type(target) == "table" then
+ if type(target.post) == "table" then
+ local param_name, required_val, request_val
+
+ for param_name, required_val in pairs(target.post) do
+ request_val = http.formvalue(param_name)
+
+ if (type(required_val) == "string" and
+ request_val ~= required_val) or
+ (required_val == true and
+ (request_val == nil or request_val == ""))
+ then
+ return false
+ end
+ end
+
+ return true
+ end
+
+ return (target.post == true)
+ end
+
+ return false
+end
+
+function test_post_security()
+ if http.getenv("REQUEST_METHOD") ~= "POST" then
+ http.status(405, "Method Not Allowed")
+ http.header("Allow", "POST")
+ return false
+ end
+
+ if http.formvalue("token") ~= context.authtoken then
+ http.status(403, "Forbidden")
+ luci.template.render("csrftoken")
+ return false
+ end
+
+ return true
+end
+
function dispatch(request)
--context._disable_memtrace = require "luci.debug".trap_memtrace("l")
local ctx = context
@@ -206,7 +221,6 @@ function dispatch(request)
ctx.args = args
ctx.requestargs = ctx.requestargs or args
local n
- local token = ctx.urltoken
local preq = {}
local freq = {}
@@ -284,11 +298,14 @@ function dispatch(request)
resource = luci.config.main.resourcebase;
ifattr = function(...) return _ifattr(...) end;
attr = function(...) return _ifattr(true, ...) end;
+ url = build_url;
}, {__index=function(table, key)
if key == "controller" then
return build_url()
elseif key == "REQUEST_URI" then
return build_url(unpack(ctx.requestpath))
+ elseif key == "token" then
+ return ctx.authtoken
else
return rawget(table, key) or _G[key]
end
@@ -311,20 +328,17 @@ function dispatch(request)
local def = (type(track.sysauth) == "string") and track.sysauth
local accs = def and {track.sysauth} or track.sysauth
local sess = ctx.authsession
- local verifytoken = false
if not sess then
sess = http.getcookie("sysauth")
sess = sess and sess:match("^[a-f0-9]*$")
- verifytoken = true
end
local sdat = (util.ubus("session", "get", { ubus_rpc_session = sess }) or { }).values
- local user
+ local user, token
if sdat then
- if not verifytoken or ctx.urltoken.stok == sdat.token then
- user = sdat.user
- end
+ user = sdat.user
+ token = sdat.token
else
local eu = http.getenv("HTTP_AUTH_USER")
local ep = http.getenv("HTTP_AUTH_PASS")
@@ -357,12 +371,10 @@ function dispatch(request)
end
if sess and token then
- http.header("Set-Cookie", 'sysauth=%s; path=%s/' %{
- sess, build_url()
- })
+ http.header("Set-Cookie", 'sysauth=%s; path=%s' %{ sess, build_url() })
- ctx.urltoken.stok = token
ctx.authsession = sess
+ ctx.authtoken = token
ctx.authuser = user
http.redirect(build_url(unpack(ctx.requestpath)))
@@ -374,10 +386,17 @@ function dispatch(request)
end
else
ctx.authsession = sess
+ ctx.authtoken = token
ctx.authuser = user
end
end
+ if c and require_post_security(c.target) then
+ if not test_post_security(c) then
+ return
+ end
+ end
+
if track.setgroup then
sys.process.setgroup(track.setgroup)
end
@@ -703,6 +722,20 @@ function call(name, ...)
return {type = "call", argv = {...}, name = name, target = _call}
end
+function post_on(params, name, ...)
+ return {
+ type = "call",
+ post = params,
+ argv = { ... },
+ name = name,
+ target = _call
+ }
+end
+
+function post(...)
+ return post_on(true, ...)
+end
+
local _template = function(self, ...)
require "luci.template".render(self.view)
@@ -814,7 +847,13 @@ local function _cbi(self, ...)
end
function cbi(model, config)
- return {type = "cbi", config = config, model = model, target = _cbi}
+ return {
+ type = "cbi",
+ post = { ["cbi.submit"] = "1" },
+ config = config,
+ model = model,
+ target = _cbi
+ }
end
@@ -854,7 +893,12 @@ local function _form(self, ...)
end
function form(model)
- return {type = "cbi", model = model, target = _form}
+ return {
+ type = "cbi",
+ post = { ["cbi.submit"] = "1" },
+ model = model,
+ target = _form
+ }
end
translate = i18n.translate
diff --git a/modules/luci-base/luasrc/http.lua b/modules/luci-base/luasrc/http.lua
index a92d8affb6..4b35731727 100644
--- a/modules/luci-base/luasrc/http.lua
+++ b/modules/luci-base/luasrc/http.lua
@@ -208,6 +208,7 @@ function splice(fd, size)
end
function redirect(url)
+ if url == "" then url = "/" end
status(302, "Found")
header("Location", url)
close()
diff --git a/modules/luci-base/luasrc/http.luadoc b/modules/luci-base/luasrc/http.luadoc
index 4e31216a1e..8a325db21a 100644
--- a/modules/luci-base/luasrc/http.luadoc
+++ b/modules/luci-base/luasrc/http.luadoc
@@ -1,8 +1,7 @@
---[[
LuCI Web Framework high-level HTTP functions.
-
-module "luci.http"
]]
+module "luci.http"
---[[
Close the HTTP-Connection.
diff --git a/modules/luci-base/luasrc/http/protocol.lua b/modules/luci-base/luasrc/http/protocol.lua
index 61d7b802fe..0cb62aeec9 100644
--- a/modules/luci-base/luasrc/http/protocol.lua
+++ b/modules/luci-base/luasrc/http/protocol.lua
@@ -72,7 +72,7 @@ function urlencode( str )
if type(str) == "string" then
str = str:gsub(
- "([^a-zA-Z0-9$_%-%.!*'(),])",
+ "([^a-zA-Z0-9$_%-%.%~])",
__chrenc
)
end
@@ -559,14 +559,23 @@ function parse_message_body( src, msg, filecb )
-- If we have a file callback then feed it
if type(filecb) == "function" then
- sink = filecb
-
+ local meta = {
+ name = "raw",
+ encoding = msg.env.CONTENT_TYPE
+ }
+ sink = function( chunk )
+ if chunk then
+ return filecb(meta, chunk, false)
+ else
+ return filecb(meta, nil, true)
+ end
+ end
-- ... else append to .content
else
msg.content = ""
msg.content_length = 0
- sink = function( chunk, err )
+ sink = function( chunk )
if chunk then
if ( msg.content_length + #chunk ) <= HTTP_MAX_CONTENT then
msg.content = msg.content .. chunk
diff --git a/modules/luci-base/luasrc/model/ipkg.lua b/modules/luci-base/luasrc/model/ipkg.lua
index 2e26bd7a16..e653b03465 100644
--- a/modules/luci-base/luasrc/model/ipkg.lua
+++ b/modules/luci-base/luasrc/model/ipkg.lua
@@ -127,22 +127,29 @@ local function _list(action, pat, cb)
(pat and (" '%s'" % pat:gsub("'", "")) or ""))
if fd then
- local name, version, desc
+ local name, version, sz, desc
while true do
local line = fd:read("*l")
if not line then break end
- name, version, desc = line:match("^(.-) %- (.-) %- (.+)")
+ name, version, sz, desc = line:match("^(.-) %- (.-) %- (.-) %- (.+)")
if not name then
- name, version = line:match("^(.-) %- (.+)")
+ name, version, sz = line:match("^(.-) %- (.-) %- (.+)")
desc = ""
end
- cb(name, version, desc)
+ if name and version then
+ if #version > 26 then
+ version = version:sub(1,21) .. ".." .. version:sub(-3,-1)
+ end
+
+ cb(name, version, sz, desc)
+ end
name = nil
version = nil
+ sz = nil
desc = nil
end
@@ -151,15 +158,15 @@ local function _list(action, pat, cb)
end
function list_all(pat, cb)
- _list("list", pat, cb)
+ _list("list --size", pat, cb)
end
function list_installed(pat, cb)
- _list("list_installed", pat, cb)
+ _list("list_installed --size", pat, cb)
end
function find(pat, cb)
- _list("find", pat, cb)
+ _list("find --size", pat, cb)
end
@@ -233,4 +240,3 @@ function compare_versions(ver1, comp, ver2)
-- all equal and not compare greater or lower then true
return not (comp == "<" or comp == ">")
end
-
diff --git a/modules/luci-base/luasrc/model/ipkg.luadoc b/modules/luci-base/luasrc/model/ipkg.luadoc
index 0dbab7a68f..4e1548dda6 100644
--- a/modules/luci-base/luasrc/model/ipkg.luadoc
+++ b/modules/luci-base/luasrc/model/ipkg.luadoc
@@ -1,8 +1,7 @@
---[[
LuCI OPKG call abstraction library
-
-module "luci.model.ipkg"
]]
+module "luci.model.ipkg"
---[[
Return information about installed and available packages.
diff --git a/modules/luci-base/luasrc/model/network.lua b/modules/luci-base/luasrc/model/network.lua
index 20e1032760..81fc416fed 100644
--- a/modules/luci-base/luasrc/model/network.lua
+++ b/modules/luci-base/luasrc/model/network.lua
@@ -1,8 +1,8 @@
-- Copyright 2009-2015 Jo-Philipp Wich <jow@openwrt.org>
-- Licensed to the public under the Apache License 2.0.
-local type, next, pairs, ipairs, loadfile, table
- = type, next, pairs, ipairs, loadfile, table
+local type, next, pairs, ipairs, loadfile, table, select
+ = type, next, pairs, ipairs, loadfile, table, select
local tonumber, tostring, math = tonumber, tostring, math
@@ -16,6 +16,7 @@ local utl = require "luci.util"
local dsp = require "luci.dispatcher"
local uci = require "luci.model.uci"
local lng = require "luci.i18n"
+local jsc = require "luci.jsonc"
module "luci.model.network"
@@ -31,10 +32,10 @@ local _protocols = { }
local _interfaces, _bridge, _switch, _tunnel
local _ubusnetcache, _ubusdevcache, _ubuswificache
-local _uci_real, _uci_state
+local _uci
function _filter(c, s, o, r)
- local val = _uci_real:get(c, s, o)
+ local val = _uci:get(c, s, o)
if val then
local l = { }
if type(val) == "string" then
@@ -44,9 +45,9 @@ function _filter(c, s, o, r)
end
end
if #l > 0 then
- _uci_real:set(c, s, o, table.concat(l, " "))
+ _uci:set(c, s, o, table.concat(l, " "))
else
- _uci_real:delete(c, s, o)
+ _uci:delete(c, s, o)
end
elseif type(val) == "table" then
for _, val in ipairs(val) do
@@ -55,16 +56,16 @@ function _filter(c, s, o, r)
end
end
if #l > 0 then
- _uci_real:set(c, s, o, l)
+ _uci:set(c, s, o, l)
else
- _uci_real:delete(c, s, o)
+ _uci:delete(c, s, o)
end
end
end
end
function _append(c, s, o, a)
- local val = _uci_real:get(c, s, o) or ""
+ local val = _uci:get(c, s, o) or ""
if type(val) == "string" then
local l = { }
for val in val:gmatch("%S+") do
@@ -73,7 +74,7 @@ function _append(c, s, o, a)
end
end
l[#l+1] = a
- _uci_real:set(c, s, o, table.concat(l, " "))
+ _uci:set(c, s, o, table.concat(l, " "))
elseif type(val) == "table" then
local l = { }
for _, val in ipairs(val) do
@@ -82,7 +83,7 @@ function _append(c, s, o, a)
end
end
l[#l+1] = a
- _uci_real:set(c, s, o, l)
+ _uci:set(c, s, o, l)
end
end
@@ -95,15 +96,15 @@ function _stror(s1, s2)
end
function _get(c, s, o)
- return _uci_real:get(c, s, o)
+ return _uci:get(c, s, o)
end
function _set(c, s, o, v)
if v ~= nil then
if type(v) == "boolean" then v = v and "1" or "0" end
- return _uci_real:set(c, s, o, v)
+ return _uci:set(c, s, o, v)
else
- return _uci_real:delete(c, s, o)
+ return _uci:delete(c, s, o)
end
end
@@ -127,7 +128,7 @@ function _wifi_state(key, val, field)
for radio, radiostate in pairs(_ubuswificache) do
for ifc, ifcstate in pairs(radiostate.interfaces) do
if ifcstate.section and ifcstate.section:sub(1, 1) == '@' then
- local s = _uci_real:get_all('wireless.%s' % ifcstate.section)
+ local s = _uci:get_all('wireless.%s' % ifcstate.section)
if s then
ifcstate.section = s['.name']
end
@@ -153,7 +154,7 @@ function _wifi_lookup(ifn)
local num = 0
ifnidx = tonumber(ifnidx)
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device == radio then
num = num + 1
@@ -166,20 +167,9 @@ function _wifi_lookup(ifn)
return sid
- -- looks like wifi, try to locate the section via state vars
+ -- looks like wifi, try to locate the section via ubus state
elseif _wifi_iface(ifn) then
- local sid = _wifi_state("ifname", ifn, "section")
- if not sid then
- _uci_state:foreach("wireless", "wifi-iface",
- function(s)
- if s.ifname == ifn then
- sid = s['.name']
- return false
- end
- end)
- end
-
- return sid
+ return _wifi_state("ifname", ifn, "section")
end
end
@@ -205,8 +195,7 @@ end
function init(cursor)
- _uci_real = cursor or _uci_real or uci.cursor()
- _uci_state = _uci_real:substate()
+ _uci = cursor or _uci or uci.cursor()
_interfaces = { }
_bridge = { }
@@ -281,13 +270,13 @@ function init(cursor)
end
function save(self, ...)
- _uci_real:save(...)
- _uci_real:load(...)
+ _uci:save(...)
+ _uci:load(...)
end
function commit(self, ...)
- _uci_real:commit(...)
- _uci_real:load(...)
+ _uci:commit(...)
+ _uci:load(...)
end
function ifnameof(self, x)
@@ -345,7 +334,7 @@ end
function add_network(self, n, options)
local oldnet = self:get_network(n)
if n and #n > 0 and n:match("^[a-zA-Z0-9_]+$") and not oldnet then
- if _uci_real:section("network", "interface", n, options) then
+ if _uci:section("network", "interface", n, options) then
return network(n)
end
elseif oldnet and oldnet:is_empty() then
@@ -360,7 +349,7 @@ function add_network(self, n, options)
end
function get_network(self, n)
- if n and _uci_real:get("network", n) == "interface" then
+ if n and _uci:get("network", n) == "interface" then
return network(n)
end
end
@@ -369,7 +358,7 @@ function get_networks(self)
local nets = { }
local nls = { }
- _uci_real:foreach("network", "interface",
+ _uci:foreach("network", "interface",
function(s)
nls[s['.name']] = network(s['.name'])
end)
@@ -383,18 +372,18 @@ function get_networks(self)
end
function del_network(self, n)
- local r = _uci_real:delete("network", n)
+ local r = _uci:delete("network", n)
if r then
- _uci_real:delete_all("network", "alias",
+ _uci:delete_all("network", "alias",
function(s) return (s.interface == n) end)
- _uci_real:delete_all("network", "route",
+ _uci:delete_all("network", "route",
function(s) return (s.interface == n) end)
- _uci_real:delete_all("network", "route6",
+ _uci:delete_all("network", "route6",
function(s) return (s.interface == n) end)
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
local net
local rest = { }
@@ -404,10 +393,10 @@ function del_network(self, n)
end
end
if #rest > 0 then
- _uci_real:set("wireless", s['.name'], "network",
+ _uci:set("wireless", s['.name'], "network",
table.concat(rest, " "))
else
- _uci_real:delete("wireless", s['.name'], "network")
+ _uci:delete("wireless", s['.name'], "network")
end
end)
end
@@ -417,31 +406,31 @@ end
function rename_network(self, old, new)
local r
if new and #new > 0 and new:match("^[a-zA-Z0-9_]+$") and not self:get_network(new) then
- r = _uci_real:section("network", "interface", new, _uci_real:get_all("network", old))
+ r = _uci:section("network", "interface", new, _uci:get_all("network", old))
if r then
- _uci_real:foreach("network", "alias",
+ _uci:foreach("network", "alias",
function(s)
if s.interface == old then
- _uci_real:set("network", s['.name'], "interface", new)
+ _uci:set("network", s['.name'], "interface", new)
end
end)
- _uci_real:foreach("network", "route",
+ _uci:foreach("network", "route",
function(s)
if s.interface == old then
- _uci_real:set("network", s['.name'], "interface", new)
+ _uci:set("network", s['.name'], "interface", new)
end
end)
- _uci_real:foreach("network", "route6",
+ _uci:foreach("network", "route6",
function(s)
if s.interface == old then
- _uci_real:set("network", s['.name'], "interface", new)
+ _uci:set("network", s['.name'], "interface", new)
end
end)
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
local net
local list = { }
@@ -453,12 +442,12 @@ function rename_network(self, old, new)
end
end
if #list > 0 then
- _uci_real:set("wireless", s['.name'], "network",
+ _uci:set("wireless", s['.name'], "network",
table.concat(list, " "))
end
end)
- _uci_real:delete("network", old)
+ _uci:delete("network", old)
end
end
return r or false
@@ -470,7 +459,7 @@ function get_interface(self, i)
else
local ifc
local num = { }
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device then
num[s.device] = num[s.device] and num[s.device] + 1 or 1
@@ -485,6 +474,21 @@ function get_interface(self, i)
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 = { }
@@ -493,7 +497,7 @@ function get_interfaces(self)
local baseof = { }
-- find normal interfaces
- _uci_real:foreach("network", "interface",
+ _uci:foreach("network", "interface",
function(s)
for iface in utl.imatch(s.ifname) do
if not _iface_ignore(iface) and not _wifi_iface(iface) then
@@ -510,7 +514,7 @@ function get_interfaces(self)
end
-- find vlan interfaces
- _uci_real:foreach("network", "switch_vlan",
+ _uci:foreach("network", "switch_vlan",
function(s)
if not s.device then
return
@@ -526,7 +530,7 @@ function get_interfaces(self)
end
end
if not base or not base:match("^eth%d") then
- base = "eth0"
+ base = swdev_from_board_json() or "eth0"
end
else
base = s.device
@@ -551,7 +555,7 @@ function get_interfaces(self)
-- find wifi interfaces
local num = { }
local wfs = { }
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device then
num[s.device] = num[s.device] and num[s.device] + 1 or 1
@@ -572,7 +576,7 @@ function ignore_interface(self, x)
end
function get_wifidev(self, dev)
- if _uci_real:get("wireless", dev) == "wifi-device" then
+ if _uci:get("wireless", dev) == "wifi-device" then
return wifidev(dev)
end
end
@@ -581,7 +585,7 @@ function get_wifidevs(self)
local devs = { }
local wfd = { }
- _uci_real:foreach("wireless", "wifi-device",
+ _uci:foreach("wireless", "wifi-device",
function(s) wfd[#wfd+1] = s['.name'] end)
local dev
@@ -601,9 +605,9 @@ end
function add_wifinet(self, net, options)
if type(options) == "table" and options.device and
- _uci_real:get("wireless", options.device) == "wifi-device"
+ _uci:get("wireless", options.device) == "wifi-device"
then
- local wnet = _uci_real:section("wireless", "wifi-iface", nil, options)
+ local wnet = _uci:section("wireless", "wifi-iface", nil, options)
return wifinet(wnet)
end
end
@@ -611,7 +615,7 @@ end
function del_wifinet(self, net)
local wnet = _wifi_lookup(net)
if wnet then
- _uci_real:delete("wireless", wnet)
+ _uci:delete("wireless", wnet)
return true
end
return false
@@ -684,7 +688,7 @@ end
function network(name, proto)
if name then
- local p = proto or _uci_real:get("network", name, "proto")
+ local p = proto or _uci:get("network", name, "proto")
local c = p and _protocols[p] or protocol
return c(name)
end
@@ -695,7 +699,7 @@ function protocol.__init__(self, name)
end
function protocol._get(self, opt)
- local v = _uci_real:get("network", self.sid, opt)
+ local v = _uci:get("network", self.sid, opt)
if type(v) == "table" then
return table.concat(v, " ")
end
@@ -730,7 +734,7 @@ function protocol.ifname(self)
end
if not ifname then
local num = { }
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device then
num[s.device] = num[s.device]
@@ -779,17 +783,21 @@ function protocol.uptime(self)
end
function protocol.expires(self)
- local a = tonumber(_uci_state:get("network", self.sid, "lease_acquired"))
- local l = tonumber(_uci_state:get("network", self.sid, "lease_lifetime"))
- if a and l then
- l = l - (nxo.sysinfo().uptime - a)
- return l > 0 and l or 0
+ local u = self:_ubus("uptime")
+ local d = self:_ubus("data")
+
+ if type(u) == "number" and type(d) == "table" and
+ type(d.leasetime) == "number"
+ then
+ local r = (d.leasetime - (u % d.leasetime))
+ return r > 0 and r or 0
end
+
return -1
end
function protocol.metric(self)
- return tonumber(_uci_state:get("network", self.sid, "metric")) or 0
+ return self:_ubus("metric") or 0
end
function protocol.ipaddr(self)
@@ -797,6 +805,20 @@ function protocol.ipaddr(self)
return addrs and #addrs > 0 and addrs[1].address
end
+function protocol.ipaddrs(self)
+ local addrs = self:_ubus("ipv4-address")
+ local rv = { }
+
+ if type(addrs) == "table" then
+ local n, addr
+ for n, addr in ipairs(addrs) do
+ rv[#rv+1] = "%s/%d" %{ addr.address, addr.mask }
+ end
+ end
+
+ return rv
+end
+
function protocol.netmask(self)
local addrs = self:_ubus("ipv4-address")
return addrs and #addrs > 0 and
@@ -835,6 +857,28 @@ function protocol.ip6addr(self)
end
end
+function protocol.ip6addrs(self)
+ local addrs = self:_ubus("ipv6-address")
+ local rv = { }
+ local n, addr
+
+ if type(addrs) == "table" then
+ for n, addr in ipairs(addrs) do
+ rv[#rv+1] = "%s/%d" %{ addr.address, addr.mask }
+ end
+ end
+
+ addrs = self:_ubus("ipv6-prefix-assignment")
+
+ if type(addrs) == "table" then
+ for n, addr in ipairs(addrs) do
+ rv[#rv+1] = "%s1/%d" %{ addr.address, addr.mask }
+ end
+ end
+
+ return rv
+end
+
function protocol.gw6addr(self)
local _, route
for _, route in ipairs(self:_ubus("route") or { }) do
@@ -885,7 +929,7 @@ function protocol.is_empty(self)
rv = false
end
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
local n
for n in utl.imatch(s.network) do
@@ -937,12 +981,12 @@ function protocol.get_interface(self)
else
local ifn = nil
local num = { }
- for ifn in utl.imatch(_uci_real:get("network", self.sid, "ifname")) do
+ for ifn in utl.imatch(_uci:get("network", self.sid, "ifname")) do
ifn = ifn:match("^[^:/]+")
return ifn and interface(ifn, self)
end
ifn = nil
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device then
num[s.device] = num[s.device] and num[s.device] + 1 or 1
@@ -977,7 +1021,7 @@ function protocol.get_interfaces(self)
local num = { }
local wfs = { }
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device then
num[s.device] = num[s.device] and num[s.device] + 1 or 1
@@ -1020,7 +1064,7 @@ function protocol.contains_interface(self, ifname)
local wif = _wifi_lookup(ifname)
if wif then
local n
- for n in utl.imatch(_uci_real:get("wireless", wif, "network")) do
+ for n in utl.imatch(_uci:get("wireless", wif, "network")) do
if n == self.sid then
return true
end
@@ -1066,7 +1110,8 @@ function interface.name(self)
end
function interface.mac(self)
- return (self:_ubus("macaddr") or "00:00:00:00:00:00"):upper()
+ local mac = self:_ubus("macaddr")
+ return mac and mac:upper()
end
function interface.ipaddrs(self)
@@ -1278,22 +1323,11 @@ function wifidev.is_up(self)
return (_ubuswificache[self.sid].up == true)
end
- local up = false
- _uci_state:foreach("wireless", "wifi-iface",
- function(s)
- if s.device == self.sid then
- if s.up == "1" then
- up = true
- return false
- end
- end
- end)
-
- return up
+ return false
end
function wifidev.get_wifinet(self, net)
- if _uci_real:get("wireless", net) == "wifi-iface" then
+ if _uci:get("wireless", net) == "wifi-iface" then
return wifinet(net)
else
local wnet = _wifi_lookup(net)
@@ -1306,7 +1340,7 @@ end
function wifidev.get_wifinets(self)
local nets = { }
- _uci_real:foreach("wireless", "wifi-iface",
+ _uci:foreach("wireless", "wifi-iface",
function(s)
if s.device == self.sid then
nets[#nets+1] = wifinet(s['.name'])
@@ -1320,7 +1354,7 @@ function wifidev.add_wifinet(self, options)
options = options or { }
options.device = self.sid
- local wnet = _uci_real:section("wireless", "wifi-iface", nil, options)
+ local wnet = _uci:section("wireless", "wifi-iface", nil, options)
if wnet then
return wifinet(wnet, options)
end
@@ -1329,12 +1363,12 @@ end
function wifidev.del_wifinet(self, net)
if utl.instanceof(net, wifinet) then
net = net.sid
- elseif _uci_real:get("wireless", net) ~= "wifi-iface" then
+ elseif _uci:get("wireless", net) ~= "wifi-iface" then
net = _wifi_lookup(net)
end
- if net and _uci_real:get("wireless", net, "device") == self.sid then
- _uci_real:delete("wireless", net)
+ if net and _uci:get("wireless", net, "device") == self.sid then
+ _uci:delete("wireless", net)
return true
end
@@ -1347,26 +1381,58 @@ wifinet = utl.class()
function wifinet.__init__(self, net, data)
self.sid = net
+ local n = 0
local num = { }
- local netid
- _uci_real:foreach("wireless", "wifi-iface",
+ local netid, sid
+ _uci:foreach("wireless", "wifi-iface",
function(s)
+ n = n + 1
if s.device then
num[s.device] = num[s.device] and num[s.device] + 1 or 1
if s['.name'] == self.sid then
+ sid = "@wifi-iface[%d]" % n
netid = "%s.network%d" %{ s.device, num[s.device] }
return false
end
end
end)
+ if sid then
+ local _, k, r, i
+ for k, r in pairs(_ubuswificache) do
+ if type(r) == "table" and
+ type(r.interfaces) == "table"
+ then
+ for _, i in ipairs(r.interfaces) do
+ if type(i) == "table" and i.section == sid then
+ self._ubusdata = {
+ radio = k,
+ dev = r,
+ net = i
+ }
+ end
+ end
+ end
+ end
+ end
+
local dev = _wifi_state("section", self.sid, "ifname") or netid
self.netid = netid
self.wdev = dev
self.iwinfo = dev and sys.wifi.getiwinfo(dev) or { }
- self.iwdata = data or _uci_state:get_all("wireless", self.sid) or
- _uci_real:get_all("wireless", self.sid) or { }
+end
+
+function wifinet.ubus(self, ...)
+ local n, v = self._ubusdata
+ for n = 1, select('#', ...) do
+ if type(v) == "table" then
+ v = v[select(n, ...)]
+ else
+ return nil
+ end
+ end
+ return v
end
function wifinet.get(self, opt)
@@ -1378,19 +1444,23 @@ function wifinet.set(self, opt, val)
end
function wifinet.mode(self)
- return _uci_state:get("wireless", self.sid, "mode") or "ap"
+ return self:ubus("net", "config", "mode") or self:get("mode") or "ap"
end
function wifinet.ssid(self)
- return _uci_state:get("wireless", self.sid, "ssid")
+ return self:ubus("net", "config", "ssid") or self:get("ssid")
end
function wifinet.bssid(self)
- return _uci_state:get("wireless", self.sid, "bssid")
+ return self:ubus("net", "config", "bssid") or self:get("bssid")
end
function wifinet.network(self)
- return _uci_state:get("wifinet", self.sid, "network")
+ local net, networks = nil, { }
+ for net in utl.imatch(self:ubus("net", "config", "network") or self:get("network")) do
+ networks[#networks+1] = net
+ end
+ return networks
end
function wifinet.id(self)
@@ -1402,7 +1472,7 @@ function wifinet.name(self)
end
function wifinet.ifname(self)
- local ifname = self.iwinfo.ifname
+ local ifname = self:ubus("net", "ifname") or self.iwinfo.ifname
if not ifname or ifname:match("^wifi%d") or ifname:match("^radio%d") then
ifname = self.wdev
end
@@ -1410,9 +1480,8 @@ function wifinet.ifname(self)
end
function wifinet.get_device(self)
- if self.iwdata.device then
- return wifidev(self.iwdata.device)
- end
+ local dev = self:ubus("radio") or self:get("device")
+ return dev and wifidev(dev) or nil
end
function wifinet.is_up(self)
@@ -1421,7 +1490,7 @@ function wifinet.is_up(self)
end
function wifinet.active_mode(self)
- local m = _stror(self.iwdata.mode, self.iwinfo.mode) or "ap"
+ local m = self.iwinfo.mode or self:ubus("net", "config", "mode") or self:get("mode") or "ap"
if m == "ap" then m = "Master"
elseif m == "sta" then m = "Client"
@@ -1438,11 +1507,11 @@ function wifinet.active_mode_i18n(self)
end
function wifinet.active_ssid(self)
- return _stror(self.iwdata.ssid, self.iwinfo.ssid)
+ return self.iwinfo.ssid or self:ubus("net", "config", "ssid") or self:get("ssid")
end
function wifinet.active_bssid(self)
- return _stror(self.iwdata.bssid, self.iwinfo.bssid) or "00:00:00:00:00:00"
+ return self.iwinfo.bssid or self:ubus("net", "config", "bssid") or self:get("bssid")
end
function wifinet.active_encryption(self)
@@ -1469,8 +1538,8 @@ function wifinet.bitrate(self)
end
function wifinet.channel(self)
- return self.iwinfo.channel or
- tonumber(_uci_state:get("wireless", self.iwdata.device, "channel"))
+ return self.iwinfo.channel or self:ubus("dev", "config", "channel") or
+ tonumber(self:get("channel"))
end
function wifinet.signal(self)
@@ -1482,7 +1551,7 @@ function wifinet.noise(self)
end
function wifinet.country(self)
- return self.iwinfo.country or "00"
+ return self.iwinfo.country or self:ubus("dev", "config", "country") or "00"
end
function wifinet.txpower(self)
@@ -1548,8 +1617,8 @@ end
function wifinet.get_networks(self)
local nets = { }
local net
- for net in utl.imatch(tostring(self.iwdata.network)) do
- if _uci_real:get("network", net) == "interface" then
+ for net in utl.imatch(self:ubus("net", "config", "network") or self:get("network")) do
+ if _uci:get("network", net) == "interface" then
nets[#nets+1] = network(net)
end
end
diff --git a/modules/luci-base/luasrc/model/uci.luadoc b/modules/luci-base/luasrc/model/uci.luadoc
index 1c208669d1..7591b68b02 100644
--- a/modules/luci-base/luasrc/model/uci.luadoc
+++ b/modules/luci-base/luasrc/model/uci.luadoc
@@ -8,8 +8,8 @@ Cursor.commit the data to the actual config files.
LuCI then needs to Cursor.apply the changes so deamons etc. are
reloaded.
@cstyle instance
-module "luci.model.uci"
]]
+module "luci.model.uci"
---[[
Create a new UCI-Cursor.
@@ -235,12 +235,18 @@ Saves changes made to a config to make them committable.
---[[
Set a value or create a named section.
+When invoked with three arguments `config`, `sectionname`, `sectiontype`,
+then a named section of the given type is created.
+
+When invoked with four arguments `config`, `sectionname`, `optionname` and
+`optionvalue` then the value of the specified option is set to the given value.
+
@class function
@name Cursor.set
@param config UCI config
@param section UCI section name
@param option UCI option or UCI section type
-@param value UCI value or nil if you want to create a section
+@param value UCI value or nothing if you want to create a section
@return Boolean whether operation succeeded
]]
diff --git a/modules/luci-base/luasrc/sys.lua b/modules/luci-base/luasrc/sys.lua
index 3977da3eda..31c3e12095 100644
--- a/modules/luci-base/luasrc/sys.lua
+++ b/modules/luci-base/luasrc/sys.lua
@@ -293,47 +293,51 @@ function net.ipv6_hints(callback)
end
function net.conntrack(callback)
- local connt = {}
- if fs.access("/proc/net/nf_conntrack", "r") then
- for line in io.lines("/proc/net/nf_conntrack") do
- line = line:match "^(.-( [^ =]+=).-)%2"
- local entry, flags = _parse_mixed_record(line, " +")
- if flags[6] ~= "TIME_WAIT" then
- entry.layer3 = flags[1]
- entry.layer4 = flags[3]
- for i=1, #entry do
- entry[i] = nil
- end
+ local ok, nfct = pcall(io.lines, "/proc/net/nf_conntrack")
+ if not ok or not nfct then
+ return nil
+ end
- if callback then
- callback(entry)
- else
- connt[#connt+1] = entry
+ local line, connt = nil, (not callback) and { }
+ for line in nfct do
+ local fam, l3, l4, timeout, state, tuples =
+ line:match("^(ipv[46]) +(%d+) +%S+ +(%d+) +(%d+) +([A-Z_]+) +(.+)$")
+
+ if fam and l3 and l4 and timeout and state and tuples and
+ state ~= "TIME_WAIT"
+ then
+ l4 = nixio.getprotobynumber(l4)
+
+ local entry = {
+ bytes = 0,
+ packets = 0,
+ layer3 = fam,
+ layer4 = l4 and l4.name or "unknown",
+ timeout = tonumber(timeout, 10)
+ }
+
+ local key, val
+ for key, val in tuples:gmatch("(%w+)=(%S+)") do
+ if key == "bytes" or key == "packets" then
+ entry[key] = entry[key] + tonumber(val, 10)
+ elseif key == "src" or key == "dst" or key == "sport" or key == "dport" then
+ if entry[key] == nil then
+ entry[key] = val
+ end
+ elseif val then
+ entry[key] = val
end
end
- end
- elseif fs.access("/proc/net/ip_conntrack", "r") then
- for line in io.lines("/proc/net/ip_conntrack") do
- line = line:match "^(.-( [^ =]+=).-)%2"
- local entry, flags = _parse_mixed_record(line, " +")
- if flags[4] ~= "TIME_WAIT" then
- entry.layer3 = "ipv4"
- entry.layer4 = flags[1]
- for i=1, #entry do
- entry[i] = nil
- end
- if callback then
- callback(entry)
- else
- connt[#connt+1] = entry
- end
+ if callback then
+ callback(entry)
+ else
+ connt[#connt+1] = entry
end
end
- else
- return nil
end
- return connt
+
+ return callback and true or connt
end
function net.devices()
@@ -581,30 +585,20 @@ function wifi.getiwinfo(ifname)
local stat, iwinfo = pcall(require, "iwinfo")
if ifname then
- local c = 0
- local u = uci.cursor_state()
local d, n = ifname:match("^(%w+)%.network(%d+)")
- if d and n then
+ local wstate = luci.util.ubus("network.wireless", "status") or { }
+
+ d = d or ifname
+ n = n and tonumber(n) or 1
+
+ if type(wstate[d]) == "table" and
+ type(wstate[d].interfaces) == "table" and
+ type(wstate[d].interfaces[n]) == "table" and
+ type(wstate[d].interfaces[n].ifname) == "string"
+ then
+ ifname = wstate[d].interfaces[n].ifname
+ else
ifname = d
- n = tonumber(n)
- u:foreach("wireless", "wifi-iface",
- function(s)
- if s.device == d then
- c = c + 1
- if c == n then
- ifname = s.ifname or s.device
- return false
- end
- end
- end)
- elseif u:get("wireless", ifname) == "wifi-device" then
- u:foreach("wireless", "wifi-iface",
- function(s)
- if s.device == ifname and s.ifname then
- ifname = s.ifname
- return false
- end
- end)
end
local t = stat and iwinfo.type(ifname)
@@ -665,28 +659,3 @@ end
function init.stop(name)
return (init_action("stop", name) == 0)
end
-
-
--- Internal functions
-
-function _parse_mixed_record(cnt, delimiter)
- delimiter = delimiter or " "
- local data = {}
- local flags = {}
-
- for i, l in pairs(luci.util.split(luci.util.trim(cnt), "\n")) do
- for j, f in pairs(luci.util.split(luci.util.trim(l), delimiter, nil, true)) do
- local k, x, v = f:match('([^%s][^:=]*) *([:=]*) *"*([^\n"]*)"*')
-
- if k then
- if x == "" then
- table.insert(flags, k)
- else
- data[k] = v
- end
- end
- end
- end
-
- return data, flags
-end
diff --git a/modules/luci-base/luasrc/sys.luadoc b/modules/luci-base/luasrc/sys.luadoc
index 72a16a1ab0..54be34958a 100644
--- a/modules/luci-base/luasrc/sys.luadoc
+++ b/modules/luci-base/luasrc/sys.luadoc
@@ -1,8 +1,7 @@
---[[
LuCI Linux and POSIX system utilities.
-
-module "luci.sys"
]]
+module "luci.sys"
---[[
Execute a given shell command and return the error code
diff --git a/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua b/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua
index b604f6b65e..ff13b1ccd2 100644
--- a/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua
+++ b/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua
@@ -89,7 +89,7 @@ TZ = {
{ 'America/Cancun', 'EST5' },
{ 'America/Caracas', 'VET4:30' },
{ 'America/Cayenne', 'GFT3' },
- { 'America/Cayman', 'EST5' },
+ { 'America/Cayman', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/Chicago', 'CST6CDT,M3.2.0,M11.1.0' },
{ 'America/Chihuahua', 'MST7MDT,M4.1.0,M10.5.0' },
{ 'America/Costa Rica', 'CST6' },
@@ -105,6 +105,7 @@ TZ = {
{ 'America/Edmonton', 'MST7MDT,M3.2.0,M11.1.0' },
{ 'America/Eirunepe', 'ACT5' },
{ 'America/El Salvador', 'CST6' },
+ { 'America/Fort Nelson', 'MST7' },
{ 'America/Fortaleza', 'BRT3' },
{ 'America/Glace Bay', 'AST4ADT,M3.2.0,M11.1.0' },
{ 'America/Godthab', 'WGT3WGST,M3.5.0/-2,M10.5.0/-1' },
@@ -151,7 +152,7 @@ TZ = {
{ 'America/Miquelon', 'PMST3PMDT,M3.2.0,M11.1.0' },
{ 'America/Moncton', 'AST4ADT,M3.2.0,M11.1.0' },
{ 'America/Monterrey', 'CST6CDT,M4.1.0,M10.5.0' },
- { 'America/Montevideo', 'UYT3UYST,M10.1.0,M3.2.0' },
+ { 'America/Montevideo', 'UYT3' },
{ 'America/Montserrat', 'AST4' },
{ 'America/Nassau', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/New York', 'EST5EDT,M3.2.0,M11.1.0' },
@@ -266,7 +267,7 @@ TZ = {
{ 'Asia/Oral', 'ORAT-5' },
{ 'Asia/Phnom Penh', 'ICT-7' },
{ 'Asia/Pontianak', 'WIB-7' },
- { 'Asia/Pyongyang', 'KST-9' },
+ { 'Asia/Pyongyang', 'KST-8:30' },
{ 'Asia/Qatar', 'AST-3' },
{ 'Asia/Qyzylorda', 'QYZT-6' },
{ 'Asia/Rangoon', 'MMT-6:30' },
@@ -322,7 +323,7 @@ TZ = {
{ 'Europe/Bucharest', 'EET-2EEST,M3.5.0/3,M10.5.0/4' },
{ 'Europe/Budapest', 'CET-1CEST,M3.5.0,M10.5.0/3' },
{ 'Europe/Busingen', 'CET-1CEST,M3.5.0,M10.5.0/3' },
- { 'Europe/Chisinau', 'EET-2EEST,M3.5.0/3,M10.5.0/4' },
+ { 'Europe/Chisinau', 'EET-2EEST,M3.5.0,M10.5.0/3' },
{ 'Europe/Copenhagen', 'CET-1CEST,M3.5.0,M10.5.0/3' },
{ 'Europe/Dublin', 'GMT0IST,M3.5.0/1,M10.5.0' },
{ 'Europe/Gibraltar', 'CET-1CEST,M3.5.0,M10.5.0/3' },
@@ -388,7 +389,7 @@ TZ = {
{ 'Pacific/Efate', 'VUT-11' },
{ 'Pacific/Enderbury', 'PHOT-13' },
{ 'Pacific/Fakaofo', 'TKT-13' },
- { 'Pacific/Fiji', 'FJT-12FJST,M11.1.0,M1.3.4/75' },
+ { 'Pacific/Fiji', 'FJT-12FJST,M11.1.0,M1.3.0/3' },
{ 'Pacific/Funafuti', 'TVT-12' },
{ 'Pacific/Galapagos', 'GALT6' },
{ 'Pacific/Gambier', 'GAMT9' },
@@ -404,7 +405,7 @@ TZ = {
{ 'Pacific/Midway', 'SST11' },
{ 'Pacific/Nauru', 'NRT-12' },
{ 'Pacific/Niue', 'NUT11' },
- { 'Pacific/Norfolk', 'NFT-11:30' },
+ { 'Pacific/Norfolk', 'NFT-11' },
{ 'Pacific/Noumea', 'NCT-11' },
{ 'Pacific/Pago Pago', 'SST11' },
{ 'Pacific/Palau', 'PWT-9' },
diff --git a/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua b/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua
index 24429ac36b..53c8adbc69 100644
--- a/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua
+++ b/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua
@@ -41,7 +41,6 @@ OFFSET = {
pmst = -10800, -- PMST
pmdt = -7200, -- PMDT
uyt = -10800, -- UYT
- uyst = -7200, -- UYST
fnt = -7200, -- FNT
srt = -10800, -- SRT
clt = -10800, -- CLT
@@ -95,7 +94,7 @@ OFFSET = {
novt = 21600, -- NOVT
omst = 21600, -- OMST
orat = 18000, -- ORAT
- kst = 32400, -- KST
+ kst = 30600, -- KST
qyzt = 21600, -- QYZT
mmt = 23400, -- MMT
sakt = 36000, -- SAKT
@@ -153,7 +152,7 @@ OFFSET = {
sst = -39600, -- SST
nrt = 43200, -- NRT
nut = -39600, -- NUT
- nft = 41400, -- NFT
+ nft = 39600, -- NFT
nct = 39600, -- NCT
pwt = 32400, -- PWT
pont = 39600, -- PONT
diff --git a/modules/luci-base/luasrc/util.lua b/modules/luci-base/luasrc/util.lua
index dcf8230b3e..5bf0beb6c2 100644
--- a/modules/luci-base/luasrc/util.lua
+++ b/modules/luci-base/luasrc/util.lua
@@ -9,6 +9,7 @@ local ldebug = require "luci.debug"
local string = require "string"
local coroutine = require "coroutine"
local tparser = require "luci.template.parser"
+local json = require "luci.jsonc"
local _ubus = require "ubus"
local _ubus_connection = nil
@@ -150,6 +151,28 @@ function striptags(value)
return value and tparser.striptags(tostring(value))
end
+-- for bash, ash and similar shells single-quoted strings are taken
+-- literally except for single quotes (which terminate the string)
+-- (and the exception noted below for dash (-) at the start of a
+-- command line parameter).
+function shellsqescape(value)
+ local res
+ res, _ = string.gsub(res, "'", "'\\''")
+ return res
+end
+
+-- bash, ash and other similar shells interpret a dash (-) at the start
+-- of a command-line parameters as an option indicator regardless of
+-- whether it is inside a single-quoted string. It must be backlash
+-- escaped to resolve this. This requires in some funky special-case
+-- handling. It may actually be a property of the getopt function
+-- rather than the shell proper.
+function shellstartsqescape(value)
+ res, _ = string.gsub(value, "^\-", "\\-")
+ res, _ = string.gsub(res, "^-", "\-")
+ return shellsqescape(value)
+end
+
-- containing the resulting substrings. The optional max parameter specifies
-- the number of bytes to process, regardless of the actual length of the given
-- string. The optional last parameter, regex, specifies whether the separator
@@ -600,55 +623,11 @@ function ubus(object, method, data)
end
function serialize_json(x, cb)
- local rv, push = nil, cb
- if not push then
- rv = { }
- push = function(tok) rv[#rv+1] = tok end
- end
-
- if x == nil then
- push("null")
- elseif type(x) == "table" then
- -- test if table is array like
- local k, v
- local n1, n2 = 0, 0
- for k in pairs(x) do n1 = n1 + 1 end
- for k in ipairs(x) do n2 = n2 + 1 end
-
- if n1 == n2 and n1 > 0 then
- push("[")
- for k = 1, n2 do
- if k > 1 then
- push(",")
- end
- serialize_json(x[k], push)
- end
- push("]")
- else
- push("{")
- for k, v in pairs(x) do
- push("%q:" % tostring(k))
- serialize_json(v, push)
- if next(x, k) then
- push(",")
- end
- end
- push("}")
- end
- elseif type(x) == "number" or type(x) == "boolean" then
- if (x ~= x) then
- -- NaN is the only value that doesn't equal to itself.
- push("Number.NaN")
- else
- push(tostring(x))
- end
+ local js = json.stringify(x)
+ if type(cb) == "function" then
+ cb(js)
else
- push('"%s"' % tostring(x):gsub('["%z\1-\31\\]',
- function(c) return '\\u%04x' % c:byte(1) end))
- end
-
- if not cb then
- return table.concat(rv, "")
+ return js
end
end
diff --git a/modules/luci-base/luasrc/util.luadoc b/modules/luci-base/luasrc/util.luadoc
index 1c09b7a9ab..805eeb7f8e 100644
--- a/modules/luci-base/luasrc/util.luadoc
+++ b/modules/luci-base/luasrc/util.luadoc
@@ -1,8 +1,7 @@
---[[
LuCI utility functions.
-
-module "luci.util"
]]
+module "luci.util"
---[[
Create a Class object (Python-style object model).
@@ -182,7 +181,8 @@ Checks whether the given table contains the given value.
@name contains
@param table Table value
@param value Value to search within the given table
-@return Boolean indicating whether the given value occurs within table
+@return number indicating the first index at which the given value occurs
+-- within table or false.
]]
---[[
diff --git a/modules/luci-base/luasrc/view/cbi/apply_xhr.htm b/modules/luci-base/luasrc/view/cbi/apply_xhr.htm
index 1814c9393b..daa57c1db7 100644
--- a/modules/luci-base/luasrc/view/cbi/apply_xhr.htm
+++ b/modules/luci-base/luasrc/view/cbi/apply_xhr.htm
@@ -4,10 +4,10 @@
<script type="text/javascript">//<![CDATA[
var apply_xhr = new XHR();
- apply_xhr.get('<%=luci.dispatcher.build_url("servicectl", "restart", table.concat(configs, ","))%>', null,
+ apply_xhr.post('<%=url('servicectl/restart', table.concat(configs, ","))%>', { token: '<%=token%>' },
function() {
var checkfinish = function() {
- apply_xhr.get('<%=luci.dispatcher.build_url("servicectl", "status")%>', null,
+ apply_xhr.get('<%=url('servicectl/status')%>', null,
function(x) {
if( x.responseText == 'finish' )
{
diff --git a/modules/luci-base/luasrc/view/cbi/browser.htm b/modules/luci-base/luasrc/view/cbi/browser.htm
index e4a4077d55..a18120141d 100644
--- a/modules/luci-base/luasrc/view/cbi/browser.htm
+++ b/modules/luci-base/luasrc/view/cbi/browser.htm
@@ -2,6 +2,6 @@
<%+cbi/valueheader%>
<input class="cbi-input-text" type="text"<%= attr("value", v) .. attr("name", cbid) .. attr("id", cbid) %> />
<script type="text/javascript">
-cbi_browser_init('<%=cbid%>', '<%=resource%>', '<%=luci.dispatcher.build_url("admin", "filebrowser")%>'<%=self.default_path and ", '"..self.default_path.."'"%>);
+cbi_browser_init('<%=cbid%>', '<%=resource%>', '<%=url('admin/filebrowser')%>'<%=self.default_path and ", '"..self.default_path.."'"%>);
</script>
<%+cbi/valuefooter%>
diff --git a/modules/luci-base/luasrc/view/cbi/dynlist.htm b/modules/luci-base/luasrc/view/cbi/dynlist.htm
index fd626a4ecf..e936c0c39f 100644
--- a/modules/luci-base/luasrc/view/cbi/dynlist.htm
+++ b/modules/luci-base/luasrc/view/cbi/dynlist.htm
@@ -15,7 +15,9 @@
<script type="text/javascript">
cbi_dynlist_init(
'<%=cbid%>', '<%=resource%>', '<%=self.datatype%>',
- <%=tostring(self.optional or self.rmempty)%>
+ <%=tostring(self.optional or self.rmempty)%>,
+ '<%=url('admin/filebrowser')%>',
+ '<%=self.default_path and self.default_path%>'
<%- if #self.keylist > 0 then -%>, [{
<%- for i, k in ipairs(self.keylist) do -%>
<%-=string.format("%q", k) .. ":" .. string.format("%q", self.vallist[i])-%>
diff --git a/modules/luci-base/luasrc/view/cbi/error.htm b/modules/luci-base/luasrc/view/cbi/error.htm
index 2acb96924e..75ec1082aa 100644
--- a/modules/luci-base/luasrc/view/cbi/error.htm
+++ b/modules/luci-base/luasrc/view/cbi/error.htm
@@ -1,5 +1,5 @@
<div class="cbi-map" id="cbi-<%=self.config%>">
- <% if self.title and #self.title > 0 then %><h2><a id="content" name="content"><%=self.title%></a></h2><% end %>
+ <% if self.title and #self.title > 0 then %><h2 name="content"><%=self.title%></h2><% end %>
<% if self.description and #self.description > 0 then %><div class="cbi-map-descr"><%=self.description%></div><% end %>
<p class="alert-message danger">
diff --git a/modules/luci-base/luasrc/view/cbi/header.htm b/modules/luci-base/luasrc/view/cbi/header.htm
index 2bddaba61a..302df1d2fd 100644
--- a/modules/luci-base/luasrc/view/cbi/header.htm
+++ b/modules/luci-base/luasrc/view/cbi/header.htm
@@ -2,6 +2,7 @@
<form method="post" name="cbi" action="<%=REQUEST_URI%>" enctype="multipart/form-data" onreset="return cbi_validate_reset(this)" onsubmit="return cbi_validate_form(this, '<%:Some fields are invalid, cannot save values!%>')">
<div>
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="cbi.submit" value="1" />
<input type="submit" value="<%:Save%>" class="hidden" />
</div>
diff --git a/modules/luci-base/luasrc/view/cbi/map.htm b/modules/luci-base/luasrc/view/cbi/map.htm
index 053220d185..e90c3f589f 100644
--- a/modules/luci-base/luasrc/view/cbi/map.htm
+++ b/modules/luci-base/luasrc/view/cbi/map.htm
@@ -5,7 +5,7 @@
<%-+cbi/apply_xhr-%>
<div class="cbi-map" id="cbi-<%=self.config%>">
- <% if self.title and #self.title > 0 then %><h2><a id="content" name="content"><%=self.title%></a></h2><% end %>
+ <% if self.title and #self.title > 0 then %><h2 name="content"><%=self.title%></h2><% end %>
<% if self.description and #self.description > 0 then %><div class="cbi-map-descr"><%=self.description%></div><% end %>
<%- if firstmap and applymap then cbi_apply_xhr(self.config, parsechain, redirect) end -%>
<%- self:render_children() %>
diff --git a/modules/luci-base/luasrc/view/cbi/mvalue.htm b/modules/luci-base/luasrc/view/cbi/mvalue.htm
index 6a0b3881d0..5d092610ed 100644
--- a/modules/luci-base/luasrc/view/cbi/mvalue.htm
+++ b/modules/luci-base/luasrc/view/cbi/mvalue.htm
@@ -12,7 +12,7 @@
c = c + 1
%>
<input class="cbi-input-checkbox" type="checkbox" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)"<%= attr("id", cbid..c) .. attr("name", cbid) .. attr("value", key) .. ifattr(luci.util.contains(v, key), "checked", "checked") %> />
- <label<%= attr("for", cbid..c) %>><%=self.vallist[i]%></label><br />
+ <label<%= attr("for", cbid..c) %>><%=self.vallist[i]%></label><% if not self.oneline then %><br /><% else %> <% end %>
<% if c == self.size then c = 0 %><br />
<% end end %>
<% end %>
diff --git a/modules/luci-base/luasrc/view/cbi/simpleform.htm b/modules/luci-base/luasrc/view/cbi/simpleform.htm
index 5216cd50f1..78f5c5a544 100644
--- a/modules/luci-base/luasrc/view/cbi/simpleform.htm
+++ b/modules/luci-base/luasrc/view/cbi/simpleform.htm
@@ -2,11 +2,12 @@
<form method="post" enctype="multipart/form-data" action="<%=REQUEST_URI%>">
<div>
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="cbi.submit" value="1" />
</div>
<% end %>
<div class="cbi-map" id="cbi-<%=self.config%>">
- <% if self.title and #self.title > 0 then %><h2><a id="content" name="content"><%=self.title%></a></h2><% end %>
+ <% if self.title and #self.title > 0 then %><h2 name="content"><%=self.title%></h2><% end %>
<% if self.description and #self.description > 0 then %><div class="cbi-map-descr"><%=self.description%></div><% end %>
<% self:render_children() %>
<br />
diff --git a/modules/luci-base/luasrc/view/cbi/upload.htm b/modules/luci-base/luasrc/view/cbi/upload.htm
index 7770934111..157f3b36fa 100644
--- a/modules/luci-base/luasrc/view/cbi/upload.htm
+++ b/modules/luci-base/luasrc/view/cbi/upload.htm
@@ -6,9 +6,19 @@
<%+cbi/valueheader%>
<% if s then %>
<%:Uploaded File%> (<%=t.byte_format(s.size)%>)
- <input type="hidden"<%= attr("value", v) .. attr("name", cbid) .. attr("id", cbid) %> />
- <input class="cbi-button cbi-input-image" type="image" value="<%:Replace entry%>" name="cbi.rlf.<%=section .. "." .. self.option%>" alt="<%:Replace entry%>" title="<%:Replace entry%>" src="<%=resource%>/cbi/reload.gif" />
- <% else %>
+ <% if self.unsafeupload then %>
+ <input type="hidden"<%= attr("value", v) .. attr("name", cbid) .. attr("id", cbid) %> />
+ <input class="cbi-button cbi-input-image" type="image" value="<%:Replace entry%>" name="cbi.rlf.<%=section .. "." .. self.option%>" alt="<%:Replace entry%>" title="<%:Replace entry%>" src="<%=resource%>/cbi/reload.gif" />
+ <% end %>
+ <% end %>
+
+ <% if not self.unsafeupload then %>
+ <input type="hidden"<%= attr("value", v) .. attr("name", "cbi.rlf." .. section .. "." .. self.option) .. attr("id", "cbi.rlf." .. section .. "." .. self.option) %> />
+ <% end %>
+
+ <% if (not s) or (s and not self.unsafeupload) then %>
<input class="cbi-input-file" type="file"<%= attr("name", cbid) .. attr("id", cbid) %> />
<% end %>
+ <input type="text" class="cbi-input-text" onchange="cbi_d_update(this.id)"<%=
+ attr("name", cbid .. ".textbox") .. attr("id", cbid .. ".textbox") .. attr("value", luci.cbi.AbstractValue.cfgvalue(self, section) or self.default) .. ifattr(self.size, "size") .. ifattr(self.placeholder, "placeholder") .. ifattr(self.readonly, "readonly") .. ifattr(self.maxlength, "maxlength") %> />
<%+cbi/valuefooter%>
diff --git a/modules/luci-base/luasrc/view/cbi/value.htm b/modules/luci-base/luasrc/view/cbi/value.htm
index d1a7bea5c6..c43dab5f4b 100644
--- a/modules/luci-base/luasrc/view/cbi/value.htm
+++ b/modules/luci-base/luasrc/view/cbi/value.htm
@@ -1,7 +1,8 @@
<%+cbi/valueheader%>
<input type="<%=self.password and 'password" class="cbi-input-password' or 'text" class="cbi-input-text' %>" onchange="cbi_d_update(this.id)"<%=
attr("name", cbid) .. attr("id", cbid) .. attr("value", self:cfgvalue(section) or self.default) ..
- ifattr(self.size, "size") .. ifattr(self.placeholder, "placeholder")
+ ifattr(self.size, "size") .. ifattr(self.placeholder, "placeholder") ..
+ ifattr(self.readonly, "readonly") .. ifattr(self.maxlength, "maxlength")
%> />
<% if self.password then %><img src="<%=resource%>/cbi/reload.gif" style="vertical-align:middle" title="<%:Reveal/hide password%>" onclick="var e = document.getElementById('<%=cbid%>'); e.type = (e.type=='password') ? 'text' : 'password';" /><% end %>
<% if #self.keylist > 0 or self.datatype then -%>
@@ -28,7 +29,7 @@
<%- end -%>');
<%- end %>
<% if self.datatype then -%>
- cbi_validate_field('<%=cbid%>', <%=tostring((self.optional or self.rmempty) == true)%>, '<%=self.datatype:gsub("'", "\\'")%>');
+ cbi_validate_field('<%=cbid%>', <%=tostring((self.optional or self.rmempty) == true)%>, '<%=self.datatype:gsub("\\", "\\\\"):gsub("'", "\\'")%>');
<%- end %>
//]]></script>
<% end -%>
diff --git a/modules/luci-base/luasrc/view/csrftoken.htm b/modules/luci-base/luasrc/view/csrftoken.htm
new file mode 100644
index 0000000000..57ac03f3bf
--- /dev/null
+++ b/modules/luci-base/luasrc/view/csrftoken.htm
@@ -0,0 +1,24 @@
+<%#
+ Copyright 2015 Jo-Philipp Wich <jow@openwrt.org>
+ Licensed to the public under the Apache License 2.0.
+-%>
+
+<%+header%>
+
+<h2 name="content"><%:Form token mismatch%></h2>
+<br />
+
+<p class="alert-message"><%:The submitted security token is invalid or already expired!%></p>
+
+<p><%:
+ In order to prevent unauthorized access to the system, your request has
+ been blocked. Click "Continue »" below to return to the previous page.
+%></p>
+
+<hr />
+
+<p class="right">
+ <strong><a href="#" onclick="window.history.back();">Continue »</a></strong>
+</p>
+
+<%+footer%>
diff --git a/modules/luci-base/luasrc/view/error404.htm b/modules/luci-base/luasrc/view/error404.htm
index c2be29ed58..bc74226830 100644
--- a/modules/luci-base/luasrc/view/error404.htm
+++ b/modules/luci-base/luasrc/view/error404.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content">404 <%:Not Found%></a></h2>
+<h2 name="content">404 <%:Not Found%></h2>
<p><%:Sorry, the object you requested was not found.%></p>
<tt><%:Unable to dispatch%>: <%=luci.http.request.env.PATH_INFO%></tt>
<%+footer%>
diff --git a/modules/luci-base/luasrc/view/error500.htm b/modules/luci-base/luasrc/view/error500.htm
index 8fb18ed076..34a52cda84 100644
--- a/modules/luci-base/luasrc/view/error500.htm
+++ b/modules/luci-base/luasrc/view/error500.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content">500 <%:Internal Server Error%></a></h2>
+<h2 name="content">500 <%:Internal Server Error%></h2>
<p><%:Sorry, the server encountered an unexpected error.%></p>
<pre class="error500"><%=message%></pre>
<%+footer%>
diff --git a/modules/luci-base/luasrc/view/sysauth.htm b/modules/luci-base/luasrc/view/sysauth.htm
index 7f0f0a622b..e207504911 100644
--- a/modules/luci-base/luasrc/view/sysauth.htm
+++ b/modules/luci-base/luasrc/view/sysauth.htm
@@ -8,7 +8,7 @@
<form method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
<div class="cbi-map">
- <h2><a id="content" name="content"><%:Authorization Required%></a></h2>
+ <h2 name="content"><%:Authorization Required%></h2>
<div class="cbi-map-descr">
<%:Please enter your username and password.%>
<%- if fuser then %>
diff --git a/modules/luci-base/po/ca/base.po b/modules/luci-base/po/ca/base.po
index 2252e7c951..c77bf5fd05 100644
--- a/modules/luci-base/po/ca/base.po
+++ b/modules/luci-base/po/ca/base.po
@@ -46,6 +46,9 @@ msgstr "Càrrega d'1 minut:"
msgid "15 Minute Load:"
msgstr "Càrrega de 15 minuts:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Càrrega de 5 minuts:"
@@ -207,6 +210,9 @@ msgstr "Afegeix una interfície nova..."
msgid "Additional Hosts files"
msgstr "Fitxers de Hosts addicionals"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adreça"
@@ -269,6 +275,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -325,6 +337,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponible"
@@ -334,6 +361,9 @@ msgstr "Paquets disponibles"
msgid "Average:"
msgstr "Mitjana:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -410,6 +440,11 @@ msgstr "Controlador sense fil Broadcom BCM%04x 802.11"
msgid "Buffered"
msgstr "En memòria intermèdia"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Botons"
@@ -446,6 +481,9 @@ msgstr "Canal"
msgid "Check"
msgstr "Comprovació"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Suma de verificació"
@@ -563,6 +601,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -638,9 +684,6 @@ msgstr ""
msgid "Delete"
msgstr "Suprimeix"
-msgid "Delete this interface"
-msgstr "Suprimeix aquesta interfície"
-
msgid "Delete this network"
msgstr "Suprimeix aquesta xarxa"
@@ -659,6 +702,12 @@ msgstr "Dispositiu"
msgid "Device Configuration"
msgstr "Configuració de dispositiu"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnòstics"
@@ -699,6 +748,9 @@ msgstr "Optimització de distància"
msgid "Distance to farthest network member in meters."
msgstr "Distància al membre de la xarxa més allunyat en metres."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversitat"
@@ -769,6 +821,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Mètode EAP"
@@ -877,6 +932,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Fast Frames"
@@ -898,6 +956,11 @@ msgstr "Filtra privat"
msgid "Filter useless"
msgstr "Filtra els no útils"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Troba i uneix-te a la xarxa"
@@ -922,9 +985,6 @@ msgstr "Versió de microprogramari"
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr "Flags"
-
msgid "Flash Firmware"
msgstr "Reescriu el microprogramari"
@@ -955,6 +1015,9 @@ msgstr "Força el TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Força el TKIP i el CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Reenvia el tràfic DHCP"
@@ -994,6 +1057,12 @@ msgstr "Ajusts generals"
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -1005,6 +1074,9 @@ msgstr ""
"La contrasenya i la confirmació de contrasenya no es coincideixen. La "
"contrasenya no s'ha canviat!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1105,6 +1177,9 @@ msgstr "Màscara de xarxa IPv4"
msgid "IPv4 only"
msgstr "Només IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Longitud de prefix IPv4"
@@ -1200,8 +1275,8 @@ msgstr ""
"es pot accedir al dispositiu d'intercanvi amb unes taxes tan altes com les "
"de la <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr ""
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignora <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Ignora la interfície"
@@ -1215,6 +1290,11 @@ msgstr "Imatge"
msgid "In"
msgstr "En"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Temps d'espera d'inactivitat"
@@ -1396,6 +1476,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1417,6 +1500,9 @@ msgstr "Carrega mitjana"
msgid "Loading"
msgstr "Carregant"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Adreça IPv4 local"
@@ -1484,6 +1570,9 @@ msgstr "Filtre MAC"
msgid "MAC-List"
msgstr "Llista MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1498,6 +1587,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Velocitat màxima"
@@ -1516,6 +1608,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1583,12 +1680,18 @@ msgstr ""
"Els punts de muntatge defineixen en quin punt un dispositiu de memòria "
"s'adjuntarà amb el sistema de fitxers"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Opcions de muntatge"
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Sistemes de fitxers muntats"
@@ -1607,6 +1710,9 @@ msgstr "Adreça de difusió selectiva"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1706,6 +1812,9 @@ msgstr "No connectat"
msgid "Note: Configuration files will be erased."
msgstr "Nota: Els fitxers de configuració s'esborraran."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Avís"
@@ -1834,9 +1943,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Es requereix el paquet libiwinfo!"
@@ -1864,9 +1982,6 @@ msgstr "Contrasenya de la clau privada"
msgid "Password successfully changed!"
msgstr "La contrasenya s'ha canviat amb èxit!"
-msgid "Path"
-msgstr "Ruta"
-
msgid "Path to CA-Certificate"
msgstr "Ruta als Certificats CA"
@@ -1882,6 +1997,9 @@ msgstr ""
msgid "Peak:"
msgstr "Màxim:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Executa un reinici"
@@ -1903,9 +2021,6 @@ msgstr "Paquets"
msgid "Please enter your username and password."
msgstr "Si us plau entra el teu nom d'usuari i contrasenya."
-msgid "Please wait: Device rebooting..."
-msgstr "Si us plau espera: Dispositiu arrancant-se de nou"
-
msgid "Policy"
msgstr "Política"
@@ -2173,9 +2288,6 @@ msgstr ""
"Les rutes especifiquen per quina interfície i passarel·la es pot arribar a "
"un cert ordinador o xarxa."
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2193,6 +2305,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Accés SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Claus SSH"
@@ -2282,6 +2403,9 @@ msgstr "Senyal:"
msgid "Size"
msgstr "Mida"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Salta"
@@ -2545,6 +2669,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "El protocol seleccionat necessita un dispositiu assignat"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2602,6 +2729,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2761,6 +2894,9 @@ msgstr "La contrasenya no s'ha canviat a causa d'un error desconegut!"
msgid "Unmanaged"
msgstr "Sense gestionar"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Canvis sense desar"
@@ -2920,13 +3056,14 @@ msgstr "Esperant que s'apliquin els canvis..."
msgid "Waiting for command to complete..."
msgstr "Esperant que s'acabi l'ordre..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Advertència"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Advertència: Hi ha canvis que no s'han desat i que es perdran mentre "
-"s'arranca de nou!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3159,6 +3296,24 @@ msgstr "sí"
msgid "« Back"
msgstr "« Enrere"
+#~ msgid "Delete this interface"
+#~ msgstr "Suprimeix aquesta interfície"
+
+#~ msgid "Flags"
+#~ msgstr "Flags"
+
+#~ msgid "Path"
+#~ msgstr "Ruta"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Si us plau espera: Dispositiu arrancant-se de nou"
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Advertència: Hi ha canvis que no s'han desat i que es perdran mentre "
+#~ "s'arranca de nou!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -3804,9 +3959,6 @@ msgstr "« Enrere"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Ací pots configurar els dispositius sense fils instal·lats."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignora <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Independent (Ad-Hoc)"
diff --git a/modules/luci-base/po/cs/base.po b/modules/luci-base/po/cs/base.po
index 373602070c..985672091a 100644
--- a/modules/luci-base/po/cs/base.po
+++ b/modules/luci-base/po/cs/base.po
@@ -44,6 +44,9 @@ msgstr "Zatížení za 1 minutu:"
msgid "15 Minute Load:"
msgstr "Zatížení za 15 minut:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Zatížení za 5 minut:"
@@ -207,6 +210,9 @@ msgstr "Přidat rozhraní..."
msgid "Additional Hosts files"
msgstr "DodateÄné Hosts soubory"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adresa"
@@ -269,6 +275,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Anténa 1"
@@ -325,6 +337,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Dostupné"
@@ -334,6 +361,9 @@ msgstr "Dostupné balíÄky"
msgid "Average:"
msgstr "Průměr:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -409,6 +439,11 @@ msgstr "Broadcom modul BCM%04x 802.11 bezdrátový ovladaÄ"
msgid "Buffered"
msgstr "Bufferováno"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "TlaÄítka"
@@ -445,6 +480,9 @@ msgstr "Kanál"
msgid "Check"
msgstr "Kontrola"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Kontrolní souÄet"
@@ -567,6 +605,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -644,9 +690,6 @@ msgstr ""
msgid "Delete"
msgstr "Odstranit"
-msgid "Delete this interface"
-msgstr "Odstranit toto rozhraní"
-
msgid "Delete this network"
msgstr "Odstranit tuto síť"
@@ -665,6 +708,12 @@ msgstr "Zařízení"
msgid "Device Configuration"
msgstr "Nastavení zařízení"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnostika"
@@ -705,6 +754,9 @@ msgstr "Optimalizace na vzdálenost"
msgid "Distance to farthest network member in meters."
msgstr "Vzdálenost nejodlehlejšího Älena sítÄ› v metrech."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diverzita"
@@ -779,6 +831,9 @@ msgstr ""
"Pro klienty alokovat DHCP adresy dynamicky. Pokud je volba zakázána, budou "
"obsloužení pouze klienti se statickými výpůjÄkami."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Metoda EAP"
@@ -889,6 +944,9 @@ msgstr "Externí protokolovací server"
msgid "External system log server port"
msgstr "Port externího protokolovacího serveru"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Rychlé rámce"
@@ -910,6 +968,11 @@ msgstr "Filtrovat soukromé"
msgid "Filter useless"
msgstr "Filtrovat nepotřebné"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Vyhledat a připojit síť"
@@ -934,9 +997,6 @@ msgstr "Verze firmwaru"
msgid "Fixed source port for outbound DNS queries"
msgstr "Pevný zdrojový port pro odchozí DNS dotazy"
-msgid "Flags"
-msgstr "Příznaky"
-
msgid "Flash Firmware"
msgstr "Nahrát firmware"
@@ -967,6 +1027,9 @@ msgstr "Vynutit TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Vynutit TKIP a CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Přeposílat DHCP provoz"
@@ -1006,6 +1069,12 @@ msgstr "Obecná nastavení"
msgid "General Setup"
msgstr "Obecné nastavení"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "VytvorÇt archív"
@@ -1015,6 +1084,9 @@ msgstr "Generic 802.11%s Wireless Controller"
msgid "Given password confirmation did not match, password not changed!"
msgstr "Heslo nezměněno z důvodu nesouhlasu nového hesla a ověření hesla!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1116,6 +1188,9 @@ msgstr "IPv4 maska sítě"
msgid "IPv4 only"
msgstr "Pouze IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Délka IPv4 prefixu"
@@ -1211,8 +1286,8 @@ msgstr ""
"přístup na odkládací zařízení je řádově pomalejší, než přístup do paměti "
"<abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignorovat soubory Hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr ""
msgid "Ignore interface"
msgstr "Ignorovat rozhraní"
@@ -1226,6 +1301,11 @@ msgstr "Obraz"
msgid "In"
msgstr "DovnitÅ™"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "ÄŒasový limit neÄinnosti"
@@ -1411,6 +1491,9 @@ msgstr ""
"Seznam <abbr title=\"Domain Name System\">DNS</abbr> serverů, na které "
"přeposílat požadavky"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Seznam domén, pro které povolit odpovědi podle RFC1918"
@@ -1433,6 +1516,9 @@ msgstr "Zátěž průměrná"
msgid "Loading"
msgstr "NaÄítání"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Místní IPv4 adresa"
@@ -1506,6 +1592,9 @@ msgstr "Filtr MAC"
msgid "MAC-List"
msgstr "Seznam Mac"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1520,6 +1609,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Nejvyšší míra"
@@ -1538,6 +1630,11 @@ msgstr "Nejvyšší poÄet sekund Äekání, než bude modem pÅ™ipraven"
msgid "Maximum hold time"
msgstr "Maximální doba držení"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Maximální poÄet zapůjÄených adres."
@@ -1605,12 +1702,18 @@ msgstr ""
"Přípojný bod urÄuje místo v souborovém systému, na kterém bude pÅ™ipojeno "
"paměťové zařízení"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Volby připojení"
msgid "Mount point"
msgstr "Přípojný bod"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Připojené souborové systémy"
@@ -1629,6 +1732,9 @@ msgstr "Adresa vícesměrového vysílání"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1728,6 +1834,9 @@ msgstr "Nepřipojeno"
msgid "Note: Configuration files will be erased."
msgstr "Pozn: KonfiguraÄní soubory budou vymazány."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Oznámení"
@@ -1857,9 +1966,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Vyžadován balíÄek libiwinfo!"
@@ -1887,9 +2005,6 @@ msgstr "Heslo privátního klíÄe"
msgid "Password successfully changed!"
msgstr "Heslo bylo úspěšně změněno!"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "Cesta k certifikátu CA"
@@ -1905,6 +2020,9 @@ msgstr "Cesta ke spustitelnému souboru, který obsluhuje událost tlaÄítka"
msgid "Peak:"
msgstr "Å piÄka:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Provést restart"
@@ -1926,9 +2044,6 @@ msgstr "Paketů"
msgid "Please enter your username and password."
msgstr "Prosím vložte vaše uživatelské jméno a heslo."
-msgid "Please wait: Device rebooting..."
-msgstr "Prosím poÄkejte: Provádím reboot..."
-
msgid "Policy"
msgstr "Politika"
@@ -2211,9 +2326,6 @@ msgid ""
msgstr ""
"Trasy urÄují, pÅ™es jaké rozhraní a bránu může být konkrétního hosta dosaženo."
-msgid "Rule #"
-msgstr "Pravidlo #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Spustit kontrolu souborového systému před připojením zařízení"
@@ -2231,6 +2343,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Přístup přes SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH klíÄe"
@@ -2322,6 +2443,9 @@ msgstr "Signál:"
msgid "Size"
msgstr "Velikost"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "PÅ™eskoÄit"
@@ -2608,6 +2732,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Vybraný protokol potřebuje mít přiřazeno zařízení"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2667,6 +2794,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2828,6 +2961,9 @@ msgstr "Neznámá chyba, heslo nebylo změněno!"
msgid "Unmanaged"
msgstr "Nespravovaný"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Neuložené změny"
@@ -2993,11 +3129,14 @@ msgstr "Čekání na realizaci změn..."
msgid "Waiting for command to complete..."
msgstr "ÄŒekání na dokonÄení příkazu..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Varování"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Varování: Existují neuložené změny, které budou rebootem ztraceny!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3227,6 +3366,25 @@ msgstr "ano"
msgid "« Back"
msgstr "« Zpět"
+#~ msgid "Delete this interface"
+#~ msgstr "Odstranit toto rozhraní"
+
+#~ msgid "Flags"
+#~ msgstr "Příznaky"
+
+#~ msgid "Rule #"
+#~ msgstr "Pravidlo #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignorovat soubory Hosts"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Prosím poÄkejte: Provádím reboot..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "Varování: Existují neuložené změny, které budou rebootem ztraceny!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/po/de/base.po b/modules/luci-base/po/de/base.po
index 361abdead9..14cf49786d 100644
--- a/modules/luci-base/po/de/base.po
+++ b/modules/luci-base/po/de/base.po
@@ -46,6 +46,9 @@ msgstr "Systemlast (1 Minute):"
msgid "15 Minute Load:"
msgstr "Systemlast (15 Minuten):"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Systemlast (5 Minuten):"
@@ -204,6 +207,9 @@ msgstr "Neue Schnittstelle hinzufügen..."
msgid "Additional Hosts files"
msgstr "Zusätzliche Hosts-Dateien"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adresse"
@@ -269,6 +275,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antenne 1"
@@ -325,6 +337,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Verfügbar"
@@ -334,6 +361,9 @@ msgstr "Verfügbare Pakete"
msgid "Average:"
msgstr "Durchschnitt:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -410,6 +440,11 @@ msgstr "Broadcom BCM%04x 802.11 W-LAN Adapter"
msgid "Buffered"
msgstr "Gepuffert"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Knöpfe"
@@ -446,6 +481,9 @@ msgstr "Kanal"
msgid "Check"
msgstr "Prüfen"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Prüfsumme"
@@ -565,6 +603,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr "Passt das Verhalten der Geräte-LEDs an - wenn dies möglich ist."
@@ -640,9 +686,6 @@ msgstr ""
msgid "Delete"
msgstr "Löschen"
-msgid "Delete this interface"
-msgstr "Diese Schnittstelle löschen"
-
msgid "Delete this network"
msgstr "Dieses Netzwerk löschen"
@@ -661,6 +704,12 @@ msgstr "Gerät"
msgid "Device Configuration"
msgstr "Gerätekonfiguration"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnosen"
@@ -701,6 +750,9 @@ msgstr "Distanzoptimierung"
msgid "Distance to farthest network member in meters."
msgstr "Distanz zum am weitesten entfernten Funkpartner in Metern."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversität"
@@ -775,6 +827,9 @@ msgstr ""
"DHCP Adressen dynamisch erzeugen. Wenn dies deaktiviert ist, werden nur "
"Clients mit konfigurierten statischen Leases bedient"
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-Methode"
@@ -886,6 +941,9 @@ msgstr "Externer Protokollserver IP"
msgid "External system log server port"
msgstr "Externer Protokollserver Port"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Schnelle Frames"
@@ -907,6 +965,11 @@ msgstr "Private Anfragen filtern"
msgid "Filter useless"
msgstr "Windowsanfragen filtern"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Suchen und Verbinden von Netzwerken"
@@ -931,9 +994,6 @@ msgstr "Firmware Version"
msgid "Fixed source port for outbound DNS queries"
msgstr "Fester Port für ausgehende DNS-Anfragen"
-msgid "Flags"
-msgstr "Parameter"
-
msgid "Flash Firmware"
msgstr "Firmware aktualisieren"
@@ -966,6 +1026,9 @@ msgstr "Erzwinge TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Erzwinge TKIP und CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "DHCP Traffic weiterleiten"
@@ -1005,6 +1068,12 @@ msgstr "Allgemeine Einstellungen"
msgid "General Setup"
msgstr "Allgemeine Einstellungen"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Sicherung erstellen"
@@ -1016,6 +1085,9 @@ msgstr ""
"Die angegebenen Passwörter stimmen nicht überein, das Systempasswort wurde "
"nicht geändert!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1116,6 +1188,9 @@ msgstr "IPv4 Netzmaske"
msgid "IPv4 only"
msgstr "nur IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Länge des IPv4 Präfix"
@@ -1213,8 +1288,8 @@ msgstr ""
"effektive Größe des Arbeitsspeichers zu erhöhen. Die Auslagerung der Daten "
"ist natürlich bedeutend langsamer als direkte Arbeitsspeicherzugriffe."
-msgid "Ignore Hosts files"
-msgstr "Hosts-Dateien ignorieren"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignoriere /etc/hosts"
msgid "Ignore interface"
msgstr "Schnittstelle ignorieren"
@@ -1228,6 +1303,11 @@ msgstr "Image"
msgid "In"
msgstr "Ein"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Timeout bei Inaktivität"
@@ -1412,6 +1492,9 @@ msgstr ""
"Liste von <abbr title=\"Domain Name System\">DNS</abbr>-Servern an welche "
"Requests weitergeleitet werden"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Liste von Domains für welche RFC1918-Antworten erlaubt sind"
@@ -1435,6 +1518,9 @@ msgstr "Durchschnittslast"
msgid "Loading"
msgstr "Lade"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Lokale IPv4 Adresse"
@@ -1510,6 +1596,9 @@ msgstr "MAC-Filter"
msgid "MAC-List"
msgstr "MAC-Adressliste"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1524,6 +1613,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Höchstübertragungsrate"
@@ -1542,6 +1634,11 @@ msgstr "Maximale Zeit die gewartet wird bis das Modem bereit ist (in Sekunden)"
msgid "Maximum hold time"
msgstr "Maximalzeit zum Halten der Verbindung"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Maximal zulässige Anzahl von vergeben DHCP-Adressen"
@@ -1609,12 +1706,18 @@ msgstr ""
"Einhängepunkte bestimmen, an welcher Stelle des Dateisystems bestimmte "
"Laufwerke und Speicher zur Verwendung eingebunden werden."
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Mount-Optionen"
msgid "Mount point"
msgstr "Mountpunkt"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Eingehängte Dateisysteme"
@@ -1633,6 +1736,9 @@ msgstr "Multicast-Adresse"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1733,6 +1839,9 @@ msgstr "Nicht verbunden"
msgid "Note: Configuration files will be erased."
msgstr "Warnung: Konfigurationsdateien werden gelöscht."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Notiz"
@@ -1863,9 +1972,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Benötige das libiwinfo Paket!"
@@ -1893,9 +2011,6 @@ msgstr "Passwort des Privaten Schlüssels"
msgid "Password successfully changed!"
msgstr "Passwort erfolgreich geändert!"
-msgid "Path"
-msgstr "Pfad"
-
msgid "Path to CA-Certificate"
msgstr "Pfad zum CA-Zertifikat"
@@ -1911,6 +2026,9 @@ msgstr "Ausführbare Datei welche das Schalter-Ereignis verarbeitet"
msgid "Peak:"
msgstr "Spitze:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Neustart durchführen"
@@ -1932,9 +2050,6 @@ msgstr "Pkte."
msgid "Please enter your username and password."
msgstr "Bitte Benutzernamen und Passwort eingeben."
-msgid "Please wait: Device rebooting..."
-msgstr "Bitte warten: Neustart wird durchgeführt..."
-
msgid "Policy"
msgstr "Standardregel"
@@ -2219,9 +2334,6 @@ msgstr ""
"Netzwerkrouten geben an, über welche Schnittstellen bestimmte Rechner oder "
"Netzwerke erreicht werden können"
-msgid "Rule #"
-msgstr "Regel #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Vor dem Einhängen Dateisystemprüfung starten "
@@ -2239,6 +2351,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSH-Zugriff"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH-Schlüssel"
@@ -2330,6 +2451,9 @@ msgstr "Signal:"
msgid "Size"
msgstr "Größe"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Ãœberspringen"
@@ -2623,6 +2747,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Dem ausgewähltem Protokoll muss ein Gerät zugeordnet werden"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2684,6 +2811,12 @@ msgid "This IPv4 address of the relay"
msgstr "IPv4-Adresse des Relais"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2852,6 +2985,9 @@ msgstr "Unbekannter Fehler, Passwort nicht geändert!"
msgid "Unmanaged"
msgstr "Ignoriert"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Ungespeicherte Änderungen"
@@ -3018,13 +3154,14 @@ msgstr "Änderungen werden angewandt..."
msgid "Waiting for command to complete..."
msgstr "Der Befehl wird ausgeführt..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Warnung"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Warnung: Es gibt ungespeicherte Änderungen, die bei einem Neustart verloren "
-"gehen!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3254,6 +3391,30 @@ msgstr "ja"
msgid "« Back"
msgstr "« Zurück"
+#~ msgid "Delete this interface"
+#~ msgstr "Diese Schnittstelle löschen"
+
+#~ msgid "Flags"
+#~ msgstr "Parameter"
+
+#~ msgid "Rule #"
+#~ msgstr "Regel #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Hosts-Dateien ignorieren"
+
+#~ msgid "Path"
+#~ msgstr "Pfad"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Bitte warten: Neustart wird durchgeführt..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Warnung: Es gibt ungespeicherte Änderungen, die bei einem Neustart "
+#~ "verloren gehen!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -4143,9 +4304,6 @@ msgstr "« Zurück"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "An dieser Stelle können eingebaute WLAN-Geräte konfiguriert werden."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignoriere /etc/hosts"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Unabhängig (Ad-Hoc)"
diff --git a/modules/luci-base/po/el/base.po b/modules/luci-base/po/el/base.po
index ed3a20737c..685cbe6c99 100644
--- a/modules/luci-base/po/el/base.po
+++ b/modules/luci-base/po/el/base.po
@@ -46,6 +46,9 @@ msgstr "ΦοÏτίο 1 λεπτοÏ:"
msgid "15 Minute Load:"
msgstr "ΦοÏτίο 15 λεπτών:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "ΦοÏτίο 5 λεπτών:"
@@ -209,6 +212,9 @@ msgstr "ΠÏοσθήκη νέας διεπαφής..."
msgid "Additional Hosts files"
msgstr "Επιπλέον αÏχεία Hosts"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "ΔιεÏθυνση"
@@ -276,6 +282,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "ΚεÏαία 1"
@@ -332,6 +344,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Διαθέσιμο"
@@ -341,6 +368,9 @@ msgstr "Διαθέσιμα πακέτα"
msgid "Average:"
msgstr "Μέσος ÎŒÏος:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -418,6 +448,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Κουμπιά"
@@ -454,6 +489,9 @@ msgstr "Κανάλι"
msgid "Check"
msgstr "Έλεγχος"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "ΆθÏοισμα Ελέγχου"
@@ -576,6 +614,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -653,9 +699,6 @@ msgstr ""
msgid "Delete"
msgstr "ΔιαγÏαφή"
-msgid "Delete this interface"
-msgstr "ΔιαγÏαφή αυτής της διεπαφής"
-
msgid "Delete this network"
msgstr "ΔιαγÏαφή Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… δικτÏου"
@@ -674,6 +717,12 @@ msgstr "Συσκευή"
msgid "Device Configuration"
msgstr "ΠαÏαμετÏοποίηση Συσκευής"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Διαγνωστικά"
@@ -714,6 +763,9 @@ msgstr "Βελτιστοποίηση Απόστασης"
msgid "Distance to farthest network member in meters."
msgstr "Απόσταση σε μέτÏα από το πιο απομακÏυσμένο μέλος του δικτÏου."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "ΔιαφοÏική Λήψη"
@@ -791,6 +843,9 @@ msgstr ""
"Δυναμική απόδοση DHCP διευθÏνσεων στους πελάτες. Σε πεÏίπτωση "
"απενεÏγοποίησης, μόνο πελάτες με στατικα leases θα εξυπηÏετοÏνται."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Μέθοδος EAP"
@@ -902,6 +957,9 @@ msgstr "ΕξωτεÏικός εξυπηÏετητής καταγÏαφής συÏ
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "ΓÏήγοÏα Πλαίσια"
@@ -923,6 +981,11 @@ msgstr "ΦιλτÏάÏισμα ιδιωτικών"
msgid "Filter useless"
msgstr "ΦιλτÏάÏισμα άχÏηστων"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "ΕÏÏεση και σÏνδεση σε δίκτυο"
@@ -947,9 +1010,6 @@ msgstr "Έκδοση ΥλικολογισμικοÏ"
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr "Σημαίες"
-
msgid "Flash Firmware"
msgstr "ΦλασάÏισμα Firmware"
@@ -981,6 +1041,9 @@ msgstr "Επιβολή TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Επιβολή TKIP και CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "ΠÏοώθηση κίνησης DHCP"
@@ -1020,6 +1083,12 @@ msgstr "Γενικές Ρυθμίσεις"
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -1029,6 +1098,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1129,6 +1201,9 @@ msgstr "Μάσκα IPv4"
msgid "IPv4 only"
msgstr "Μόνο IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1228,8 +1303,8 @@ msgstr ""
"Ï€Ïοσπελαστεί με τους υψηλοÏÏ‚ ÏυθμοÏÏ‚ μεταφοÏάς δεδομένων που διαθέτει η "
"<abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr ""
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Αγνόησε <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Αγνόησε διεπαφή"
@@ -1243,6 +1318,11 @@ msgstr ""
msgid "In"
msgstr "Είσοδος"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1424,6 +1504,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1445,6 +1528,9 @@ msgstr "Μέσος ÏŒÏος φόÏτου"
msgid "Loading"
msgstr "ΦόÏτωση"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Τοπική διεÏθυνση IPv4"
@@ -1512,6 +1598,9 @@ msgstr "MAC-ΦίλτÏο"
msgid "MAC-List"
msgstr "Λίστα MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1526,6 +1615,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Μέγιστος Ρυθμός"
@@ -1545,6 +1637,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr "Μέγιστος χÏόνος κÏάτησης"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Μέγιστος αÏιθμός διευθÏνσεων lease"
@@ -1613,12 +1710,18 @@ msgstr ""
"Τα σημεία Ï€ÏοσάÏτησης οÏίζουν σε ποιο σημείο στο σÏστημα αÏχείων θα "
"Ï€ÏοσαÏτηθεί μία συσκευή μνήμης"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Επιλογές Ï€ÏοσάÏτησης"
msgid "Mount point"
msgstr "Σημείο Ï€ÏοσάÏτησης"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "ΠÏοσαÏτημένα συστήματα αÏχείων"
@@ -1637,6 +1740,9 @@ msgstr "ΔιεÏθυνση Multicast"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1736,6 +1842,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr "Σημείωση: Τα αÏχεία παÏαμετÏοποίησης θα διαγÏαφοÏν."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Επισήμανση"
@@ -1864,9 +1973,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Απαιτείται το πακέτο libiwinfo!"
@@ -1894,9 +2012,6 @@ msgstr "Κωδικός ΠÏόσβασης του Î™Î´Î¹Ï‰Ï„Î¹ÎºÎ¿Ï ÎšÎ»ÎµÎ¹Î´Î¹
msgid "Password successfully changed!"
msgstr "Ο κωδικός Ï€Ïόσβασης άλλαξε επιτυχώς!"
-msgid "Path"
-msgstr "ΔιαδÏομή"
-
msgid "Path to CA-Certificate"
msgstr "ΔιαδÏομή για Πιστοποιητικό CA"
@@ -1912,6 +2027,9 @@ msgstr "ΔιαδÏομή για το εκτελέσιμο που χειÏίζεÏ
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Εκτέλεση επανεκκίνησης"
@@ -1933,9 +2051,6 @@ msgstr "Πκτ."
msgid "Please enter your username and password."
msgstr "ΠαÏακαλώ εισάγετε όνομα χÏήστη και κωδικό Ï€Ïόσβασης."
-msgid "Please wait: Device rebooting..."
-msgstr "ΠαÏακαλώ πεÏιμένετε: Η συσκευή επανεκκινεί..."
-
msgid "Policy"
msgstr "Πολιτική"
@@ -2205,9 +2320,6 @@ msgstr ""
"Οι διαδÏομές οÏίζουν τη διεπαφή και Ï€Ïλη από την οποία κάποιος υπολογιστής ή "
"δίκτυο μποÏεί να είναι Ï€Ïοσβάσιμο/Ï‚."
-msgid "Rule #"
-msgstr "Κανόνας #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Εκτέλεση ελέγχου του συστήματος αÏχείων Ï€Ïιν Ï€ÏοσαÏτηθεί η συσκευή"
@@ -2225,6 +2337,15 @@ msgstr ""
msgid "SSH Access"
msgstr "ΠÏόσβαση SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Κλειδιά SSH"
@@ -2314,6 +2435,9 @@ msgstr "Σήμα:"
msgid "Size"
msgstr "Μέγεθος"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "ΠαÏάκαμψη"
@@ -2573,6 +2697,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2628,6 +2755,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2786,6 +2919,9 @@ msgstr "Άγνωστο Λάθος. ο κωδικός Ï€Ïόσβασης δεν Î
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Μη-αποθηκευμένες Αλλαγές"
@@ -2943,13 +3079,14 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "ΠÏοειδοποίηση"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"ΠÏοειδοποίηση: ΥπάÏχουν μη-αποθηκευμένες αλλαγές που θα χαθοÏν κατά την "
-"επανεκκίνηση!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3181,6 +3318,27 @@ msgstr "ναι"
msgid "« Back"
msgstr "« Πίσω"
+#~ msgid "Delete this interface"
+#~ msgstr "ΔιαγÏαφή αυτής της διεπαφής"
+
+#~ msgid "Flags"
+#~ msgstr "Σημαίες"
+
+#~ msgid "Rule #"
+#~ msgstr "Κανόνας #"
+
+#~ msgid "Path"
+#~ msgstr "ΔιαδÏομή"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "ΠαÏακαλώ πεÏιμένετε: Η συσκευή επανεκκινεί..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "ΠÏοειδοποίηση: ΥπάÏχουν μη-αποθηκευμένες αλλαγές που θα χαθοÏν κατά την "
+#~ "επανεκκίνηση!"
+
#~ msgid "Configures this mount as overlay storage for block-extroot"
#~ msgstr ""
#~ "ΟÏίζει το συγκεκÏιμένο σημείο Ï€ÏοσάÏτησης ως επικαλÏπτον αποθηκευτικό "
@@ -3851,9 +4009,6 @@ msgstr "« Πίσω"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Εδώ μποÏείτε να Ïυθμίσετε τις εγκατεστημένες ασÏÏματες συσκευές."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Αγνόησε <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "ΑνεξάÏτητο (Ad-Hoc)"
diff --git a/modules/luci-base/po/en/base.po b/modules/luci-base/po/en/base.po
index 3ad4b140bb..da9d9e29bb 100644
--- a/modules/luci-base/po/en/base.po
+++ b/modules/luci-base/po/en/base.po
@@ -46,6 +46,9 @@ msgstr "1 Minute Load:"
msgid "15 Minute Load:"
msgstr "15 Minute Load:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "5 Minute Load:"
@@ -206,6 +209,9 @@ msgstr "Add new interface..."
msgid "Additional Hosts files"
msgstr "Additional Hosts files"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Address"
@@ -267,6 +273,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antenna 1"
@@ -323,6 +335,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Available"
@@ -332,6 +359,9 @@ msgstr "Available packages"
msgid "Average:"
msgstr "Average:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -407,6 +437,11 @@ msgstr ""
msgid "Buffered"
msgstr "Buffered"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Buttons"
@@ -443,6 +478,9 @@ msgstr "Channel"
msgid "Check"
msgstr "Check"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -563,6 +601,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -641,9 +687,6 @@ msgstr ""
msgid "Delete"
msgstr "Delete"
-msgid "Delete this interface"
-msgstr "Delete this interface"
-
msgid "Delete this network"
msgstr "Delete this network"
@@ -662,6 +705,12 @@ msgstr "Device"
msgid "Device Configuration"
msgstr "Device Configuration"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnostics"
@@ -700,6 +749,9 @@ msgstr "Distance Optimization"
msgid "Distance to farthest network member in meters."
msgstr "Distance to farthest network member in meters."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversity"
@@ -770,6 +822,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-Method"
@@ -878,6 +933,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Fast Frames"
@@ -899,6 +957,11 @@ msgstr "Filter private"
msgid "Filter useless"
msgstr "Filter useless"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -923,9 +986,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr "Flags"
-
msgid "Flash Firmware"
msgstr "Flash Firmware"
@@ -956,6 +1016,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -995,6 +1058,12 @@ msgstr ""
msgid "General Setup"
msgstr "General Setup"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -1004,6 +1073,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1103,6 +1175,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1197,8 +1272,8 @@ msgstr ""
"slow process as the swap-device cannot be accessed with the high datarates "
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr ""
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignore <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Ignore interface"
@@ -1212,6 +1287,11 @@ msgstr ""
msgid "In"
msgstr "In"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1393,6 +1473,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1414,6 +1497,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1481,6 +1567,9 @@ msgstr "MAC-Filter"
msgid "MAC-List"
msgstr "MAC-List"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1495,6 +1584,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Maximum Rate"
@@ -1513,6 +1605,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr "Maximum hold time"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1580,12 +1677,18 @@ msgstr ""
"Mount Points define at which point a memory device will be attached to the "
"filesystem"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Mounted file systems"
@@ -1604,6 +1707,9 @@ msgstr ""
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1703,6 +1809,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1831,9 +1940,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1861,9 +1979,6 @@ msgstr "Password of Private Key"
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr "Path"
-
msgid "Path to CA-Certificate"
msgstr "Path to CA-Certificate"
@@ -1879,6 +1994,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Perform reboot"
@@ -1900,9 +2018,6 @@ msgstr "Pkts."
msgid "Please enter your username and password."
msgstr "Please enter your username and password."
-msgid "Please wait: Device rebooting..."
-msgstr "Please wait: Device rebooting..."
-
msgid "Policy"
msgstr "Policy"
@@ -2170,9 +2285,6 @@ msgstr ""
"Routes specify over which interface and gateway a certain host or network "
"can be reached."
-msgid "Rule #"
-msgstr "Rule #"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2190,6 +2302,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2278,6 +2399,9 @@ msgstr ""
msgid "Size"
msgstr "Size"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Skip"
@@ -2533,6 +2657,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2588,6 +2715,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2743,6 +2876,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Unsaved Changes"
@@ -2902,11 +3038,14 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3135,6 +3274,26 @@ msgstr ""
msgid "« Back"
msgstr "« Back"
+#~ msgid "Delete this interface"
+#~ msgstr "Delete this interface"
+
+#~ msgid "Flags"
+#~ msgstr "Flags"
+
+#~ msgid "Rule #"
+#~ msgstr "Rule #"
+
+#~ msgid "Path"
+#~ msgstr "Path"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Please wait: Device rebooting..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+
#~ msgid "Cached"
#~ msgstr "Cached"
@@ -3796,9 +3955,6 @@ msgstr "« Back"
#~ "firewall zone of the choosen network.<br />Uncheck the attach option to "
#~ "define a new standalone network for this interface."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignore <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Independent (Ad-Hoc)"
diff --git a/modules/luci-base/po/es/base.po b/modules/luci-base/po/es/base.po
index 2c3ce94ad5..ebf1e5f4e2 100644
--- a/modules/luci-base/po/es/base.po
+++ b/modules/luci-base/po/es/base.po
@@ -46,6 +46,9 @@ msgstr "Carga a 1 minuto:"
msgid "15 Minute Load:"
msgstr "Carga a 15 minutos:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Carga a 5 minutos:"
@@ -210,6 +213,9 @@ msgstr "Añadir nueva interfaz..."
msgid "Additional Hosts files"
msgstr "Ficheros de máquinas adicionales"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Dirección"
@@ -273,6 +279,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -329,6 +341,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponible"
@@ -338,6 +365,9 @@ msgstr "Paquetes disponibles"
msgid "Average:"
msgstr "Media:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -414,6 +444,11 @@ msgstr "Controlador inalámbrico 802.11 BCM%04x"
msgid "Buffered"
msgstr "En búfer"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Botones"
@@ -450,6 +485,9 @@ msgstr "Canal"
msgid "Check"
msgstr "Comprobar"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Comprobación"
@@ -572,6 +610,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -650,9 +696,6 @@ msgstr ""
msgid "Delete"
msgstr "Eliminar"
-msgid "Delete this interface"
-msgstr "Borrar esta interfaz"
-
msgid "Delete this network"
msgstr "Borrar esta red"
@@ -671,6 +714,12 @@ msgstr "Dispositivo"
msgid "Device Configuration"
msgstr "Configuración del dispositivo"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnósticos"
@@ -711,6 +760,9 @@ msgstr "Optimización de distancia"
msgid "Distance to farthest network member in meters."
msgstr "Distancia al miembro de la red mas lejana en metros."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversidad"
@@ -785,6 +837,9 @@ msgstr ""
"Reparte direcciones DHCP dinámicamente a los clientes. Si se desactiva sólo "
"se servirá a clientes con cesiones estáticas."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Método EAP"
@@ -896,6 +951,9 @@ msgstr "Servidor externo de registro del sistema"
msgid "External system log server port"
msgstr "Puerto del servidor externo de registro del sistema"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Tramas rápidas"
@@ -917,6 +975,11 @@ msgstr "Filtro privado"
msgid "Filter useless"
msgstr "Filtro inútil"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Encontrar y unirse a red"
@@ -941,9 +1004,6 @@ msgstr "Versión del firmware"
msgid "Fixed source port for outbound DNS queries"
msgstr "Puerto origen fijo para peticiones de DNS salientes"
-msgid "Flags"
-msgstr "Indicadores"
-
msgid "Flash Firmware"
msgstr "Grabar firmware"
@@ -974,6 +1034,9 @@ msgstr "Forzar TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forzar TKIP y CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Retransmitir tráfico DHCP"
@@ -1014,6 +1077,12 @@ msgstr "Configuración general"
msgid "General Setup"
msgstr "Configuración general"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Generar archivo"
@@ -1025,6 +1094,9 @@ msgstr ""
"La confirmación y la contraseña no coinciden. ¡No se ha cambiado la "
"contraseña!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1125,6 +1197,9 @@ msgstr "Máscara de red IPv4"
msgid "IPv4 only"
msgstr "Sólo IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Longitud de prefijo IPv4"
@@ -1226,8 +1301,8 @@ msgstr ""
"alta velocidad tal y como hace la memoria <abbr title=\"Random Access Memory"
"\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignorar fichero de máquinas"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignorar <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Ignorar interfaz"
@@ -1241,6 +1316,11 @@ msgstr "Imagen"
msgid "In"
msgstr "Entrada"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Espera de inactividad"
@@ -1425,6 +1505,9 @@ msgstr ""
"Lista de servidores <abbr title=\"Domain Name System\">DNS</abbr> a los que "
"enviar solicitudes"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Lista de dominios a los que se permiten respuestas RFC1918"
@@ -1446,6 +1529,9 @@ msgstr "Carga Media"
msgid "Loading"
msgstr "Cargando"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Dirección local IPv4"
@@ -1520,6 +1606,9 @@ msgstr "Filtro por dirección MAC"
msgid "MAC-List"
msgstr "Lista de direcciones MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1534,6 +1623,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Ratio Máximo"
@@ -1552,6 +1644,11 @@ msgstr "Segundos máximos de espera a que el módem esté activo"
msgid "Maximum hold time"
msgstr "Pausa máxima de transmisión"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Máximas cesiones activas."
@@ -1619,12 +1716,18 @@ msgstr ""
"Los puntos de montaje definen el directorio en el que un dispositivo de "
"memoria se unirá al sistema del archivos"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Opciones de montaje"
msgid "Mount point"
msgstr "Punto de montaje"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Sistemas de archivo montados"
@@ -1643,6 +1746,9 @@ msgstr "Dirección multicast"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1742,6 +1848,9 @@ msgstr "No conectado"
msgid "Note: Configuration files will be erased."
msgstr "Nota: se borrarán los ficheros de configuración."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Aviso"
@@ -1871,9 +1980,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "¡Se necesita el paquete libiwinfo!"
@@ -1901,9 +2019,6 @@ msgstr "Contraseña de la Clave Privada"
msgid "Password successfully changed!"
msgstr "¡Contraseña cambiada!"
-msgid "Path"
-msgstr "Ruta (path)"
-
msgid "Path to CA-Certificate"
msgstr "Ruta al Certificado CA"
@@ -1919,6 +2034,9 @@ msgstr "Ruta al ejecutable que maneja el evento button"
msgid "Peak:"
msgstr "Pico:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Rearrancar"
@@ -1940,9 +2058,6 @@ msgstr "Paq."
msgid "Please enter your username and password."
msgstr "Por favor, introduzca su nombre de usuario y contraseña."
-msgid "Please wait: Device rebooting..."
-msgstr "Espere por favor: Rearrancando dispositivo..."
-
msgid "Policy"
msgstr "Política"
@@ -2224,9 +2339,6 @@ msgstr ""
"Las rutas especifican sobre qué interfaz y pasarela se puede llegar a una "
"cierta máquina o red."
-msgid "Rule #"
-msgstr "Nº de regla"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Comprobar el sistema de ficheros antes de montar el dispositivo"
@@ -2244,6 +2356,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Acceso SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Claves SSH"
@@ -2335,6 +2456,9 @@ msgstr "Señal:"
msgid "Size"
msgstr "Tamaño"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Saltar"
@@ -2629,6 +2753,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Este protocolo necesita estar asignado a un dispositivo"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2689,6 +2816,12 @@ msgid "This IPv4 address of the relay"
msgstr "Dirección IPv4 del relé"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2853,6 +2986,9 @@ msgstr "Error desconocido, ¡no se ha cambiado la contraseña!"
msgid "Unmanaged"
msgstr "No gestionado"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Cambios no guardados"
@@ -3019,13 +3155,14 @@ msgstr "Esperando a que se realicen los cambios..."
msgid "Waiting for command to complete..."
msgstr "Esperando a que termine el comando..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Aviso"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Advertencia: Hay cambios realizados que no han sido guardados, los mismos se "
-"perderán mientras se rearranca!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3257,6 +3394,30 @@ msgstr "sí"
msgid "« Back"
msgstr "« Volver"
+#~ msgid "Delete this interface"
+#~ msgstr "Borrar esta interfaz"
+
+#~ msgid "Flags"
+#~ msgstr "Indicadores"
+
+#~ msgid "Rule #"
+#~ msgstr "Nº de regla"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignorar fichero de máquinas"
+
+#~ msgid "Path"
+#~ msgstr "Ruta (path)"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Espere por favor: Rearrancando dispositivo..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Advertencia: Hay cambios realizados que no han sido guardados, los mismos "
+#~ "se perderán mientras se rearranca!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -3956,9 +4117,6 @@ msgstr "« Volver"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Aquí puede configurar los dispositivos Wi-Fi instalados."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignorar <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Independiente (ad hoc) "
diff --git a/modules/luci-base/po/fr/base.po b/modules/luci-base/po/fr/base.po
index 1d8d224754..878e23da7f 100644
--- a/modules/luci-base/po/fr/base.po
+++ b/modules/luci-base/po/fr/base.po
@@ -46,6 +46,9 @@ msgstr "Charge sur 1 minute :"
msgid "15 Minute Load:"
msgstr "Charge sur 15 minutes :"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Charge sur 5 minutes :"
@@ -212,6 +215,9 @@ msgstr "Ajout d'une nouvelle interface..."
msgid "Additional Hosts files"
msgstr "Fichiers hosts supplémetaires"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adresse"
@@ -279,6 +285,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antenne 1"
@@ -335,6 +347,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponible"
@@ -344,6 +371,9 @@ msgstr "Paquets disponibles"
msgid "Average:"
msgstr "Moyenne :"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -419,6 +449,11 @@ msgstr "Contrôleur sans fil Broadcom BCM%04x 802.11"
msgid "Buffered"
msgstr "Temporisé"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Boutons"
@@ -455,6 +490,9 @@ msgstr "Canal"
msgid "Check"
msgstr "Vérification"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Somme de contrôle"
@@ -579,6 +617,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -657,9 +703,6 @@ msgstr ""
msgid "Delete"
msgstr "Effacer"
-msgid "Delete this interface"
-msgstr "Supprimer cette interface"
-
msgid "Delete this network"
msgstr "Supprimer ce réseau"
@@ -678,6 +721,12 @@ msgstr "Équipement"
msgid "Device Configuration"
msgstr "Configuration de l'équipement"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnostics"
@@ -718,6 +767,9 @@ msgstr "Optimisation de la distance"
msgid "Distance to farthest network member in meters."
msgstr "Distance au membre du réseau le plus éloigné, en mètres."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversité"
@@ -795,6 +847,9 @@ msgstr ""
"Alloue dynamiquement des adresses pour les clients du DHCP. Si désactivé, "
"seuls les clients ayant des baux statiques seront gérés."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Méthode EAP"
@@ -908,6 +963,9 @@ msgstr "Serveur distant de journaux système"
msgid "External system log server port"
msgstr "Port du serveur distant de journaux système"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Trames rapides"
@@ -929,6 +987,11 @@ msgstr "Filtrer les requêtes privées"
msgid "Filter useless"
msgstr "Filtrer les requêtes inutiles"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Cherche et rejoint un réseau"
@@ -953,9 +1016,6 @@ msgstr "Version du micrologiciel"
msgid "Fixed source port for outbound DNS queries"
msgstr "Port source fixe pour les requêtes DNS sortantes"
-msgid "Flags"
-msgstr "Options"
-
msgid "Flash Firmware"
msgstr "Mise à jour du micrologiciel"
@@ -986,6 +1046,9 @@ msgstr "Forcer TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forcer TKIP et CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Transmettre le trafic DHCP"
@@ -1025,6 +1088,12 @@ msgstr "Paramètres généraux"
msgid "General Setup"
msgstr "Configuration générale"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Construire l'archive"
@@ -1036,6 +1105,9 @@ msgstr ""
"La confirmation du nouveau mot de passe ne correspond pas, changement "
"annulé !"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1137,6 +1209,9 @@ msgstr "Masque-réseau IPv4"
msgid "IPv4 only"
msgstr "IPv4 seulement"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "longueur du préfixe IPv4"
@@ -1234,8 +1309,8 @@ msgstr ""
"d'échange, relevant la quantité de RAM disponible. Ce processus est lent car "
"la mémoire d'échange ne peut être accédée aux taux de transfert de la RAM."
-msgid "Ignore Hosts files"
-msgstr "Ignorer le fichiers Hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignorer /etc/hosts"
msgid "Ignore interface"
msgstr "Ignorer l'interface"
@@ -1249,6 +1324,11 @@ msgstr "Image"
msgid "In"
msgstr "Entrée"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Délai d'inactivité"
@@ -1436,6 +1516,9 @@ msgstr ""
"Liste des serveurs auquels sont transmis les requêtes <abbr title=\"Domain "
"Name System\">DNS</abbr>"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Liste des domaines où sont permises les réponses de type RFC1918"
@@ -1458,6 +1541,9 @@ msgstr "Charge moyenne"
msgid "Loading"
msgstr "Chargement"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Adresse IPv4 locale"
@@ -1534,6 +1620,9 @@ msgstr "Filtrage par adresses MAC"
msgid "MAC-List"
msgstr "Liste des adresses MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1548,6 +1637,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Débit maximum"
@@ -1566,6 +1658,11 @@ msgstr "Délai d'attente maximum que le modem soit prêt"
msgid "Maximum hold time"
msgstr "Temps de maintien maximum"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Nombre maximum d'adresses allouées."
@@ -1633,12 +1730,18 @@ msgstr ""
"Les points de montage définissent l'attachement d'un périphérique au système "
"de fichier"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Options de montage"
msgid "Mount point"
msgstr "Point de montage"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Systèmes de fichiers montés"
@@ -1657,6 +1760,9 @@ msgstr "Adresse multidiffusion"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1756,6 +1862,9 @@ msgstr "Non connecté"
msgid "Note: Configuration files will be erased."
msgstr "Note : les fichiers de configuration seront effacés."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Note"
@@ -1884,9 +1993,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Nécessite le paquet libiwinfo !"
@@ -1914,9 +2032,6 @@ msgstr "Mot de passe de la clé privée"
msgid "Password successfully changed!"
msgstr "Mot de passe changé avec succès !"
-msgid "Path"
-msgstr "Chemin"
-
msgid "Path to CA-Certificate"
msgstr "Chemin de la CA"
@@ -1932,6 +2047,9 @@ msgstr "Chemin du programme exécutable gérant les évènements liés au bouton
msgid "Peak:"
msgstr "Pic :"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Redémarrer"
@@ -1953,9 +2071,6 @@ msgstr "Pqts."
msgid "Please enter your username and password."
msgstr "Saisissez votre nom d'utilisateur et mot de passe."
-msgid "Please wait: Device rebooting..."
-msgstr "Patientez s'il vous plaît: équipement en cours de redémarrage..."
-
msgid "Policy"
msgstr "Politique"
@@ -2237,9 +2352,6 @@ msgstr ""
"Avec les routes statiques vous pouvez spécifier à travers quelle interface "
"ou passerelle un réseau peut être contacté."
-msgid "Rule #"
-msgstr "N° de règle"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
"Faire un vérification du système de fichiers avant de monter le périphérique"
@@ -2258,6 +2370,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Accès SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Clés SSH"
@@ -2349,6 +2470,9 @@ msgstr "Signal :"
msgid "Size"
msgstr "Taille"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Passer au suivant"
@@ -2641,6 +2765,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Le protocole sélectionné nécessite l'attribution d'un périphérique"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2703,6 +2830,12 @@ msgid "This IPv4 address of the relay"
msgstr "L'adresse IPv4 du relais"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2871,6 +3004,9 @@ msgstr "Erreur inconnue, mot de passe inchangé !"
msgid "Unmanaged"
msgstr "non-géré"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Changements non appliqués"
@@ -3038,13 +3174,14 @@ msgstr "En attente de l'application des changements..."
msgid "Waiting for command to complete..."
msgstr "En attente de la fin de la commande..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Attention"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Attention : il reste des changements non appliqués qui seront perdus après "
-"redémarrage !"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3275,6 +3412,30 @@ msgstr "oui"
msgid "« Back"
msgstr "« Retour"
+#~ msgid "Delete this interface"
+#~ msgstr "Supprimer cette interface"
+
+#~ msgid "Flags"
+#~ msgstr "Options"
+
+#~ msgid "Rule #"
+#~ msgstr "N° de règle"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignorer le fichiers Hosts"
+
+#~ msgid "Path"
+#~ msgstr "Chemin"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Patientez s'il vous plaît: équipement en cours de redémarrage..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Attention : il reste des changements non appliqués qui seront perdus "
+#~ "après redémarrage !"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -4134,9 +4295,6 @@ msgstr "« Retour"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Ici vous pouvez configurer les équipements Wi-Fi installés."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignorer /etc/hosts"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Ad-Hoc"
diff --git a/modules/luci-base/po/he/base.po b/modules/luci-base/po/he/base.po
index 237e8689ae..6f5e3b0b5b 100644
--- a/modules/luci-base/po/he/base.po
+++ b/modules/luci-base/po/he/base.po
@@ -44,6 +44,9 @@ msgstr "עומס במשך דקה:"
msgid "15 Minute Load:"
msgstr "עומס במשך רבע שעה:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "עומס במשך 5 דקות:"
@@ -202,6 +205,9 @@ msgstr "הוסף ממשק חדש..."
msgid "Additional Hosts files"
msgstr "קבצי מ×רח נוספי×"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "כתובת"
@@ -267,6 +273,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "×נטנה 1"
@@ -325,6 +337,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "זמין"
@@ -334,6 +361,9 @@ msgstr "חבילות זמינות"
msgid "Average:"
msgstr "ממוצע:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -410,6 +440,11 @@ msgstr "שלט ×לחוטי Broadcom BCM%04x 802.11"
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "כפתורי×"
@@ -446,6 +481,9 @@ msgstr "ערוץ"
msgid "Check"
msgstr "לבדוק"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -557,6 +595,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -634,9 +680,6 @@ msgstr ""
msgid "Delete"
msgstr "למחוק"
-msgid "Delete this interface"
-msgstr "מחק ממשק זה"
-
msgid "Delete this network"
msgstr "מחק רשת זו"
@@ -655,6 +698,12 @@ msgstr "מכשיר"
msgid "Device Configuration"
msgstr "הגדרות מכשיר"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "×בחון"
@@ -693,6 +742,9 @@ msgstr ""
msgid "Distance to farthest network member in meters."
msgstr "מרחק לנק' הרשת הרחוקה ביותר במטרי×"
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "גיוון"
@@ -756,6 +808,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr ""
@@ -864,6 +919,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr ""
@@ -885,6 +943,11 @@ msgstr ""
msgid "Filter useless"
msgstr ""
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -909,9 +972,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr ""
-
msgid "Flash Firmware"
msgstr ""
@@ -942,6 +1002,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -981,6 +1044,12 @@ msgstr ""
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -990,6 +1059,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1087,6 +1159,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1176,7 +1251,7 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-msgid "Ignore Hosts files"
+msgid "Ignore <code>/etc/hosts</code>"
msgstr ""
msgid "Ignore interface"
@@ -1191,6 +1266,11 @@ msgstr ""
msgid "In"
msgstr ""
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1369,6 +1449,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1390,6 +1473,9 @@ msgstr "עומס ממוצע"
msgid "Loading"
msgstr "טוען"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "כתובת IPv4 מקומית"
@@ -1457,6 +1543,9 @@ msgstr ""
msgid "MAC-List"
msgstr ""
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1471,6 +1560,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr ""
@@ -1489,6 +1581,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1554,12 +1651,18 @@ msgid ""
"filesystem"
msgstr ""
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr ""
@@ -1578,6 +1681,9 @@ msgstr ""
msgid "NAS ID"
msgstr ""
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1677,6 +1783,9 @@ msgstr "×œ× ×ž×—×•×‘×¨"
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1799,9 +1908,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1829,9 +1947,6 @@ msgstr ""
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr ""
@@ -1847,6 +1962,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr ""
@@ -1868,9 +1986,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr "×× × ×”×–×Ÿ ×ת ×©× ×”×ž×©×ª×ž×© והסיסמה שלך:"
-msgid "Please wait: Device rebooting..."
-msgstr "×× × ×”×ž×ª×Ÿ: המכשיר מ×ותחל מחדש..."
-
msgid "Policy"
msgstr ""
@@ -2137,9 +2252,6 @@ msgid ""
"can be reached."
msgstr ""
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2157,6 +2269,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2246,6 +2367,9 @@ msgstr ""
msgid "Size"
msgstr ""
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2503,6 +2627,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2551,6 +2678,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2703,6 +2836,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr ""
@@ -2860,11 +2996,14 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "×זהרה"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "×זהרה: ×™×©× × ×©×™× ×•×™×™× ×©×œ× × ×©×ž×¨×• וי×בדו בעת הפעלה מחדש!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3088,6 +3227,16 @@ msgstr "כן"
msgid "« Back"
msgstr "<< ×חורה"
+#~ msgid "Delete this interface"
+#~ msgstr "מחק ממשק זה"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "×× × ×”×ž×ª×Ÿ: המכשיר מ×ותחל מחדש..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "×זהרה: ×™×©× × ×©×™× ×•×™×™× ×©×œ× × ×©×ž×¨×• וי×בדו בעת הפעלה מחדש!"
+
#~ msgid "Cached"
#~ msgstr "שמור במטמון"
diff --git a/modules/luci-base/po/hu/base.po b/modules/luci-base/po/hu/base.po
index 975bf2dfce..d1f71d80cd 100644
--- a/modules/luci-base/po/hu/base.po
+++ b/modules/luci-base/po/hu/base.po
@@ -44,6 +44,9 @@ msgstr "Terhelés (utolsó 1 perc):"
msgid "15 Minute Load:"
msgstr "Terhelés (utolsó 15 perc):"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Terhelés (utolsó 5 perc):"
@@ -207,6 +210,9 @@ msgstr "Új interfész hozzáadása..."
msgid "Additional Hosts files"
msgstr "További 'hosts' fájlok"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Cím"
@@ -272,6 +278,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "1-es antenna"
@@ -328,6 +340,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Elérhető"
@@ -337,6 +364,9 @@ msgstr "Elérhető csomagok"
msgid "Average:"
msgstr "Ãtlag:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -413,6 +443,11 @@ msgstr "Broadcom BCM%04x 802.11 vezeték-nélküli vezérlő"
msgid "Buffered"
msgstr "Ãtmeneti tárban van"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Gombok"
@@ -450,6 +485,9 @@ msgstr "Csatorna"
msgid "Check"
msgstr "Ellenőrzés"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Ellenőrző összeg"
@@ -574,6 +612,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -651,9 +697,6 @@ msgstr ""
msgid "Delete"
msgstr "Törlés"
-msgid "Delete this interface"
-msgstr "Interfész törlése"
-
msgid "Delete this network"
msgstr "Hálózat törlése"
@@ -672,6 +715,12 @@ msgstr "Eszköz"
msgid "Device Configuration"
msgstr "Eszköz beállítások"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnosztika"
@@ -712,6 +761,9 @@ msgstr "Távolság optimalizáció"
msgid "Distance to farthest network member in meters."
msgstr "A hálózat legtávolabbi tagjának távolsága méterben."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diverzitás"
@@ -788,6 +840,9 @@ msgstr ""
"esetén csak a statikus DHCP bérlettel rendelkező kliensek lesznek "
"kiszolgálva."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP metódus"
@@ -897,6 +952,9 @@ msgstr "Külső rendszernapló kiszolgáló"
msgid "External system log server port"
msgstr "Külső rendszernapló kiszolgáló port"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Gyors keretek"
@@ -918,6 +976,11 @@ msgstr "Privát kérések szűrése"
msgid "Filter useless"
msgstr "Használhahatlan kérések szűrése"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Hálózatok keresése és csatlakozás"
@@ -942,9 +1005,6 @@ msgstr "Tűzfal verzió"
msgid "Fixed source port for outbound DNS queries"
msgstr "Rögzített forrás port a kimenő DNS kérésekhez"
-msgid "Flags"
-msgstr "Flag-ek"
-
msgid "Flash Firmware"
msgstr "Firmware flash-elés"
@@ -977,6 +1037,9 @@ msgstr "TKIP kényszerítése"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIP és CCMP (AES) kényszerítése"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "DHCP forgalom továbbítás"
@@ -1016,6 +1079,12 @@ msgstr "Ãltalános beállítások"
msgid "General Setup"
msgstr "Ãltalános beállítások"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Archívum készítése"
@@ -1025,6 +1094,9 @@ msgstr "Ãltalános 802.11%s vezeték-nélküli vezérlÅ‘"
msgid "Given password confirmation did not match, password not changed!"
msgstr "A megadott jelszavak nem egyeznek, a jelszó nem lett megváltoztatva!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1126,6 +1198,9 @@ msgstr "IPv4 hálózati maszk"
msgid "IPv4 only"
msgstr "csak IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "IPv4 prefix hossza"
@@ -1224,8 +1299,8 @@ msgstr ""
"nagyon lassú folyamat mivel a swap-eszköz nem érhető el akkora sebességgel "
"mint a <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "A hosts fájlok figyelmen kívül hagyása"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr ""
msgid "Ignore interface"
msgstr "Interfész figyelmen kívül hagyása"
@@ -1239,6 +1314,11 @@ msgstr "Image"
msgid "In"
msgstr "Be"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Inaktivitási időtúllépés"
@@ -1425,6 +1505,9 @@ msgstr ""
"<abbr title=\"Domain Name System\">DNS</abbr> szerverek listája, ahová a "
"kérések továbbításra kerülnek"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Domain-ok listája, melyeknél az RFC1918 válaszok megengedettek"
@@ -1448,6 +1531,9 @@ msgstr "Ãtlagos terhelés"
msgid "Loading"
msgstr "Betöltés"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Helyi IPv4 cím"
@@ -1523,6 +1609,9 @@ msgstr "MAC-szűrő"
msgid "MAC-List"
msgstr "MAC-lista"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1537,6 +1626,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Maximális sebesség"
@@ -1555,6 +1647,11 @@ msgstr "Maximális várakozási idő a modem kész állapotára (másodpercben)"
msgid "Maximum hold time"
msgstr "Maximális tartási idő"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "DHCP címek maximális száma"
@@ -1622,12 +1719,18 @@ msgstr ""
"A csatolási pontok határozzák meg, hogy egy memória eszköz hová lesz "
"csatlakoztatva a fájlendszeren belül "
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Csatolási beállítások"
msgid "Mount point"
msgstr "Csatolási pont"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Csatolt fájlrendszerek"
@@ -1646,6 +1749,9 @@ msgstr "Multicast cím"
msgid "NAS ID"
msgstr "NAS azonosító"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1745,6 +1851,9 @@ msgstr "Nincs kapcsolódva"
msgid "Note: Configuration files will be erased."
msgstr "Megjegyzés: konfigurációs fájlok törölve lesznek."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Megjegyzés"
@@ -1874,9 +1983,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "A libiwinfo csomag szükséges!"
@@ -1904,9 +2022,6 @@ msgstr "A privát kulcsh jelszava"
msgid "Password successfully changed!"
msgstr "A jelszó megváltoztatása sikeres!"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "CA tanúsítvány elérési útja"
@@ -1922,6 +2037,9 @@ msgstr "A gomb eseményeit kezelő végrehajtható állomány elérési útja"
msgid "Peak:"
msgstr "Csúcs:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Újraindítás végrehajtása"
@@ -1943,9 +2061,6 @@ msgstr "csom."
msgid "Please enter your username and password."
msgstr "Adja meg a felhasználónevét és a jelszavát."
-msgid "Please wait: Device rebooting..."
-msgstr "Kérem várjon: az eszköz újraindul..."
-
msgid "Policy"
msgstr "Szabály"
@@ -2229,9 +2344,6 @@ msgstr ""
"Az útvonalak határozzák meg, hogy bizonyos gépek illetve hálózatok melyik "
"interfészen keresztül érhetők el."
-msgid "Rule #"
-msgstr "Szabály #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Fájlrendszer ellenőrzés futtatása az eszköz csatolása előtt"
@@ -2249,6 +2361,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSH hozzáférés"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH kulcsok"
@@ -2340,6 +2461,9 @@ msgstr "Jel:"
msgid "Size"
msgstr "Méret"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Ugrás"
@@ -2632,6 +2756,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "A kiválasztott protokoll eszköz hozzárendelést igényel"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2692,6 +2819,12 @@ msgid "This IPv4 address of the relay"
msgstr "Az átjátszó IPV4 címe"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2859,6 +2992,9 @@ msgstr "Ismeretlen hiba, a jelszó nem lett megváltoztatva!"
msgid "Unmanaged"
msgstr "Nem kezelt"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "El nem mentett módosítások"
@@ -3026,13 +3162,14 @@ msgstr "Várakozás a változtatások alkalmazására..."
msgid "Waiting for command to complete..."
msgstr "Várakozás a parancs befejezésére..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Figyelmeztetés"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Figyelem: vannak el nem mentett változások melyek el fognak veszni az "
-"újraindítás során!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3264,6 +3401,27 @@ msgstr "igen"
msgid "« Back"
msgstr "« Vissza"
+#~ msgid "Delete this interface"
+#~ msgstr "Interfész törlése"
+
+#~ msgid "Flags"
+#~ msgstr "Flag-ek"
+
+#~ msgid "Rule #"
+#~ msgstr "Szabály #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "A hosts fájlok figyelmen kívül hagyása"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Kérem várjon: az eszköz újraindul..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Figyelem: vannak el nem mentett változások melyek el fognak veszni az "
+#~ "újraindítás során!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/po/it/base.po b/modules/luci-base/po/it/base.po
index ffb1fdf0ca..6a6c0223b4 100644
--- a/modules/luci-base/po/it/base.po
+++ b/modules/luci-base/po/it/base.po
@@ -46,6 +46,9 @@ msgstr "Carico in 1 minuto:"
msgid "15 Minute Load:"
msgstr "Carico in 15 minut:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Carico in 5 minuti:"
@@ -214,6 +217,9 @@ msgstr "Aggiungi nuova interfaccia..."
msgid "Additional Hosts files"
msgstr "File Hosts Aggiuntivo"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Indirizzo"
@@ -279,6 +285,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antenna 1"
@@ -335,6 +347,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponibili"
@@ -344,6 +371,9 @@ msgstr "Pacchetti disponibili"
msgid "Average:"
msgstr "Media:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -419,6 +449,11 @@ msgstr "Dispositivo Wireless Broadcom BCM%04x 802.11"
msgid "Buffered"
msgstr "Buffered"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Pulsanti"
@@ -455,6 +490,9 @@ msgstr "Canale"
msgid "Check"
msgstr "Verifica"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -577,6 +615,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -655,9 +701,6 @@ msgstr ""
msgid "Delete"
msgstr "Elimina"
-msgid "Delete this interface"
-msgstr "Rimuovi questa interfaccia"
-
msgid "Delete this network"
msgstr "Rimuovi questa rete"
@@ -676,6 +719,12 @@ msgstr "Dispositivo"
msgid "Device Configuration"
msgstr "Configurazione del dispositivo"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnostica"
@@ -716,6 +765,9 @@ msgstr "Ottimizzazione distanza"
msgid "Distance to farthest network member in meters."
msgstr "Distanza del membro più lontano della rete in metri."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversità"
@@ -789,6 +841,9 @@ msgstr ""
"Fornisci dinamicamente gli indirizzi DHCP ai client. Se disabilitato, solo i "
"client con un indirizzo statico saranno serviti."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Metodo EAP"
@@ -899,6 +954,9 @@ msgstr "Server Log di Sistema esterno"
msgid "External system log server port"
msgstr "Porta Server Log di Sistema esterno"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Frame veloci"
@@ -920,6 +978,11 @@ msgstr "Filtra privati"
msgid "Filter useless"
msgstr "Filtra inutili"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Trova e aggiungi una rete"
@@ -944,9 +1007,6 @@ msgstr "Versione del Firmware"
msgid "Fixed source port for outbound DNS queries"
msgstr "Porta di origine fissa per le richieste DNS in uscita"
-msgid "Flags"
-msgstr "Flags"
-
msgid "Flash Firmware"
msgstr "Flash Firmware"
@@ -977,6 +1037,9 @@ msgstr "Forza TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forza TKIP e CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Inoltra il traffico DHCP"
@@ -1016,6 +1079,12 @@ msgstr "Opzioni Generali"
msgid "General Setup"
msgstr "Impostazioni Generali"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Genera Archivio"
@@ -1027,6 +1096,9 @@ msgstr ""
"La conferma della password assegnata non ha prodotto risultati, la password "
"non è stata cambiata!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1129,6 +1201,9 @@ msgstr "Maschera rete IPv4"
msgid "IPv4 only"
msgstr "Solo IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Lunghezza prefisso IPv4"
@@ -1229,8 +1304,8 @@ msgstr ""
"dispositivo di swap non può essere acceduto alle alte velocità della <abbr "
"title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignora i files Hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignora <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Ignora interfaccia"
@@ -1244,6 +1319,11 @@ msgstr "Immagine"
msgid "In"
msgstr "In"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Tempo di Inattività"
@@ -1427,6 +1507,9 @@ msgstr ""
"Elenco di Server <abbr title=\"Sistema Nome Dimio\">DNS</abbr>a cui "
"inoltrare le richieste in"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Elenco di domini da consentire le risposte RFC1918 per"
@@ -1448,6 +1531,9 @@ msgstr "Carico Medio"
msgid "Loading"
msgstr "Caricamento"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Indirizzo IPv4 locale"
@@ -1521,6 +1607,9 @@ msgstr "Filtro MAC"
msgid "MAC-List"
msgstr "Lista MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1535,6 +1624,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Velocità massima"
@@ -1553,6 +1645,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr "Velocità massima"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1620,12 +1717,18 @@ msgstr ""
"I punti di mount definiscono in quale punto un dispositivo di memoria verrà "
"attaccato al tuo filesystem"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Opzioni di mount"
msgid "Mount point"
msgstr "Punto di mount"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "File system montati"
@@ -1644,6 +1747,9 @@ msgstr ""
msgid "NAS ID"
msgstr "ID della NAS"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1743,6 +1849,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Avviso"
@@ -1870,9 +1979,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "E' richiesto il pacchetto libiwinfo!"
@@ -1900,9 +2018,6 @@ msgstr "Password della chiave privata"
msgid "Password successfully changed!"
msgstr "Password cambiata con successo!"
-msgid "Path"
-msgstr "Percorso"
-
msgid "Path to CA-Certificate"
msgstr "Percorso al certificato CA"
@@ -1918,6 +2033,9 @@ msgstr ""
msgid "Peak:"
msgstr "Picco:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Esegui un riavvio"
@@ -1939,9 +2057,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr "Per favore inserisci il tuo username e la password."
-msgid "Please wait: Device rebooting..."
-msgstr "Per favore attendi: Riavvio del dispositivo..."
-
msgid "Policy"
msgstr ""
@@ -2212,9 +2327,6 @@ msgstr ""
"Le route specificano attraverso quale interfaccia e gateway un certo host o "
"rete può essere raggiunto."
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2232,6 +2344,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2320,6 +2441,9 @@ msgstr ""
msgid "Size"
msgstr "Dimensione"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Salta"
@@ -2598,6 +2722,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2653,6 +2780,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2810,6 +2943,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Modifiche non salvate"
@@ -2977,12 +3113,14 @@ msgstr "In attesa delle modifiche da applicare ..."
msgid "Waiting for command to complete..."
msgstr "In attesa del comando da completare..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Avviso"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Attenzione: Ci sono modifiche non salvate che verranno persi riavviando!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3216,6 +3354,26 @@ msgstr "Sì"
msgid "« Back"
msgstr "« Indietro"
+#~ msgid "Delete this interface"
+#~ msgstr "Rimuovi questa interfaccia"
+
+#~ msgid "Flags"
+#~ msgstr "Flags"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignora i files Hosts"
+
+#~ msgid "Path"
+#~ msgstr "Percorso"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Per favore attendi: Riavvio del dispositivo..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Attenzione: Ci sono modifiche non salvate che verranno persi riavviando!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -3943,9 +4101,6 @@ msgstr "« Indietro"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Qui puoi configurare i tuoi dispositivi wireless installati."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignora <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Independente (Ad-Hoc)"
diff --git a/modules/luci-base/po/ja/base.po b/modules/luci-base/po/ja/base.po
index 8bea7644ea..313fc2cace 100644
--- a/modules/luci-base/po/ja/base.po
+++ b/modules/luci-base/po/ja/base.po
@@ -46,6 +46,9 @@ msgstr "éŽåŽ»1分ã®è² è·:"
msgid "15 Minute Load:"
msgstr "éŽåŽ»15分ã®è² è·:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "éŽåŽ»5分ã®è² è·:"
@@ -205,6 +208,9 @@ msgstr "インターフェースã®æ–°è¦ä½œæˆ..."
msgid "Additional Hosts files"
msgstr "追加ã®ãƒ›ã‚¹ãƒˆãƒ•ã‚¡ã‚¤ãƒ«"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "アドレス"
@@ -266,6 +272,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "アンテナ 1"
@@ -322,6 +334,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "使用å¯"
@@ -331,6 +358,9 @@ msgstr "インストールå¯èƒ½ãªãƒ‘ッケージ"
msgid "Average:"
msgstr "å¹³å‡å€¤:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -406,6 +436,11 @@ msgstr "Broadcom BCM%04x 802.11 無線LANコントローラ"
msgid "Buffered"
msgstr "ãƒãƒƒãƒ•ã‚¡"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "ボタン"
@@ -442,6 +477,9 @@ msgstr "ãƒãƒ£ãƒãƒ«"
msgid "Check"
msgstr "ãƒã‚§ãƒƒã‚¯"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "ãƒã‚§ãƒƒã‚¯ã‚µãƒ "
@@ -565,6 +603,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -642,9 +688,6 @@ msgstr ""
msgid "Delete"
msgstr "削除"
-msgid "Delete this interface"
-msgstr "インターフェースを削除ã—ã¾ã™"
-
msgid "Delete this network"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’削除ã—ã¾ã™"
@@ -663,6 +706,12 @@ msgstr "デãƒã‚¤ã‚¹"
msgid "Device Configuration"
msgstr "デãƒã‚¤ã‚¹è¨­å®š"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "診断機能"
@@ -703,6 +752,9 @@ msgstr "è·é›¢ã®æœ€é©åŒ–"
msgid "Distance to farthest network member in meters."
msgstr "最もé ã„端末ã¨ã®è·é›¢(メートル)を設定ã—ã¦ãã ã•ã„。"
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "ダイãƒã‚·ãƒ†ã‚£"
@@ -777,6 +829,9 @@ msgstr ""
"クライアントã«å¯¾ã—ã¦å‹•çš„ã«DHCPアドレスを割り振りã¾ã™ã€‚無効ã«è¨­å®šã—ãŸå ´åˆã€é™"
"的リースã®ã¿ã‚’è¡Œã„ã¾ã™ã€‚"
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAPメソッド"
@@ -888,6 +943,9 @@ msgstr "外部システムログ・サーãƒãƒ¼"
msgid "External system log server port"
msgstr "外部システムログ・サーãƒãƒ¼ãƒãƒ¼ãƒˆ"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "ファスト・フレーム"
@@ -909,6 +967,11 @@ msgstr "プライベートフィルター"
msgid "Filter useless"
msgstr "Filter useless"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’検索ã—ã¦å‚加"
@@ -933,9 +996,6 @@ msgstr "ファームウェア・ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
msgid "Fixed source port for outbound DNS queries"
msgstr "DNSクエリをé€ä¿¡ã™ã‚‹é€ä¿¡å…ƒãƒãƒ¼ãƒˆã‚’固定ã—ã¾ã™"
-msgid "Flags"
-msgstr "フラグ"
-
msgid "Flash Firmware"
msgstr "ファームウェアã®æ›´æ–°"
@@ -967,6 +1027,9 @@ msgstr "TKIP を使用"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIP åŠã³CCMP (AES) を使用"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "DHCPトラフィックを転é€ã™ã‚‹"
@@ -1006,6 +1069,12 @@ msgstr "一般設定"
msgid "General Setup"
msgstr "一般設定"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—アーカイブã®ä½œæˆ"
@@ -1015,6 +1084,9 @@ msgstr "802.11%s 無線LANコントローラ"
msgid "Given password confirmation did not match, password not changed!"
msgstr "入力ã•ã‚ŒãŸãƒ‘スワードãŒä¸€è‡´ã—ã¾ã›ã‚“。パスワードã¯å¤‰æ›´ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸ!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1114,6 +1186,9 @@ msgstr "IPv4 ãƒãƒƒãƒˆãƒžã‚¹ã‚¯"
msgid "IPv4 only"
msgstr "IPv4ã®ã¿"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "IPv4 プレフィクス長"
@@ -1210,8 +1285,8 @@ msgstr ""
"title=\"Random Access Memory\">RAM</abbr>ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã“ã¨ãŒã§ããªããªã‚‹æã‚Œ"
"ãŒã‚ã‚Šã¾ã™ã€‚"
-msgid "Ignore Hosts files"
-msgstr "ホストファイルを無視ã™ã‚‹"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "<code>/etc/hosts</code>を無視"
msgid "Ignore interface"
msgstr "インターフェースを無視ã™ã‚‹"
@@ -1225,6 +1300,11 @@ msgstr "イメージ"
msgid "In"
msgstr "イン"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "未使用時タイムアウト"
@@ -1408,6 +1488,9 @@ msgstr ""
"å•ã„åˆã‚ã›ã‚’転é€ã™ã‚‹<abbr title=\"Domain Name System\">DNS</abbr> サーãƒãƒ¼ã®"
"リストを設定ã—ã¾ã™"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "RFC1918ã®å¿œç­”を許å¯ã™ã‚‹ãƒªã‚¹ãƒˆ"
@@ -1431,6 +1514,9 @@ msgstr "システム平å‡è² è·"
msgid "Loading"
msgstr "ロード中"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "ローカル IPv4 アドレス"
@@ -1499,6 +1585,9 @@ msgstr "MAC-フィルタ"
msgid "MAC-List"
msgstr "MAC-リスト"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1513,6 +1602,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "最大レート"
@@ -1531,6 +1623,11 @@ msgstr "モデムãŒæº–備完了状態ã«ãªã‚‹ã¾ã§ã®æœ€å¤§å¾…ã¡æ™‚é–“"
msgid "Maximum hold time"
msgstr "最大ä¿æŒæ™‚é–“"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "リースã™ã‚‹ã‚¢ãƒ‰ãƒ¬ã‚¹ã®æœ€å¤§æ•°ã§ã™"
@@ -1598,12 +1695,18 @@ msgstr ""
"マウントãƒã‚¤ãƒ³ãƒˆã¯ã€è¨˜æ†¶ãƒ‡ãƒã‚¤ã‚¹ãŒãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ã®ã©ã“ã«æŽ¥ç¶šã•ã‚Œã¦ã„ã‚‹ã‹ã‚’"
"表示ã—ã¦ã„ã¾ã™ã€‚"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "マウントオプション"
msgid "Mount point"
msgstr "マウントãƒã‚¤ãƒ³ãƒˆ"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "マウント中ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ "
@@ -1622,6 +1725,9 @@ msgstr "マルãƒã‚­ãƒ£ã‚¹ãƒˆã‚¢ãƒ‰ãƒ¬ã‚¹"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1721,6 +1827,9 @@ msgstr "未接続"
msgid "Note: Configuration files will be erased."
msgstr "注æ„: 設定ファイルã¯æ¶ˆåŽ»ã•ã‚Œã¾ã™ã€‚"
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "注æ„"
@@ -1851,9 +1960,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "libiwinfo パッケージをインストールã—ã¦ãã ã•ã„ï¼"
@@ -1881,9 +1999,6 @@ msgstr "秘密éµã®ãƒ‘スワード"
msgid "Password successfully changed!"
msgstr "パスワードを変更ã—ã¾ã—ãŸ"
-msgid "Path"
-msgstr "パス"
-
msgid "Path to CA-Certificate"
msgstr "CA証明書ã®ãƒ‘ス"
@@ -1899,6 +2014,9 @@ msgstr "ボタンイベントをãƒãƒ³ãƒ‰ãƒ«ã™ã‚‹å®Ÿè¡Œãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘ス"
msgid "Peak:"
msgstr "ピーク:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "å†èµ·å‹•ã‚’実行"
@@ -1920,9 +2038,6 @@ msgstr "パケット"
msgid "Please enter your username and password."
msgstr "ユーザーåã¨ãƒ‘スワードを入力ã—ã¦ãã ã•ã„。"
-msgid "Please wait: Device rebooting..."
-msgstr "ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„: å†èµ·å‹•ä¸­ã§ã™..."
-
msgid "Policy"
msgstr "ãƒãƒªã‚·ãƒ¼"
@@ -2207,9 +2322,6 @@ msgstr ""
"特定ã®ãƒ›ã‚¹ãƒˆåˆã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«ã€ã©ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹åŠã³ã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã‚’通ã—ã¦"
"通信を行ã†ã‹ã€çµŒè·¯æƒ…報を設定ã—ã¾ã™ã€‚"
-msgid "Rule #"
-msgstr "ルール #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "デãƒã‚¤ã‚¹ã®ãƒžã‚¦ãƒ³ãƒˆã‚’è¡Œã†å‰ã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†"
@@ -2227,6 +2339,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSHアクセス"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSHキー"
@@ -2318,6 +2439,9 @@ msgstr "ä¿¡å·:"
msgid "Size"
msgstr "サイズ"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "スキップ"
@@ -2596,6 +2720,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "é¸æŠžä¸­ã®ãƒ—ロトコルを使用ã™ã‚‹å ´åˆã€ãƒ‡ãƒã‚¤ã‚¹ã‚’設定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2656,6 +2783,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2822,6 +2955,9 @@ msgstr "ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ã§ã™ã€‚パスワードã¯å¤‰æ›´ã•ã‚Œã¦ã„ã¾ã›ã‚“
msgid "Unmanaged"
msgstr "Unmanaged"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "ä¿å­˜ã•ã‚Œã¦ã„ãªã„変更"
@@ -2990,11 +3126,14 @@ msgstr "変更をé©ç”¨ä¸­ã§ã™..."
msgid "Waiting for command to complete..."
msgstr "コマンド実行中ã§ã™..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "警告"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "警告: ä¿å­˜ã•ã‚Œã¦ã„ãªã„変更ã¯å†èµ·å‹•å¾Œã«å¤±ã‚ã‚Œã¾ã™!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3225,6 +3364,28 @@ msgstr "ã¯ã„"
msgid "« Back"
msgstr "« 戻る"
+#~ msgid "Delete this interface"
+#~ msgstr "インターフェースを削除ã—ã¾ã™"
+
+#~ msgid "Flags"
+#~ msgstr "フラグ"
+
+#~ msgid "Rule #"
+#~ msgstr "ルール #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "ホストファイルを無視ã™ã‚‹"
+
+#~ msgid "Path"
+#~ msgstr "パス"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„: å†èµ·å‹•ä¸­ã§ã™..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "警告: ä¿å­˜ã•ã‚Œã¦ã„ãªã„変更ã¯å†èµ·å‹•å¾Œã«å¤±ã‚ã‚Œã¾ã™!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -4077,9 +4238,6 @@ msgstr "« 戻る"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "ã“ã“ã§ã¯ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚ŒãŸç„¡ç·šãƒ‡ãƒã‚¤ã‚¹ã®è¨­å®šã‚’è¡Œã†ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚"
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "<code>/etc/hosts</code>を無視"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "アドホック"
diff --git a/modules/luci-base/po/ms/base.po b/modules/luci-base/po/ms/base.po
index d2a34dfbe1..ab3a25f0f2 100644
--- a/modules/luci-base/po/ms/base.po
+++ b/modules/luci-base/po/ms/base.po
@@ -46,6 +46,9 @@ msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr ""
@@ -196,6 +199,9 @@ msgstr ""
msgid "Additional Hosts files"
msgstr ""
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr ""
@@ -256,6 +262,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -312,6 +324,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Boleh didapati"
@@ -321,6 +348,9 @@ msgstr ""
msgid "Average:"
msgstr ""
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr ""
@@ -393,6 +423,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Butang"
@@ -429,6 +464,9 @@ msgstr "Saluran"
msgid "Check"
msgstr ""
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Jumlah disemak "
@@ -541,6 +579,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr "Mengkustomisasi perilaku peranti LED jika mungkin."
@@ -614,9 +660,6 @@ msgstr ""
msgid "Delete"
msgstr "Padam"
-msgid "Delete this interface"
-msgstr ""
-
msgid "Delete this network"
msgstr ""
@@ -635,6 +678,12 @@ msgstr "Alat"
msgid "Device Configuration"
msgstr ""
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr ""
@@ -673,6 +722,9 @@ msgstr "Jarak Optimasi"
msgid "Distance to farthest network member in meters."
msgstr "Jarak ke rangkaian terjauh ahli dalam meter."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Keanekaragaman"
@@ -740,6 +792,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-Kaedah"
@@ -848,6 +903,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Frame Cepat"
@@ -869,6 +927,11 @@ msgstr "Penapis swasta"
msgid "Filter useless"
msgstr "Penapis tak berguna"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -893,9 +956,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr "Parameter"
-
msgid "Flash Firmware"
msgstr "Firmware Flash"
@@ -926,6 +986,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -965,6 +1028,12 @@ msgstr ""
msgid "General Setup"
msgstr "Setup Umum"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -974,6 +1043,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1073,6 +1145,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1167,8 +1242,8 @@ msgstr ""
"sangat lambat kerana peranti-penukar tidak boleh diakses dengan datarates "
"yang tinggi pada RAM."
-msgid "Ignore Hosts files"
-msgstr ""
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Mengabaikan /etc/hosts"
msgid "Ignore interface"
msgstr "Abaikan antara muka"
@@ -1182,6 +1257,11 @@ msgstr ""
msgid "In"
msgstr "Masuk"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1364,6 +1444,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1385,6 +1468,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1452,6 +1538,9 @@ msgstr "Penapis MAC"
msgid "MAC-List"
msgstr "Senarai MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1466,6 +1555,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Rate Maksimum"
@@ -1485,6 +1577,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr "Memegang masa maksimum"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1553,12 +1650,18 @@ msgstr ""
"Mount Points menentukan di mana titik peranti memori akan melekat pada fail "
"sistem"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Mounted fail sistems"
@@ -1577,6 +1680,9 @@ msgstr ""
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1676,6 +1782,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1803,9 +1912,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1833,9 +1951,6 @@ msgstr "Kata Laluan Kunci Swasta"
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr "Path"
-
msgid "Path to CA-Certificate"
msgstr "Path ke CA-Sijil"
@@ -1851,6 +1966,9 @@ msgstr "Path ke eksekusi yang mengendalikan acara butang"
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Lakukan reboot"
@@ -1872,9 +1990,6 @@ msgstr "Pkts."
msgid "Please enter your username and password."
msgstr "Sila masukkan username dan kata laluan anda."
-msgid "Please wait: Device rebooting..."
-msgstr "Sila tunggu: Peranti sedang reboot..."
-
msgid "Policy"
msgstr "Dasar"
@@ -2141,9 +2256,6 @@ msgstr ""
"Laluan menentukan di mana interface dan gateway host atau rangkaian tertentu "
"yang boleh dicapai."
-msgid "Rule #"
-msgstr "Peraturan #"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2161,6 +2273,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2249,6 +2370,9 @@ msgstr ""
msgid "Size"
msgstr "Saiz"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Skip"
@@ -2507,6 +2631,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2562,6 +2689,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2719,6 +2852,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Perubahan yang belum disimpan"
@@ -2878,11 +3014,14 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Amaran: Ada perubahan yang belum disimpan akan hilang saat reboot!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3106,6 +3245,22 @@ msgstr ""
msgid "« Back"
msgstr "« Kembali"
+#~ msgid "Flags"
+#~ msgstr "Parameter"
+
+#~ msgid "Rule #"
+#~ msgstr "Peraturan #"
+
+#~ msgid "Path"
+#~ msgstr "Path"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Sila tunggu: Peranti sedang reboot..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "Amaran: Ada perubahan yang belum disimpan akan hilang saat reboot!"
+
#~ msgid "Frequency Hopping"
#~ msgstr "Melompat Frekuensi"
@@ -3695,9 +3850,6 @@ msgstr "« Kembali"
#~ "dipilih. Hapus tanda pada pilihan untuk menentukan melampirkan rangkaian "
#~ "mandiri baru untuk antara muka ini."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Mengabaikan /etc/hosts"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "(Ad-Hoc) Tersendiri"
diff --git a/modules/luci-base/po/no/base.po b/modules/luci-base/po/no/base.po
index 21176ed3f4..edde08eace 100644
--- a/modules/luci-base/po/no/base.po
+++ b/modules/luci-base/po/no/base.po
@@ -41,6 +41,9 @@ msgstr "1 minutts belastning:"
msgid "15 Minute Load:"
msgstr "15 minutters belastning:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "5 minutters belastning:"
@@ -205,6 +208,9 @@ msgstr "Legg til grensesnitt..."
msgid "Additional Hosts files"
msgstr "Tilleggs vertsfiler"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adresse"
@@ -265,6 +271,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antenne 1"
@@ -321,6 +333,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Tilgjengelig"
@@ -330,6 +357,9 @@ msgstr "Tilgjengelige pakker"
msgid "Average:"
msgstr "Gjennomsnitt:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -405,6 +435,11 @@ msgstr "Broadcom BCM%04x 802.11 Trådløs Kontroller"
msgid "Buffered"
msgstr "Bufret"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Knapper"
@@ -441,6 +476,9 @@ msgstr "Kanal"
msgid "Check"
msgstr "Kontroller"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Kontrollsum"
@@ -563,6 +601,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -640,9 +686,6 @@ msgstr ""
msgid "Delete"
msgstr "Fjern"
-msgid "Delete this interface"
-msgstr "Fjern dette grensesnitt"
-
msgid "Delete this network"
msgstr "Fjern dette nettverket"
@@ -661,6 +704,12 @@ msgstr "Enhet"
msgid "Device Configuration"
msgstr "Enhet Konfigurasjon"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Nettverksdiagnostikk"
@@ -701,6 +750,9 @@ msgstr "Avstand Optimalisering"
msgid "Distance to farthest network member in meters."
msgstr "Avstand i meter til det medlem av nettverket som er lengst unna."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Antennevariasjon"
@@ -775,6 +827,9 @@ msgstr ""
"Dynamisk tildeling av DHCP adresser til klienter. Om deaktivert, kan en kun "
"bruke klienter med statisk leie."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-metode"
@@ -884,6 +939,9 @@ msgstr "Ekstern systemlogg server"
msgid "External system log server port"
msgstr "Ekstern systemlogg server port"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Fast Frames"
@@ -905,6 +963,11 @@ msgstr "Filtrer private"
msgid "Filter useless"
msgstr "Filtrer ubrukelige"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Finn og koble til nettverk"
@@ -929,9 +992,6 @@ msgstr "Firmware Versjon"
msgid "Fixed source port for outbound DNS queries"
msgstr "Fast kilde port for utgående DNS-spørringer"
-msgid "Flags"
-msgstr "Flagg"
-
msgid "Flash Firmware"
msgstr "Firmware Oppradering"
@@ -963,6 +1023,9 @@ msgstr "Bruk TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Bruk TKIP og CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Videresend DHCP trafikk"
@@ -1002,6 +1065,12 @@ msgstr "Generelle Innstillinger"
msgid "General Setup"
msgstr "Generelt Oppsett"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Opprett arkiv"
@@ -1011,6 +1080,9 @@ msgstr "Generell 802.11%s Trådløs Kontroller"
msgid "Given password confirmation did not match, password not changed!"
msgstr "Det oppgitte passordet var ikke korrekt, passord ble ikke endret!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1112,6 +1184,9 @@ msgstr "IPv4 nettmaske"
msgid "IPv4 only"
msgstr "Kun IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "IPv4 prefikslengde"
@@ -1205,8 +1280,8 @@ msgstr ""
"\"Random Access Memory\">RAM</abbr>. Vær oppmerksom på at bruk av swap er "
"mye langsommere en <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignorer vertsfiler"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr ""
msgid "Ignore interface"
msgstr "Ignorer grensesnitt"
@@ -1220,6 +1295,11 @@ msgstr "Firmware"
msgid "In"
msgstr "i"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Tidsavbrudd etter innaktivitet"
@@ -1403,6 +1483,9 @@ msgstr ""
"Liste med <abbr title=\"Domain Name System\">DNS</abbr> servere som "
"forespørsler blir videresendt til"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Liste over domener hvor en tillater RFC1918 svar"
@@ -1425,6 +1508,9 @@ msgstr "Belastning Gjennomsnitt"
msgid "Loading"
msgstr "Laster"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Lokal IPv4 adresse"
@@ -1497,6 +1583,9 @@ msgstr "MAC-Filter"
msgid "MAC-List"
msgstr "MAC-Liste"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1511,6 +1600,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Maksimal hastighet"
@@ -1529,6 +1621,11 @@ msgstr "Maksimalt antall sekunder å vente på at modemet skal bli klart"
msgid "Maximum hold time"
msgstr "Maksimal holde tid"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Maksimalt antall utleide adresser."
@@ -1596,12 +1693,18 @@ msgstr ""
"Monterings punkter definerer hvor lagrings enheter blir tilsluttet "
"filsystemet"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Monterings alternativer"
msgid "Mount point"
msgstr "Monterings punkt"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Monterte Filsystemer"
@@ -1620,6 +1723,9 @@ msgstr "Multicast adresse"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1719,6 +1825,9 @@ msgstr "Ikke tilkoblet"
msgid "Note: Configuration files will be erased."
msgstr "Merk: Konfigurasjonsfiler vil bli slettet"
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Merk"
@@ -1849,9 +1958,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Pakken libiwinfo er nødvendig!"
@@ -1879,9 +1997,6 @@ msgstr "Passord for privatnøkkel"
msgid "Password successfully changed!"
msgstr "Passordet er endret!"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "Sti til CA-sertifikat"
@@ -1897,6 +2012,9 @@ msgstr "Sti til program som håndterer handling ved bruk av knapp"
msgid "Peak:"
msgstr "Maksimalt:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Omstart nå"
@@ -1918,9 +2036,6 @@ msgstr "Pakker."
msgid "Please enter your username and password."
msgstr "Skriv inn ditt brukernavn og passord."
-msgid "Please wait: Device rebooting..."
-msgstr "Vent: Enheten starter på nytt..."
-
msgid "Policy"
msgstr "Policy"
@@ -2202,9 +2317,6 @@ msgstr ""
"Ruter, angir hvilket nettverksgrensesnitt og hvilken gateway som brukes for "
"å nå et gitt nettverk eller vert."
-msgid "Rule #"
-msgstr "Regel #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Kjør filsystem sjekk før montering av enheten"
@@ -2222,6 +2334,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSH Tilgang"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH-Nøkler"
@@ -2313,6 +2434,9 @@ msgstr "Signal:"
msgid "Size"
msgstr "Størrelse"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "GÃ¥ videre"
@@ -2600,6 +2724,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Den valgte protokoll må ha en enhet tilknyttet"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2660,6 +2787,12 @@ msgid "This IPv4 address of the relay"
msgstr "Dette IPv4 adressen til relayet"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2825,6 +2958,9 @@ msgstr "Ukjent feil, passordet ble ikke endret!"
msgid "Unmanaged"
msgstr "Uhåndtert"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Ulagrede Endringer"
@@ -2991,11 +3127,14 @@ msgstr "Venter på at endringer utføres..."
msgid "Waiting for command to complete..."
msgstr "Venter på at kommando fullføres..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Advarsel"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Advarsel: Det er ulagrede endringer som vil gå tapt under omstarten!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3227,6 +3366,26 @@ msgstr "ja"
msgid "« Back"
msgstr "« Tilbake"
+#~ msgid "Delete this interface"
+#~ msgstr "Fjern dette grensesnitt"
+
+#~ msgid "Flags"
+#~ msgstr "Flagg"
+
+#~ msgid "Rule #"
+#~ msgstr "Regel #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignorer vertsfiler"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Vent: Enheten starter på nytt..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Advarsel: Det er ulagrede endringer som vil gå tapt under omstarten!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/po/pl/base.po b/modules/luci-base/po/pl/base.po
index baa7ab8534..9f0c553065 100644
--- a/modules/luci-base/po/pl/base.po
+++ b/modules/luci-base/po/pl/base.po
@@ -42,13 +42,16 @@ msgid "-- match by label --"
msgstr ""
msgid "1 Minute Load:"
-msgstr "Obciążenie w ciągu 1 minuty:"
+msgstr "Obciążenie 1 min.:"
msgid "15 Minute Load:"
-msgstr "Obciążenie w ciągu 15 minut:"
+msgstr "Obciążenie 15 min.:"
+
+msgid "464XLAT (CLAT)"
+msgstr ""
msgid "5 Minute Load:"
-msgstr "Obciążenie w ciągu 5 minut:"
+msgstr "Obciążenie 5 min.:"
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -215,6 +218,9 @@ msgstr "Dodaj nowy interfejs..."
msgid "Additional Hosts files"
msgstr "Dodatkowe pliki Hosts"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adres"
@@ -281,6 +287,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -338,6 +350,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Dostępne"
@@ -347,6 +374,9 @@ msgstr "Dostępne pakiety"
msgid "Average:"
msgstr "Åšrednia:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -424,6 +454,11 @@ msgstr "Bezprzewodowy kontroler Broadcom BCM%04x 802.11"
msgid "Buffered"
msgstr "Buforowana"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Przyciski"
@@ -460,6 +495,9 @@ msgstr "Kanał"
msgid "Check"
msgstr "Sprawdź"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Suma kontrolna"
@@ -583,6 +621,14 @@ msgstr "Interfejs Niestandardowy"
msgid "Custom delegated IPv6-prefix"
msgstr ""
+msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
# Spacji zabrało i napisy się skleiły
msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
@@ -662,9 +708,6 @@ msgstr ""
msgid "Delete"
msgstr "Usuń"
-msgid "Delete this interface"
-msgstr "Usuń ten interfejs"
-
msgid "Delete this network"
msgstr "Usuń tą sieć"
@@ -684,6 +727,12 @@ msgstr "UrzÄ…dzenie"
msgid "Device Configuration"
msgstr "Konfiguracja urzÄ…dzenia"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnostyka"
@@ -724,6 +773,9 @@ msgstr "Optymalizacja odległości"
msgid "Distance to farthest network member in meters."
msgstr "Odległość do najdalej oddalonego członka sieci w metrach."
+msgid "Distribution feeds"
+msgstr ""
+
# Jak poprzednio trzymam siÄ™ konwencji
msgid "Diversity"
msgstr "Wielorakość"
@@ -802,6 +854,9 @@ msgstr ""
"Dynamicznie rezerwuje adresy DHCP dla klientów. Jeśli jest wyłączone tylko "
"klienci posiadający stałe dzierżawy będą obsłużeni."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Metoda EAP"
@@ -916,6 +971,9 @@ msgstr "Zewnętrzny serwer dla loga systemowego"
msgid "External system log server port"
msgstr "Port zewnętrznego serwera dla loga systemowego"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Szybkie ramki (Fast Frames)"
@@ -937,6 +995,11 @@ msgstr "Filtruj prywatne"
msgid "Filter useless"
msgstr "Filtruj bezużyteczne"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Znajdź i podłącz się do sieci"
@@ -962,9 +1025,6 @@ msgstr "Wersja firmware"
msgid "Fixed source port for outbound DNS queries"
msgstr "Stały port źródłowy dla wychodzących zapytań DNS"
-msgid "Flags"
-msgstr "Flagi"
-
msgid "Flash Firmware"
msgstr "Aktualizuj firmware"
@@ -996,6 +1056,9 @@ msgstr "WymuÅ› TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "WymuÅ› TKIP i CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Przekazuj ruch DHCP"
@@ -1035,6 +1098,12 @@ msgstr "Ustawienia główne"
msgid "General Setup"
msgstr "Ustawienia podstawowe"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Twórz archiwum"
@@ -1046,6 +1115,9 @@ msgstr ""
"Hasło nie zostało zmienione, wpisane poprzednie hasło routera jest "
"niewłaściwe!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1150,6 +1222,9 @@ msgstr "Maska IPv4"
msgid "IPv4 only"
msgstr "Tylko IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Długość prefiksu IPv4"
@@ -1249,8 +1324,8 @@ msgstr ""
"Memory\">RAM</abbr> będzie dostępna. Uwaga - plik wymiany jest dużo "
"wolniejszy niż pamięć <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignoruj pliki Hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr ""
msgid "Ignore interface"
msgstr "Ignoruj interfejs"
@@ -1264,6 +1339,11 @@ msgstr "Obraz"
msgid "In"
msgstr "W"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Czas bezczynności"
@@ -1449,6 +1529,9 @@ msgstr ""
"Lista serwerów <abbr title=\"Domain Name System\">DNS</abbr> do których będą "
"przekazywane zapytania"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Lista domen zezwalajÄ…cych na odpowiedzi RFC1918"
@@ -1471,6 +1554,9 @@ msgstr "Średnie obciążenie"
msgid "Loading"
msgstr "Åadowanie"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Lokalny adres IPv4"
@@ -1544,6 +1630,9 @@ msgstr "Filtr adresów MAC"
msgid "MAC-List"
msgstr "Lista MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1558,6 +1647,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Maksymalna Szybkość"
@@ -1576,6 +1668,11 @@ msgstr "Maksymalny czas podany w sekundach do pełnej gotowości modemu"
msgid "Maximum hold time"
msgstr "Maksymalny czas podtrzymania"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Maksymalna liczba dzierżawionych adresów."
@@ -1643,12 +1740,18 @@ msgstr ""
"Punkty montowania definiują gdzie urządzenie pamięci zostanie podłączone do "
"systemu plików"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Opcje montowania"
msgid "Mount point"
msgstr "Punkt montownia"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Zamontowane systemy plików"
@@ -1667,6 +1770,9 @@ msgstr "Adres Multicast`u"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1766,6 +1872,9 @@ msgstr "Nie podłączony"
msgid "Note: Configuration files will be erased."
msgstr "UWAGA: Pliki konfiguracyjne zostaną usunięte."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Spostrzeżenie"
@@ -1838,7 +1947,7 @@ msgid "Out"
msgstr "WychodzÄ…ce"
msgid "Outbound:"
-msgstr "WychodzÄ…ce:"
+msgstr "WychodzÄ…cy:"
msgid "Outdoor Channels"
msgstr "Kanały zewnętrzne"
@@ -1895,9 +2004,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Wymagany pakiet libiwinfo!"
@@ -1925,9 +2043,6 @@ msgstr "Hasło lub klucz prywatny"
msgid "Password successfully changed!"
msgstr "Pomyślnie zmieniono hasło!"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "Ścieżka do certyfikatu CA"
@@ -1945,6 +2060,9 @@ msgstr ""
msgid "Peak:"
msgstr "Szczyt:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Wykonaj restart"
@@ -1966,9 +2084,6 @@ msgstr "Pktw."
msgid "Please enter your username and password."
msgstr "Proszę wprowadź swój login i hasło."
-msgid "Please wait: Device rebooting..."
-msgstr "Proszę czekać: Ponowne uruchamianie..."
-
msgid "Policy"
msgstr "Zasada"
@@ -2252,9 +2367,6 @@ msgstr ""
"Ścieżki routingu pokazują routerowi przez który interfejs oraz którą bramę "
"może skomunikować się z daną siecią lub komputerem."
-msgid "Rule #"
-msgstr "Zasada #"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
"Sprawdź czy system plików nie zawiera błędów przed zamontowaniem urządzenia"
@@ -2273,6 +2385,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Dostęp SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Klucze SSH"
@@ -2365,6 +2486,9 @@ msgstr "Sygnał:"
msgid "Size"
msgstr "Rozmiar"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Pomiń"
@@ -2660,6 +2784,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Wybrany protokół potrzebuje przypisanego urządzenia"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2720,6 +2847,12 @@ msgid "This IPv4 address of the relay"
msgstr "Ten adres IPv4 przekaźnika"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2889,6 +3022,9 @@ msgstr "Nieznany błąd, hasło nie zostało zmienione"
msgid "Unmanaged"
msgstr "NiezarzÄ…dzalny"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Niezapisane zmiany"
@@ -3057,13 +3193,14 @@ msgstr "Trwa wprowadzenie zmian..."
msgid "Waiting for command to complete..."
msgstr "Trwa wykonanie polecenia..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Ostrzeżenie"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Ostrzeżenie: Pozostały niezapisane zmian, które zostaną utracone podczas "
-"restartu!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3296,6 +3433,27 @@ msgstr "tak"
msgid "« Back"
msgstr "« Wróć"
+#~ msgid "Delete this interface"
+#~ msgstr "Usuń ten interfejs"
+
+#~ msgid "Flags"
+#~ msgstr "Flagi"
+
+#~ msgid "Rule #"
+#~ msgstr "Zasada #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignoruj pliki Hosts"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Proszę czekać: Ponowne uruchamianie..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Ostrzeżenie: Pozostały niezapisane zmian, które zostaną utracone podczas "
+#~ "restartu!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/po/pt-br/base.po b/modules/luci-base/po/pt-br/base.po
index ec4401bde9..d278974e7f 100644
--- a/modules/luci-base/po/pt-br/base.po
+++ b/modules/luci-base/po/pt-br/base.po
@@ -46,6 +46,9 @@ msgstr "Carga 1 Minuto:"
msgid "15 Minute Load:"
msgstr "Carga 15 Minutos:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Carga 5 Minutos:"
@@ -215,6 +218,9 @@ msgstr "Adiciona uma nova interface..."
msgid "Additional Hosts files"
msgstr "Arquivos adicionais de equipamentos conhecidos (hosts)"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Endereço"
@@ -280,6 +286,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -336,6 +348,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponível"
@@ -345,6 +372,9 @@ msgstr "Pacotes disponíveis"
msgid "Average:"
msgstr "Média:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -420,6 +450,11 @@ msgstr "Broadcom BCM%04x 802.11 Wireless Controlador"
msgid "Buffered"
msgstr "Buffered"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Botões"
@@ -456,6 +491,9 @@ msgstr "Canal"
msgid "Check"
msgstr "Verificar"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Soma de verificação"
@@ -579,6 +617,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -657,9 +703,6 @@ msgstr ""
msgid "Delete"
msgstr "Apagar"
-msgid "Delete this interface"
-msgstr "Apagar esta interface"
-
msgid "Delete this network"
msgstr "Apagar esta rede"
@@ -678,6 +721,12 @@ msgstr "Dispositivo"
msgid "Device Configuration"
msgstr "Configuração do Dispositivo"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnóstico"
@@ -719,6 +768,9 @@ msgstr "Otimização de Distância"
msgid "Distance to farthest network member in meters."
msgstr "Distância para o computador mais distante da rede (em metros)."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversidade"
@@ -798,6 +850,9 @@ msgstr ""
"Aloca dinamicamente os endereços do DHCP para os clientes. Se desabilitado, "
"somente os clientes com atribuições estáticas serão servidos. "
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Método EAP"
@@ -909,6 +964,9 @@ msgstr "Servidor externo de registros do sistema (syslog)"
msgid "External system log server port"
msgstr "Porta do servidor externo de registro do sistema (syslog)"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Quadros Rápidos"
@@ -930,6 +988,11 @@ msgstr "Filtrar endereços privados"
msgid "Filter useless"
msgstr "Filtrar consultas inúteis"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Procurar e conectar à rede"
@@ -954,9 +1017,6 @@ msgstr "Versão do Firmware"
msgid "Fixed source port for outbound DNS queries"
msgstr "Porta de origem fixa para saída de consultas DNS"
-msgid "Flags"
-msgstr "Marcadores"
-
msgid "Flash Firmware"
msgstr "Gravar Firmware"
@@ -987,6 +1047,9 @@ msgstr "Forçar TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forçar TKIP e CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Encaminhar tráfego DHCP"
@@ -1026,6 +1089,12 @@ msgstr "Configurações Gerais"
msgid "General Setup"
msgstr "Configurações Gerais"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Gerar arquivo"
@@ -1035,6 +1104,9 @@ msgstr "Generico 802.11%s Wireless Controlador"
msgid "Given password confirmation did not match, password not changed!"
msgstr "A senha de confirmação informada não casa. Senha não alterada!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1141,6 +1213,9 @@ msgstr "Máscara de rede IPv4"
msgid "IPv4 only"
msgstr "Somente IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Tamanho do prefixo IPv4"
@@ -1242,8 +1317,8 @@ msgstr ""
"de transferência tão altas com a memória <abbr title=\"Memória de Acesso "
"Aleatório\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignorar arquivos de equipamentos conhecidos (hosts)"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignorar <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Ignorar interface"
@@ -1257,6 +1332,11 @@ msgstr "Imagem"
msgid "In"
msgstr "Entrada"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Tempo limite de inatividade"
@@ -1444,6 +1524,9 @@ msgstr ""
"Lista dos servidores <abbr title=\"Domain Name System\">DNS</abbr> para "
"encaminhar as requisições"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
"Lista dos domínios para os quais será permitido respostas apontando para "
@@ -1470,6 +1553,9 @@ msgstr "Carga Média"
msgid "Loading"
msgstr "Carregando"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Endereço IPv4 local"
@@ -1545,6 +1631,9 @@ msgstr "Filtro de MAC"
msgid "MAC-List"
msgstr "Lista de MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1561,6 +1650,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Taxa Máxima"
@@ -1580,6 +1672,11 @@ msgstr "Tempo máximo, em segundos, para esperar que o modem fique pronto"
msgid "Maximum hold time"
msgstr "Tempo máximo de espera"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Número máximo de endereços atribuídos."
@@ -1647,12 +1744,18 @@ msgstr ""
"Pontos de montagem definem em que ponto um dispositivo de armazenamento será "
"anexado ao sistema de arquivos"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Opções de montagem"
msgid "Mount point"
msgstr "Ponto de montagem"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Sistemas de arquivos montados"
@@ -1671,6 +1774,9 @@ msgstr "Endereço de Multicast"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1770,6 +1876,9 @@ msgstr "Não conectado"
msgid "Note: Configuration files will be erased."
msgstr "Nota: Os arquivos de configuração serão apagados."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Aviso"
@@ -1902,9 +2011,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "O pacote libiwinfo é necessário!"
@@ -1932,9 +2050,6 @@ msgstr "Senha da Chave Privada"
msgid "Password successfully changed!"
msgstr "A senha foi alterada com sucesso!"
-msgid "Path"
-msgstr "Directório"
-
msgid "Path to CA-Certificate"
msgstr "Caminho para o Certificado da AC"
@@ -1950,6 +2065,9 @@ msgstr "Caminho para o executável que trata o evento do botão"
msgid "Peak:"
msgstr "Pico:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Reiniciar o sistema"
@@ -1971,9 +2089,6 @@ msgstr "Pcts."
msgid "Please enter your username and password."
msgstr "Entre com o seu usuário e senha."
-msgid "Please wait: Device rebooting..."
-msgstr "Por favor aguarde: Equipamento reiniciando..."
-
msgid "Policy"
msgstr "Política"
@@ -2257,9 +2372,6 @@ msgstr ""
"As rotas especificam através de qual interface e roteador um certo destino "
"podem ser alcançado."
-msgid "Rule #"
-msgstr "Regra #"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
"Execute a verificação do sistema de arquivos antes da montagem do dispositivo"
@@ -2278,6 +2390,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Acesso SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Chaves SSH"
@@ -2369,6 +2490,9 @@ msgstr "Sinal:"
msgid "Size"
msgstr "Tamanho"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Pular"
@@ -2663,6 +2787,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "O protocolo selecionado necessita estar associado a um dispositivo"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2724,6 +2851,12 @@ msgid "This IPv4 address of the relay"
msgstr "Este endereço IPv4 do repassar"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2891,6 +3024,9 @@ msgstr "Erro Desconhecido, a senha não foi alterada!"
msgid "Unmanaged"
msgstr "Não gerenciado"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Alterações Não Salvas"
@@ -3058,13 +3194,14 @@ msgstr "Esperando a aplicação das mudanças..."
msgid "Waiting for command to complete..."
msgstr "Esperando o término do comando..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Atenção"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Aviso: Existem alterações não salvas que serão perdidas durante a "
-"reiniciação!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3300,6 +3437,30 @@ msgstr "sim"
msgid "« Back"
msgstr "« Voltar"
+#~ msgid "Delete this interface"
+#~ msgstr "Apagar esta interface"
+
+#~ msgid "Flags"
+#~ msgstr "Marcadores"
+
+#~ msgid "Rule #"
+#~ msgstr "Regra #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignorar arquivos de equipamentos conhecidos (hosts)"
+
+#~ msgid "Path"
+#~ msgstr "Directório"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Por favor aguarde: Equipamento reiniciando..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Aviso: Existem alterações não salvas que serão perdidas durante a "
+#~ "reiniciação!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -4158,9 +4319,6 @@ msgstr "« Voltar"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Aqui pode configurar os dispositivos wifi instalados. "
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignorar <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Independente (Ad-Hoc)"
diff --git a/modules/luci-base/po/pt/base.po b/modules/luci-base/po/pt/base.po
index 1acc852bbf..874afc9013 100644
--- a/modules/luci-base/po/pt/base.po
+++ b/modules/luci-base/po/pt/base.po
@@ -46,6 +46,9 @@ msgstr "Carga de 1 Minuto:"
msgid "15 Minute Load:"
msgstr "Carga de 15 minutos:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Carga 5 Minutos:"
@@ -215,6 +218,9 @@ msgstr "Adicionar uma nova interface..."
msgid "Additional Hosts files"
msgstr "Ficheiro Adicional de Hosts"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Endereço"
@@ -278,6 +284,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -334,6 +346,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponível"
@@ -343,6 +370,9 @@ msgstr "Pacotes disponíveis"
msgid "Average:"
msgstr "Média:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -418,6 +448,11 @@ msgstr "Controlador Wireless Broadcom BCM%04x 802.11"
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Botões"
@@ -454,6 +489,9 @@ msgstr "Canal"
msgid "Check"
msgstr "Verificar"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -576,6 +614,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -654,9 +700,6 @@ msgstr ""
msgid "Delete"
msgstr "Apagar"
-msgid "Delete this interface"
-msgstr "Apagar esta interface"
-
msgid "Delete this network"
msgstr "Apagar esta rede"
@@ -675,6 +718,12 @@ msgstr "Dispositivo"
msgid "Device Configuration"
msgstr "Configuração do Dispositivo"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnósticos"
@@ -715,6 +764,9 @@ msgstr "Optimização de Distância"
msgid "Distance to farthest network member in meters."
msgstr "Distância para o último host da rede em metros."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversidade"
@@ -791,6 +843,9 @@ msgstr ""
"Alocar dinamicamente endereços DHCP para clientes. Se desativado, só os "
"clientes com reservas estáticas serão servidos."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Metodo-EAP"
@@ -902,6 +957,9 @@ msgstr "Servidor externo de logs de sistema"
msgid "External system log server port"
msgstr "Porta do Servidor externo de logs de sistema"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Frames Rápidas"
@@ -923,6 +981,11 @@ msgstr "Filtrar endereços privados"
msgid "Filter useless"
msgstr "Filtro inútil"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Procurar e ligar rede"
@@ -947,9 +1010,6 @@ msgstr "Versão do Firmware"
msgid "Fixed source port for outbound DNS queries"
msgstr "Porta fixa de origem para saída das consultas DNS"
-msgid "Flags"
-msgstr "Flags"
-
msgid "Flash Firmware"
msgstr "Gravar Firmware"
@@ -980,6 +1040,9 @@ msgstr "Forçar TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forçar TKIP e CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "Encaminhar tráfego DHCP"
@@ -1019,6 +1082,12 @@ msgstr "Definições Gerais"
msgid "General Setup"
msgstr "Configuração Geral"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Gerar arquivo"
@@ -1029,6 +1098,9 @@ msgid "Given password confirmation did not match, password not changed!"
msgstr ""
"A confirmação de password não corresponde, a password não foi alterada!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1133,6 +1205,9 @@ msgstr "Máscara IPv4"
msgid "IPv4 only"
msgstr "Só IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Comprimento do prefixo IPv4"
@@ -1228,8 +1303,8 @@ msgstr ""
"lento pois o dispositivo swap não pode ser acedido com um nível elevado de "
"memória <abbr title=\"Memória de Acesso Aleatório\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ignorar ficheiros de Hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignorar <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Ignorar interface"
@@ -1243,6 +1318,11 @@ msgstr "Imagem"
msgid "In"
msgstr "Entrada"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Tempo de inatividade"
@@ -1427,6 +1507,9 @@ msgstr ""
"Lista de servidores <abbr title=\"Sistema Nomes de Domínio\">DNS</abbr> para "
"onde encaminhar os pedidos"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "Lista de dominios que permitem respostas RFC1918 para"
@@ -1449,6 +1532,9 @@ msgstr "Carga Média"
msgid "Loading"
msgstr "A carregar"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Endereço IPv4 Local"
@@ -1521,6 +1607,9 @@ msgstr "Filtro-MAC"
msgid "MAC-List"
msgstr "Lista-MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1535,6 +1624,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Taxa Máxima"
@@ -1553,6 +1645,11 @@ msgstr "Número máximo de segundos a esperar pelo modem para ficar pronto"
msgid "Maximum hold time"
msgstr "Tempo máximo de espera"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "Número máximo de endereços concessionados."
@@ -1620,12 +1717,18 @@ msgstr ""
"Pontos de montagem definem em que ponto um dispositivo de memória será "
"anexado ao sistema de arquivos"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr "Ponto de montagem"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Sistemas de arquivos montados"
@@ -1644,6 +1747,9 @@ msgstr "Endereço de multicast"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1743,6 +1849,9 @@ msgstr "Não ligado"
msgid "Note: Configuration files will be erased."
msgstr "Nota: Os ficheiros de configuração serão apagados."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Reparo"
@@ -1871,9 +1980,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtp"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "O pacote libiwinfo é necessário!"
@@ -1901,9 +2019,6 @@ msgstr "Senha da Chave Privada"
msgid "Password successfully changed!"
msgstr "Password alterada com sucesso!"
-msgid "Path"
-msgstr "Directório"
-
msgid "Path to CA-Certificate"
msgstr "Directorio do Certificado CA"
@@ -1919,6 +2034,9 @@ msgstr "Caminho do executável que lida com o botão de eventos"
msgid "Peak:"
msgstr "Pico:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Executar reinicialização"
@@ -1940,9 +2058,6 @@ msgstr "Pkts."
msgid "Please enter your username and password."
msgstr "Insira o seu username e password."
-msgid "Please wait: Device rebooting..."
-msgstr "Por favor aguarde: Equipamento a reiniciar..."
-
msgid "Policy"
msgstr "Política"
@@ -2221,9 +2336,6 @@ msgstr ""
"As rotas especificam através de que interfaces ou gateways podem ser "
"alcançados determinadas redes ou hosts."
-msgid "Rule #"
-msgstr "Regra #"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
"Correr uma verificação do sistema de ficheiros antes de montar um dispositivo"
@@ -2242,6 +2354,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Acesso SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Chaves-SSH"
@@ -2331,6 +2452,9 @@ msgstr "Sinal:"
msgid "Size"
msgstr "Tamanho"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "Saltar"
@@ -2605,6 +2729,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "O protocolo escolhido precisa de um dispositivo atribuído."
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2666,6 +2793,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2825,6 +2958,9 @@ msgstr "Erro Desconhecido, a password não foi alterada!"
msgid "Unmanaged"
msgstr "Não gerido"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Alterações não Guardadas"
@@ -2984,13 +3120,14 @@ msgstr "A aguardar que as mudanças sejam aplicadas..."
msgid "Waiting for command to complete..."
msgstr "A aguardar que o comando termine..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Aviso"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Aviso: Existem alterações não salvas que serão perdidas durante a "
-"reinicialização!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3225,6 +3362,30 @@ msgstr "sim"
msgid "« Back"
msgstr "« Voltar"
+#~ msgid "Delete this interface"
+#~ msgstr "Apagar esta interface"
+
+#~ msgid "Flags"
+#~ msgstr "Flags"
+
+#~ msgid "Rule #"
+#~ msgstr "Regra #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ignorar ficheiros de Hosts"
+
+#~ msgid "Path"
+#~ msgstr "Directório"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Por favor aguarde: Equipamento a reiniciar..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Aviso: Existem alterações não salvas que serão perdidas durante a "
+#~ "reinicialização!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -3860,9 +4021,6 @@ msgstr "« Voltar"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Aqui pode configurar os dispositivos wifi instalados. "
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignorar <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Independente (Ad-Hoc)"
diff --git a/modules/luci-base/po/ro/base.po b/modules/luci-base/po/ro/base.po
index 3692b7de55..cb2b7d532e 100644
--- a/modules/luci-base/po/ro/base.po
+++ b/modules/luci-base/po/ro/base.po
@@ -45,6 +45,9 @@ msgstr "Incarcarea in ultimul minut"
msgid "15 Minute Load:"
msgstr "Incarcarea in ultimele 15 minute"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Incarcarea in ultimele 5 minute"
@@ -202,6 +205,9 @@ msgstr "Adauga interfata noua.."
msgid "Additional Hosts files"
msgstr "Fisiere de tip hosts aditionale"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adresa"
@@ -265,6 +271,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Antena 1"
@@ -321,6 +333,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Disponibil"
@@ -330,6 +357,9 @@ msgstr "Pachete disponibile"
msgid "Average:"
msgstr "Medie:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -402,6 +432,11 @@ msgstr "Broadcom BCM%04x 802.11 Controller Fara Fir"
msgid "Buffered"
msgstr "Incarcat"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Butoane"
@@ -438,6 +473,9 @@ msgstr "Canal"
msgid "Check"
msgstr "Verificare"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Suma de verificare"
@@ -552,6 +590,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -625,9 +671,6 @@ msgstr ""
msgid "Delete"
msgstr "Sterge"
-msgid "Delete this interface"
-msgstr "Sterge aceasta interfata"
-
msgid "Delete this network"
msgstr "Sterge aceasta retea"
@@ -646,6 +689,12 @@ msgstr "Dispozitiv"
msgid "Device Configuration"
msgstr "Configurarea dispozitivului"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "Diagnosticuri"
@@ -686,6 +735,9 @@ msgstr "Optimizarea distantei"
msgid "Distance to farthest network member in meters."
msgstr "Distanta catre cel mai departat membru din retea in metri."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Diversitate"
@@ -747,6 +799,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr ""
@@ -855,6 +910,9 @@ msgstr "Server de log-uri extern"
msgid "External system log server port"
msgstr "Portul serverului de log-uri extern"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr ""
@@ -876,6 +934,11 @@ msgstr "Filtreaza privatele"
msgid "Filter useless"
msgstr "Filtreaza nefolositele"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Gaseste si alatura in retea"
@@ -900,9 +963,6 @@ msgstr "Versiunea de firmware"
msgid "Fixed source port for outbound DNS queries"
msgstr "Portul sursa pentru intrebarile DNS catre exterior"
-msgid "Flags"
-msgstr ""
-
msgid "Flash Firmware"
msgstr "Rescrie firmware"
@@ -934,6 +994,9 @@ msgstr "Forteaza TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forteaza TKIP si CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -973,6 +1036,12 @@ msgstr "Setari principale"
msgid "General Setup"
msgstr "Configurare generala"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -982,6 +1051,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr "Confirmarea parolei nu se potriveste cu prima, parola neschimbata !"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1081,6 +1153,9 @@ msgstr ""
msgid "IPv4 only"
msgstr "Doar IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1170,7 +1245,7 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-msgid "Ignore Hosts files"
+msgid "Ignore <code>/etc/hosts</code>"
msgstr ""
msgid "Ignore interface"
@@ -1185,6 +1260,11 @@ msgstr "Imagine"
msgid "In"
msgstr ""
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1366,6 +1446,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1387,6 +1470,9 @@ msgstr "Incarcarea medie"
msgid "Loading"
msgstr "Incarcare"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Adresa IPv4 locala"
@@ -1454,6 +1540,9 @@ msgstr ""
msgid "MAC-List"
msgstr ""
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1468,6 +1557,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Rata maxima"
@@ -1486,6 +1578,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1551,12 +1648,18 @@ msgid ""
"filesystem"
msgstr ""
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr ""
@@ -1575,6 +1678,9 @@ msgstr ""
msgid "NAS ID"
msgstr ""
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1674,6 +1780,9 @@ msgstr "Nu este conectat"
msgid "Note: Configuration files will be erased."
msgstr "Nota: fisierele de configurare vor fi sterse."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Notificare"
@@ -1796,9 +1905,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Pachetul libiwinfo este necesar !"
@@ -1826,9 +1944,6 @@ msgstr "Parola cheii private"
msgid "Password successfully changed!"
msgstr "Parola schimbata cu succes !"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "Calea catre certificatul CA"
@@ -1844,6 +1959,9 @@ msgstr "Calea catre executabilul care se ocupa de evenimentul butonului"
msgid "Peak:"
msgstr "Maxim:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Restarteaza"
@@ -1865,9 +1983,6 @@ msgstr "Packete."
msgid "Please enter your username and password."
msgstr "Introdu utilizatorul si parola."
-msgid "Please wait: Device rebooting..."
-msgstr "Asteapta: dispozitivul se restarteaza.."
-
msgid "Policy"
msgstr ""
@@ -2133,9 +2248,6 @@ msgid ""
"can be reached."
msgstr ""
-msgid "Rule #"
-msgstr "Regula #"
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2153,6 +2265,15 @@ msgstr ""
msgid "SSH Access"
msgstr "Acces SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "Cheile SSH"
@@ -2242,6 +2363,9 @@ msgstr "Semnal:"
msgid "Size"
msgstr "Marime"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2492,6 +2616,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2542,6 +2669,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2693,6 +2826,9 @@ msgstr "Eroare necunoscuta, parola neschimbata !"
msgid "Unmanaged"
msgstr "Neadministrate"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Modificari nesalvate"
@@ -2852,11 +2988,14 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Avertizare"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Atentie: exista modificari nesalvate care vor fi pierdute la restart !"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3080,6 +3219,20 @@ msgstr "da"
msgid "« Back"
msgstr "« Inapoi"
+#~ msgid "Delete this interface"
+#~ msgstr "Sterge aceasta interfata"
+
+#~ msgid "Rule #"
+#~ msgstr "Regula #"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Asteapta: dispozitivul se restarteaza.."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Atentie: exista modificari nesalvate care vor fi pierdute la restart !"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/po/ru/base.po b/modules/luci-base/po/ru/base.po
index 94fa6fb8ee..0a1cfeae87 100644
--- a/modules/luci-base/po/ru/base.po
+++ b/modules/luci-base/po/ru/base.po
@@ -48,6 +48,9 @@ msgstr "Загрузка за 1 минуту:"
msgid "15 Minute Load:"
msgstr "Загрузка за 15 минут:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Загрузка за 5 минут:"
@@ -212,6 +215,9 @@ msgstr "Добавить новый интерфейÑ..."
msgid "Additional Hosts files"
msgstr "Дополнительные файлы hosts"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "ÐдреÑ"
@@ -277,6 +283,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Ðнтенна 1"
@@ -333,6 +345,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "ДоÑтупно"
@@ -342,6 +369,9 @@ msgstr "ДоÑтупные пакеты"
msgid "Average:"
msgstr "СреднÑÑ:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -418,6 +448,11 @@ msgstr "БеÑпроводной 802.11 контроллер Broadcom BCM%04x"
msgid "Buffered"
msgstr "Буферизировано"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Кнопки"
@@ -454,6 +489,9 @@ msgstr "Канал"
msgid "Check"
msgstr "Проверить"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "ÐšÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð°Ñ Ñумма"
@@ -576,6 +614,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -653,9 +699,6 @@ msgstr ""
msgid "Delete"
msgstr "Удалить"
-msgid "Delete this interface"
-msgstr "Удалить Ñтот интерфейÑ"
-
msgid "Delete this network"
msgstr "Удалить Ñту Ñеть"
@@ -674,6 +717,12 @@ msgstr "УÑтройÑтво"
msgid "Device Configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ ÑƒÑтройÑтва"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "ДиагноÑтика"
@@ -714,6 +763,9 @@ msgstr "ÐžÐ¿Ñ‚Ð¸Ð¼Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñ€Ð°ÑÑтоÑниÑ"
msgid "Distance to farthest network member in meters."
msgstr "РаÑÑтоÑние до Ñамого удалённого Ñетевого узла в метрах."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "РазновидноÑÑ‚ÑŒ антенн"
@@ -789,6 +841,9 @@ msgstr ""
"ДинамичеÑки выделÑÑ‚ÑŒ DHCP-адреÑа клиентам. ЕÑли выключено, то будут "
"обÑлужены только клиенты Ñ Ð¿Ð¾ÑтоÑнно арендованными адреÑами."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "Метод EAP"
@@ -903,6 +958,9 @@ msgstr "Сервер ÑиÑтемного журнала"
msgid "External system log server port"
msgstr "Порт Ñервера ÑиÑтемного журнала"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "БыÑтрые кадры"
@@ -924,6 +982,11 @@ msgstr "Фильтровать чаÑтные"
msgid "Filter useless"
msgstr "Фильтровать беÑполезные"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Ðайти и приÑоединитьÑÑ Ðº Ñети"
@@ -948,9 +1011,6 @@ msgstr "ВерÑÐ¸Ñ Ð¿Ñ€Ð¾ÑˆÐ¸Ð²ÐºÐ¸"
msgid "Fixed source port for outbound DNS queries"
msgstr "ФикÑированный порт Ð´Ð»Ñ Ð¸ÑходÑщих DNS-запроÑов"
-msgid "Flags"
-msgstr "Флаги"
-
msgid "Flash Firmware"
msgstr "УÑтановить прошивку"
@@ -982,6 +1042,9 @@ msgstr "Требовать TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIP или CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "ПеренаправлÑÑ‚ÑŒ трафик DHCP"
@@ -1021,6 +1084,12 @@ msgstr "ОÑновные наÑтройки"
msgid "General Setup"
msgstr "ОÑновные наÑтройки"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Создать архив"
@@ -1030,6 +1099,9 @@ msgstr "БеÑпроводной 802.11%s контроллер"
msgid "Given password confirmation did not match, password not changed!"
msgstr "Введённые пароли не Ñовпадают, пароль не изменён!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1132,6 +1204,9 @@ msgstr "МаÑка Ñети IPv4"
msgid "IPv4 only"
msgstr "Только IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Длина префикÑа IPv4"
@@ -1231,8 +1306,8 @@ msgstr ""
"уÑтройÑтво, на котором раÑполагаетÑÑ Ñ€Ð°Ð·Ð´ÐµÐ» подкачки, работает гораздо "
"медленнее, чем <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Игнорировать файлы hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Ignore <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "Игнорировать интерфейÑ"
@@ -1246,6 +1321,11 @@ msgstr "Образ"
msgid "In"
msgstr "Ð’"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Таймаут бездейÑтвиÑ"
@@ -1431,6 +1511,9 @@ msgstr ""
"СпиÑок <abbr title=\"Domain Name System\">DNS</abbr>-Ñерверов Ð´Ð»Ñ "
"Ð¿ÐµÑ€ÐµÐ½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñов"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "СпиÑок доменов, Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… разрешены ответы RFC1918"
@@ -1452,6 +1535,9 @@ msgstr "СреднÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°"
msgid "Loading"
msgstr "Загрузка"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Локальный IPv4-адреÑ"
@@ -1526,6 +1612,9 @@ msgstr "MAC-фильтр"
msgid "MAC-List"
msgstr "СпиÑок MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "МБ/Ñ"
@@ -1540,6 +1629,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑкороÑÑ‚ÑŒ"
@@ -1558,6 +1650,11 @@ msgstr "МакÑимальное Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð³Ð¾Ñ‚Ð¾Ð²Ð½Ð¾ÑÑ‚Ð
msgid "Maximum hold time"
msgstr "МакÑимальное Ð²Ñ€ÐµÐ¼Ñ ÑƒÐ´ÐµÑ€Ð¶Ð°Ð½Ð¸Ñ"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "МакÑимальное количеÑтво арендованных адреÑов."
@@ -1626,12 +1723,18 @@ msgstr ""
"Точки Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÑÑŽÑ‚, куда в файловой ÑиÑтеме будет прикреплено "
"запоминающее уÑтройÑтво"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Опции монтированиÑ"
msgid "Mount point"
msgstr "Точка монтированиÑ"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Смонтированные файловые ÑиÑтемы"
@@ -1650,6 +1753,9 @@ msgstr "ÐÐ´Ñ€ÐµÑ Ð³Ñ€ÑƒÐ¿Ð¿Ð¾Ð²Ð¾Ð¹ передачи"
msgid "NAS ID"
msgstr "Идентификатор NAS"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1749,6 +1855,9 @@ msgstr "Ðе подключено"
msgid "Note: Configuration files will be erased."
msgstr "Примечание: конфигурационные файлы будут Ñтёрты."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "Заметка"
@@ -1879,9 +1988,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPTP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "ТребуетÑÑ Ð¿Ð°ÐºÐµÑ‚ libiwinfo!"
@@ -1909,9 +2027,6 @@ msgstr "Пароль или закрытый ключ"
msgid "Password successfully changed!"
msgstr "Пароль уÑпешно изменён!"
-msgid "Path"
-msgstr "Путь"
-
msgid "Path to CA-Certificate"
msgstr "Путь к центру Ñертификации"
@@ -1927,6 +2042,9 @@ msgstr "Путь к программе, обрабатывающей нажатÐ
msgid "Peak:"
msgstr "ПиковаÑ:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Выполнить перезагрузку"
@@ -1948,9 +2066,6 @@ msgstr "Пакетов."
msgid "Please enter your username and password."
msgstr "ПожалуйÑта, введите логин и пароль."
-msgid "Please wait: Device rebooting..."
-msgstr "ПожалуйÑта подождите: уÑтройÑтво перезагружаетÑÑ..."
-
msgid "Policy"
msgstr "Политика"
@@ -2232,9 +2347,6 @@ msgstr ""
"ÐœÐ°Ñ€ÑˆÑ€ÑƒÑ‚Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñлужит Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñ‡ÐµÑ€ÐµÐ· какой Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¸ шлюз можно "
"доÑтичть определённого хоÑта или Ñети."
-msgid "Rule #"
-msgstr "Правило №"
-
msgid "Run a filesystem check before mounting the device"
msgstr "ПроверÑÑ‚ÑŒ файловую ÑиÑтему перед монтированием уÑтройÑтва"
@@ -2252,6 +2364,15 @@ msgstr ""
msgid "SSH Access"
msgstr "ДоÑтуп по SSH"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH-ключи"
@@ -2343,6 +2464,9 @@ msgstr "Сигнал:"
msgid "Size"
msgstr "Размер"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "ПропуÑтить"
@@ -2633,6 +2757,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Ð”Ð»Ñ Ð²Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð¾Ð³Ð¾ протокола необходимо задать уÑтройÑтво"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2693,6 +2820,12 @@ msgid "This IPv4 address of the relay"
msgstr "IPv4-Ð°Ð´Ñ€ÐµÑ Ñ€ÐµÑ‚Ñ€Ð°Ð½ÑлÑтора"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2860,6 +2993,9 @@ msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°, пароль не был измен
msgid "Unmanaged"
msgstr "ÐеуправлÑемый"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "ÐепринÑтые изменениÑ"
@@ -3027,13 +3163,14 @@ msgstr "Ожидание Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹..."
msgid "Waiting for command to complete..."
msgstr "Ожидание Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "Внимание"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
-"Внимание: еÑÑ‚ÑŒ неÑохранённые изменениÑ, которые потерÑÑŽÑ‚ÑÑ Ð¿Ð¾Ñле "
-"перезагрузки!"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3267,6 +3404,30 @@ msgstr "да"
msgid "« Back"
msgstr "« Ðазад"
+#~ msgid "Delete this interface"
+#~ msgstr "Удалить Ñтот интерфейÑ"
+
+#~ msgid "Flags"
+#~ msgstr "Флаги"
+
+#~ msgid "Rule #"
+#~ msgstr "Правило №"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Игнорировать файлы hosts"
+
+#~ msgid "Path"
+#~ msgstr "Путь"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "ПожалуйÑта подождите: уÑтройÑтво перезагружаетÑÑ..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Внимание: еÑÑ‚ÑŒ неÑохранённые изменениÑ, которые потерÑÑŽÑ‚ÑÑ Ð¿Ð¾Ñле "
+#~ "перезагрузки!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
@@ -4101,9 +4262,6 @@ msgstr "« Ðазад"
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "ЗдеÑÑŒ вы можете наÑтроить уÑтановленные Wi-Fi уÑтройÑтва."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Ignore <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "ÐезаыиÑÐ¸Ð¼Ð°Ñ (Ad-Hoc)"
diff --git a/modules/luci-base/po/sk/base.po b/modules/luci-base/po/sk/base.po
index d943ccb891..a536bb19f3 100644
--- a/modules/luci-base/po/sk/base.po
+++ b/modules/luci-base/po/sk/base.po
@@ -41,6 +41,9 @@ msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr ""
@@ -190,6 +193,9 @@ msgstr ""
msgid "Additional Hosts files"
msgstr ""
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr ""
@@ -250,6 +256,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr ""
@@ -306,6 +318,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr ""
@@ -315,6 +342,9 @@ msgstr ""
msgid "Average:"
msgstr ""
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr ""
@@ -387,6 +417,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr ""
@@ -423,6 +458,9 @@ msgstr ""
msgid "Check"
msgstr ""
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -534,6 +572,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -607,9 +653,6 @@ msgstr ""
msgid "Delete"
msgstr ""
-msgid "Delete this interface"
-msgstr ""
-
msgid "Delete this network"
msgstr ""
@@ -628,6 +671,12 @@ msgstr ""
msgid "Device Configuration"
msgstr ""
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr ""
@@ -666,6 +715,9 @@ msgstr ""
msgid "Distance to farthest network member in meters."
msgstr ""
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr ""
@@ -727,6 +779,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr ""
@@ -835,6 +890,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr ""
@@ -856,6 +914,11 @@ msgstr ""
msgid "Filter useless"
msgstr ""
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -880,9 +943,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr ""
-
msgid "Flash Firmware"
msgstr ""
@@ -913,6 +973,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -952,6 +1015,12 @@ msgstr ""
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -961,6 +1030,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1058,6 +1130,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1147,7 +1222,7 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-msgid "Ignore Hosts files"
+msgid "Ignore <code>/etc/hosts</code>"
msgstr ""
msgid "Ignore interface"
@@ -1162,6 +1237,11 @@ msgstr ""
msgid "In"
msgstr ""
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1340,6 +1420,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1361,6 +1444,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1428,6 +1514,9 @@ msgstr ""
msgid "MAC-List"
msgstr ""
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1442,6 +1531,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr ""
@@ -1460,6 +1552,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1525,12 +1622,18 @@ msgid ""
"filesystem"
msgstr ""
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr ""
@@ -1549,6 +1652,9 @@ msgstr ""
msgid "NAS ID"
msgstr ""
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1648,6 +1754,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1770,9 +1879,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1800,9 +1918,6 @@ msgstr ""
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr ""
@@ -1818,6 +1933,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr ""
@@ -1839,9 +1957,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr ""
-msgid "Please wait: Device rebooting..."
-msgstr ""
-
msgid "Policy"
msgstr ""
@@ -2105,9 +2220,6 @@ msgid ""
"can be reached."
msgstr ""
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2125,6 +2237,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2213,6 +2334,9 @@ msgstr ""
msgid "Size"
msgstr ""
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2463,6 +2587,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2511,6 +2638,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2662,6 +2795,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr ""
@@ -2819,10 +2955,13 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
diff --git a/modules/luci-base/po/sv/base.po b/modules/luci-base/po/sv/base.po
index 86fa224e79..1ac3f6c7a5 100644
--- a/modules/luci-base/po/sv/base.po
+++ b/modules/luci-base/po/sv/base.po
@@ -44,6 +44,9 @@ msgstr "Belastning senaste minuten:"
msgid "15 Minute Load:"
msgstr "Belastning senaste 15 minutrarna:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "Belastning senaste 5 minutrarna:"
@@ -196,6 +199,9 @@ msgstr ""
msgid "Additional Hosts files"
msgstr ""
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr ""
@@ -256,6 +262,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr ""
@@ -312,6 +324,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr ""
@@ -321,6 +348,9 @@ msgstr ""
msgid "Average:"
msgstr ""
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr ""
@@ -393,6 +423,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr ""
@@ -429,6 +464,9 @@ msgstr ""
msgid "Check"
msgstr ""
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -540,6 +578,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -613,9 +659,6 @@ msgstr ""
msgid "Delete"
msgstr ""
-msgid "Delete this interface"
-msgstr ""
-
msgid "Delete this network"
msgstr ""
@@ -634,6 +677,12 @@ msgstr ""
msgid "Device Configuration"
msgstr ""
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr ""
@@ -672,6 +721,9 @@ msgstr ""
msgid "Distance to farthest network member in meters."
msgstr ""
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr ""
@@ -733,6 +785,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr ""
@@ -841,6 +896,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr ""
@@ -862,6 +920,11 @@ msgstr ""
msgid "Filter useless"
msgstr ""
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -886,9 +949,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr ""
-
msgid "Flash Firmware"
msgstr ""
@@ -919,6 +979,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -958,6 +1021,12 @@ msgstr ""
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -967,6 +1036,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1064,6 +1136,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1153,7 +1228,7 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-msgid "Ignore Hosts files"
+msgid "Ignore <code>/etc/hosts</code>"
msgstr ""
msgid "Ignore interface"
@@ -1168,6 +1243,11 @@ msgstr ""
msgid "In"
msgstr ""
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1346,6 +1426,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1367,6 +1450,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1434,6 +1520,9 @@ msgstr ""
msgid "MAC-List"
msgstr ""
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1448,6 +1537,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr ""
@@ -1466,6 +1558,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1531,12 +1628,18 @@ msgid ""
"filesystem"
msgstr ""
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr ""
@@ -1555,6 +1658,9 @@ msgstr ""
msgid "NAS ID"
msgstr ""
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1654,6 +1760,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1776,9 +1885,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1806,9 +1924,6 @@ msgstr ""
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr ""
@@ -1824,6 +1939,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr ""
@@ -1845,9 +1963,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr ""
-msgid "Please wait: Device rebooting..."
-msgstr ""
-
msgid "Policy"
msgstr ""
@@ -2111,9 +2226,6 @@ msgid ""
"can be reached."
msgstr ""
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2131,6 +2243,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2219,6 +2340,9 @@ msgstr ""
msgid "Size"
msgstr ""
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2469,6 +2593,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2517,6 +2644,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2668,6 +2801,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr ""
@@ -2825,10 +2961,13 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
diff --git a/modules/luci-base/po/templates/base.pot b/modules/luci-base/po/templates/base.pot
index 21ec6571ee..baa17773f2 100644
--- a/modules/luci-base/po/templates/base.pot
+++ b/modules/luci-base/po/templates/base.pot
@@ -34,6 +34,9 @@ msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr ""
@@ -183,6 +186,9 @@ msgstr ""
msgid "Additional Hosts files"
msgstr ""
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr ""
@@ -243,6 +249,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr ""
@@ -299,6 +311,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr ""
@@ -308,6 +335,9 @@ msgstr ""
msgid "Average:"
msgstr ""
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr ""
@@ -380,6 +410,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr ""
@@ -416,6 +451,9 @@ msgstr ""
msgid "Check"
msgstr ""
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -527,6 +565,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -600,9 +646,6 @@ msgstr ""
msgid "Delete"
msgstr ""
-msgid "Delete this interface"
-msgstr ""
-
msgid "Delete this network"
msgstr ""
@@ -621,6 +664,12 @@ msgstr ""
msgid "Device Configuration"
msgstr ""
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr ""
@@ -659,6 +708,9 @@ msgstr ""
msgid "Distance to farthest network member in meters."
msgstr ""
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr ""
@@ -720,12 +772,20 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr ""
msgid "Edit"
msgstr ""
+msgid ""
+"Edit the raw configuration data above to fix any error and hit \"Save\" to "
+"reload the page."
+msgstr ""
+
msgid "Edit this interface"
msgstr ""
@@ -823,6 +883,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr ""
@@ -844,6 +907,11 @@ msgstr ""
msgid "Filter useless"
msgstr ""
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -868,9 +936,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr ""
-
msgid "Flash Firmware"
msgstr ""
@@ -901,6 +966,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -940,6 +1008,12 @@ msgstr ""
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -949,6 +1023,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1046,6 +1123,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1135,7 +1215,7 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-msgid "Ignore Hosts files"
+msgid "Ignore <code>/etc/hosts</code>"
msgstr ""
msgid "Ignore interface"
@@ -1150,6 +1230,11 @@ msgstr ""
msgid "In"
msgstr ""
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1328,6 +1413,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1349,6 +1437,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1416,6 +1507,9 @@ msgstr ""
msgid "MAC-List"
msgstr ""
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1430,6 +1524,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr ""
@@ -1448,6 +1545,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1513,12 +1615,18 @@ msgid ""
"filesystem"
msgstr ""
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr ""
@@ -1537,6 +1645,9 @@ msgstr ""
msgid "NAS ID"
msgstr ""
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1636,6 +1747,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1758,9 +1872,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1788,9 +1911,6 @@ msgstr ""
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr ""
@@ -1806,6 +1926,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr ""
@@ -1827,9 +1950,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr ""
-msgid "Please wait: Device rebooting..."
-msgstr ""
-
msgid "Policy"
msgstr ""
@@ -2093,9 +2213,6 @@ msgid ""
"can be reached."
msgstr ""
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2113,6 +2230,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2201,6 +2327,9 @@ msgstr ""
msgid "Size"
msgstr ""
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2394,6 +2523,9 @@ msgid ""
"code> and <code>_</code>"
msgstr ""
+msgid "The configuration file could not be loaded due to the following error:"
+msgstr ""
+
msgid ""
"The device file of the memory or partition (<abbr title=\"for example\">e.g."
"</abbr> <code>/dev/sda1</code>)"
@@ -2448,6 +2580,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2496,6 +2631,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2647,6 +2788,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr ""
@@ -2804,10 +2948,13 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
diff --git a/modules/luci-base/po/tr/base.po b/modules/luci-base/po/tr/base.po
index 1bf53aa576..6a5a0b212f 100644
--- a/modules/luci-base/po/tr/base.po
+++ b/modules/luci-base/po/tr/base.po
@@ -44,6 +44,9 @@ msgstr "1 Dakikalık Yük:"
msgid "15 Minute Load:"
msgstr "15 Dakikalık Yük:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "5 Dakikalık Yük:"
@@ -201,6 +204,9 @@ msgstr "Yeni arabirim ekle..."
msgid "Additional Hosts files"
msgstr ""
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "Adresler"
@@ -263,6 +269,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "1. Anten"
@@ -319,6 +331,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Kullanılabilir"
@@ -328,6 +355,9 @@ msgstr "Kullanılabilir Paketler"
msgid "Average:"
msgstr "Ortalama:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr ""
@@ -400,6 +430,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr ""
@@ -436,6 +471,9 @@ msgstr ""
msgid "Check"
msgstr ""
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -547,6 +585,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -620,9 +666,6 @@ msgstr ""
msgid "Delete"
msgstr ""
-msgid "Delete this interface"
-msgstr ""
-
msgid "Delete this network"
msgstr ""
@@ -641,6 +684,12 @@ msgstr ""
msgid "Device Configuration"
msgstr ""
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr ""
@@ -679,6 +728,9 @@ msgstr ""
msgid "Distance to farthest network member in meters."
msgstr ""
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr ""
@@ -740,6 +792,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr ""
@@ -848,6 +903,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr ""
@@ -869,6 +927,11 @@ msgstr ""
msgid "Filter useless"
msgstr ""
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -893,9 +956,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr ""
-
msgid "Flash Firmware"
msgstr ""
@@ -926,6 +986,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -965,6 +1028,12 @@ msgstr ""
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -974,6 +1043,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1071,6 +1143,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1160,7 +1235,7 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-msgid "Ignore Hosts files"
+msgid "Ignore <code>/etc/hosts</code>"
msgstr ""
msgid "Ignore interface"
@@ -1175,6 +1250,11 @@ msgstr ""
msgid "In"
msgstr ""
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1353,6 +1433,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1374,6 +1457,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1441,6 +1527,9 @@ msgstr ""
msgid "MAC-List"
msgstr ""
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1455,6 +1544,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr ""
@@ -1473,6 +1565,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr ""
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1538,12 +1635,18 @@ msgid ""
"filesystem"
msgstr ""
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr ""
@@ -1562,6 +1665,9 @@ msgstr ""
msgid "NAS ID"
msgstr ""
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1661,6 +1767,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1783,9 +1892,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1813,9 +1931,6 @@ msgstr ""
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr ""
@@ -1831,6 +1946,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr ""
@@ -1852,9 +1970,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr ""
-msgid "Please wait: Device rebooting..."
-msgstr ""
-
msgid "Policy"
msgstr ""
@@ -2118,9 +2233,6 @@ msgid ""
"can be reached."
msgstr ""
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2138,6 +2250,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2226,6 +2347,9 @@ msgstr ""
msgid "Size"
msgstr ""
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2476,6 +2600,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2524,6 +2651,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2675,6 +2808,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr ""
@@ -2832,10 +2968,13 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
diff --git a/modules/luci-base/po/uk/base.po b/modules/luci-base/po/uk/base.po
index c5483221c2..df2964a7d9 100644
--- a/modules/luci-base/po/uk/base.po
+++ b/modules/luci-base/po/uk/base.po
@@ -45,6 +45,9 @@ msgstr "ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð° 1 хвилину:"
msgid "15 Minute Load:"
msgstr "ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð° 15 хвилин:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð° 5 хвилин:"
@@ -222,6 +225,9 @@ msgstr "Додати новий інтерфейÑ..."
msgid "Additional Hosts files"
msgstr "Додаткові файли hosts"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "ÐдреÑа"
@@ -287,6 +293,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "Ðнтена 1"
@@ -343,6 +355,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "ДоÑтупно"
@@ -352,6 +379,9 @@ msgstr "ДоÑтупні пакети"
msgid "Average:"
msgstr "Середнє значеннÑ:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -427,6 +457,11 @@ msgstr "Бездротовий 802.11 контролер Broadcom BCM%04x"
msgid "Buffered"
msgstr "Буферизовано"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "Кнопки"
@@ -463,6 +498,9 @@ msgstr "Канал"
msgid "Check"
msgstr "Перевірити"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Контрольна Ñума"
@@ -585,6 +623,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -663,9 +709,6 @@ msgstr ""
msgid "Delete"
msgstr "Видалити"
-msgid "Delete this interface"
-msgstr "Видалити цей інтерфейÑ"
-
msgid "Delete this network"
msgstr "Видалити цю мережу"
@@ -684,6 +727,12 @@ msgstr "ПриÑтрій"
msgid "Device Configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¸Ñтрою"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "ДіагноÑтика"
@@ -724,6 +773,9 @@ msgstr "ÐžÐ¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð·Ð° відÑтанню"
msgid "Distance to farthest network member in meters."
msgstr "ВідÑтань до найвіддаленішого вузла мережі в метрах."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "РізновидніÑÑ‚ÑŒ"
@@ -801,6 +853,9 @@ msgstr ""
"Динамічне Ð²Ð¸Ð´Ñ–Ð»ÐµÐ½Ð½Ñ DHCP-Ð°Ð´Ñ€ÐµÑ Ð´Ð»Ñ ÐºÐ»Ñ–Ñ”Ð½Ñ‚Ñ–Ð². Якщо вимкнути, будуть "
"обÑлуговуватиÑÑ Ñ‚Ñ–Ð»ÑŒÐºÐ¸ клієнти, Ñкі мають Ñтатичні оренди."
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-Метод"
@@ -911,6 +966,9 @@ msgstr "Зовнішній Ñервер ÑиÑтемного журналу"
msgid "External system log server port"
msgstr "Порт зовнішнього Ñервера ÑиÑтемного журналу"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Швидкі фрейми"
@@ -932,6 +990,11 @@ msgstr "Фільтрувати приватні"
msgid "Filter useless"
msgstr "Фільтрувати непридатні"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "Знайти мережу й приєднатиÑÑ"
@@ -956,9 +1019,6 @@ msgstr "ВерÑÑ–Ñ Ð¿Ñ€Ð¾ÑˆÐ¸Ð²ÐºÐ¸"
msgid "Fixed source port for outbound DNS queries"
msgstr "ФікÑований порт Ð´Ð»Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… DNS-запитів"
-msgid "Flags"
-msgstr "Позначки"
-
msgid "Flash Firmware"
msgstr "Заливаємо прошивку"
@@ -989,6 +1049,9 @@ msgstr "ПримуÑово TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "ПримуÑово TKIP та CCMP (AES)"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "СпрÑмовувати DHCP-трафік"
@@ -1028,6 +1091,12 @@ msgstr "Загальні наÑтройки"
msgid "General Setup"
msgstr "Загальні наÑтройки"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "Cтворити архів"
@@ -1037,6 +1106,9 @@ msgstr "Бездротовий 802.11%s контролер"
msgid "Given password confirmation did not match, password not changed!"
msgstr "ОÑкільки пароль Ñ– Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð½Ðµ Ñпівпадають, то пароль не змінено!"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1140,6 +1212,9 @@ msgstr "МаÑка мережі IPv4"
msgid "IPv4 only"
msgstr "Тільки IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "Довжина префікÑа IPv4"
@@ -1239,8 +1314,8 @@ msgstr ""
"Ñвоп-приÑтрої не можуть бути доÑтупні з такою виÑокою швидкіÑÑ‚ÑŽ, Ñк <abbr "
"title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr "Ігнорувати файли hosts"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr ""
msgid "Ignore interface"
msgstr "Ігнорувати интерфейÑ"
@@ -1254,6 +1329,11 @@ msgstr "Образ"
msgid "In"
msgstr "Ð’Ñ…."
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "Тайм-аут бездіÑльноÑÑ‚Ñ–"
@@ -1438,6 +1518,9 @@ msgstr ""
"СпиÑок <abbr title=\"Domain Name System\">DNS</abbr>-Ñерверів, до Ñких "
"переÑилати запити"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "СпиÑок доменів, Ð´Ð»Ñ Ñких дозволені RFC1918-відповіді"
@@ -1461,6 +1544,9 @@ msgstr "Середнє навантаженнÑ"
msgid "Loading"
msgstr "ЗавантаженнÑ"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "Локальна адреÑа IPv4"
@@ -1535,6 +1621,9 @@ msgstr "MAC-фільтр"
msgid "MAC-List"
msgstr "MAC-ÑпиÑок"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MБ/Ñ"
@@ -1549,6 +1638,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "МакÑимальна швидкіÑÑ‚ÑŒ"
@@ -1567,6 +1659,11 @@ msgstr "МакÑимальний Ñ‡Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð³Ð¾Ñ‚Ð¾Ð²Ð½Ð¾ÑÑ‚Ñ
msgid "Maximum hold time"
msgstr "МакÑимальний Ñ‡Ð°Ñ ÑƒÑ‚Ñ€Ð¸Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "МакÑимальна кількіÑÑ‚ÑŒ орендованих адреÑ."
@@ -1634,12 +1731,18 @@ msgstr ""
"Точки Ð¼Ð¾Ð½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð°ÑŽÑ‚ÑŒ, до Ñкої точки приÑтрою пам'ÑÑ‚Ñ– буде прикріплена "
"файлова ÑиÑтема"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "Опції монтуваннÑ"
msgid "Mount point"
msgstr "Точка монтуваннÑ"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Змонтовані файлові ÑиÑтеми"
@@ -1658,6 +1761,9 @@ msgstr "ÐдреÑа багатоадреÑного потоку"
msgid "NAS ID"
msgstr "Ідентифікатор NAS"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1757,6 +1863,9 @@ msgstr "Ðе підключено"
msgid "Note: Configuration files will be erased."
msgstr "Примітка: конфігураційні файли будуть видалені."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "ПопередженнÑ"
@@ -1890,9 +1999,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "Потрібен пакет libiwinfo!"
@@ -1920,9 +2038,6 @@ msgstr "Пароль закритого ключа"
msgid "Password successfully changed!"
msgstr "Пароль уÑпішно змінено!"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "ШлÑÑ… до центру Ñертифікції"
@@ -1938,6 +2053,9 @@ msgstr "ШлÑÑ… до програми, Ñка оброблÑÑ” натиÑкан
msgid "Peak:"
msgstr "Пік:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Виконати перезавантаженнÑ"
@@ -1959,9 +2077,6 @@ msgstr "пакетів"
msgid "Please enter your username and password."
msgstr "Введіть ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача Ñ– пароль"
-msgid "Please wait: Device rebooting..."
-msgstr "Зачекайте. ПриÑтрій перезавантажуєтьÑÑ..."
-
msgid "Policy"
msgstr "Політика"
@@ -2245,9 +2360,6 @@ msgstr ""
"Маршрути визначають через Ñкий Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ñ– шлюз можна доÑÑгнути певного "
"вузла або мережі."
-msgid "Rule #"
-msgstr "Правило #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "Виконати перевірку файлової ÑиÑтеми перед монтуваннÑм приÑтрою"
@@ -2265,6 +2377,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSH-доÑтуп"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH-ключі"
@@ -2356,6 +2477,9 @@ msgstr "Сигнал:"
msgid "Size"
msgstr "Розмір"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "ПропуÑтити"
@@ -2647,6 +2771,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "Обраний протокол потребує призначених приÑтроїв"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2708,6 +2835,12 @@ msgid "This IPv4 address of the relay"
msgstr "Це IPv4-адреÑа ретранÑлÑтора"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2876,6 +3009,9 @@ msgstr "Ðевідома помилка, пароль не змінивÑÑ!"
msgid "Unmanaged"
msgstr "Ðекерований"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Ðезбережені зміни"
@@ -3042,11 +3178,14 @@ msgstr "Очікуємо, доки зміни наберуть чинноÑÑ‚Ñ–.
msgid "Waiting for command to complete..."
msgstr "Очікуємо Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "ЗаÑтереженнÑ"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Увага: Є незбережені зміни, Ñкі будуть втрачені при перезавантаженні!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3280,6 +3419,26 @@ msgstr "так"
msgid "« Back"
msgstr "« Ðазад"
+#~ msgid "Delete this interface"
+#~ msgstr "Видалити цей інтерфейÑ"
+
+#~ msgid "Flags"
+#~ msgstr "Позначки"
+
+#~ msgid "Rule #"
+#~ msgstr "Правило #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "Ігнорувати файли hosts"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Зачекайте. ПриÑтрій перезавантажуєтьÑÑ..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr ""
+#~ "Увага: Є незбережені зміни, Ñкі будуть втрачені при перезавантаженні!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/po/vi/base.po b/modules/luci-base/po/vi/base.po
index d81be16eb5..56abb3c058 100644
--- a/modules/luci-base/po/vi/base.po
+++ b/modules/luci-base/po/vi/base.po
@@ -46,6 +46,9 @@ msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr ""
@@ -197,6 +200,9 @@ msgstr ""
msgid "Additional Hosts files"
msgstr ""
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr ""
@@ -257,6 +263,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr ""
@@ -313,6 +325,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "Sẵn có"
@@ -322,6 +349,9 @@ msgstr ""
msgid "Average:"
msgstr ""
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr ""
@@ -394,6 +424,11 @@ msgstr ""
msgid "Buffered"
msgstr ""
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr ""
@@ -430,6 +465,9 @@ msgstr "Kênh"
msgid "Check"
msgstr ""
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -541,6 +579,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -616,9 +662,6 @@ msgstr ""
msgid "Delete"
msgstr "Xóa"
-msgid "Delete this interface"
-msgstr ""
-
msgid "Delete this network"
msgstr ""
@@ -637,6 +680,12 @@ msgstr "Công cụ"
msgid "Device Configuration"
msgstr ""
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr ""
@@ -675,6 +724,9 @@ msgstr "Khoảng cách tối ưu"
msgid "Distance to farthest network member in meters."
msgstr "Khoảng cách tới thành viên xa nhất trong mạng lưới tính bằng mét"
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "Tính đa dạng"
@@ -745,6 +797,9 @@ msgid ""
"having static leases will be served."
msgstr ""
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-Method"
@@ -853,6 +908,9 @@ msgstr ""
msgid "External system log server port"
msgstr ""
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "Khung nhanh"
@@ -874,6 +932,11 @@ msgstr "Filter private"
msgid "Filter useless"
msgstr "Lá»c không hữu dụng"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr ""
@@ -898,9 +961,6 @@ msgstr ""
msgid "Fixed source port for outbound DNS queries"
msgstr ""
-msgid "Flags"
-msgstr "Cá»"
-
msgid "Flash Firmware"
msgstr "Phần cứng flash"
@@ -931,6 +991,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr ""
@@ -970,6 +1033,12 @@ msgstr ""
msgid "General Setup"
msgstr ""
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr ""
@@ -979,6 +1048,9 @@ msgstr ""
msgid "Given password confirmation did not match, password not changed!"
msgstr ""
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1078,6 +1150,9 @@ msgstr ""
msgid "IPv4 only"
msgstr ""
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr ""
@@ -1172,8 +1247,8 @@ msgstr ""
"một quá trình rất chậm vì một thiết bị swap không thể được truy cập với "
"datarates cao hơn của <abbr title=\"Random Access Memory\">RAM</abbr>."
-msgid "Ignore Hosts files"
-msgstr ""
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "Lá» Ä‘i <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "LỠđi giao diện"
@@ -1187,6 +1262,11 @@ msgstr ""
msgid "In"
msgstr "Trong"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr ""
@@ -1368,6 +1448,9 @@ msgid ""
"requests to"
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1389,6 +1472,9 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr ""
@@ -1456,6 +1542,9 @@ msgstr "Lá»c MAC"
msgid "MAC-List"
msgstr "Danh sách MAC"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr ""
@@ -1470,6 +1559,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "Mức cao nhất"
@@ -1488,6 +1580,11 @@ msgstr ""
msgid "Maximum hold time"
msgstr "Mức cao nhất"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr ""
@@ -1555,12 +1652,18 @@ msgstr ""
"Số điểm lắp xác định tại một điểm mà ở đó bộ nhớ sẽ được gắn vào hệ thống "
"tập tin"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr ""
msgid "Mount point"
msgstr ""
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "Lắp tập tin hệ thống"
@@ -1579,6 +1682,9 @@ msgstr ""
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1678,6 +1784,9 @@ msgstr ""
msgid "Note: Configuration files will be erased."
msgstr ""
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr ""
@@ -1806,9 +1915,18 @@ msgstr ""
msgid "PPPoE"
msgstr ""
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr ""
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr ""
@@ -1836,9 +1954,6 @@ msgstr "Mật mã của private key"
msgid "Password successfully changed!"
msgstr ""
-msgid "Path"
-msgstr "ÄÆ°á»ng dẫn"
-
msgid "Path to CA-Certificate"
msgstr "ÄÆ°á»ng dẫn tá»›i CA-Certificate"
@@ -1854,6 +1969,9 @@ msgstr ""
msgid "Peak:"
msgstr ""
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "Tiến hành reboot"
@@ -1875,9 +1993,6 @@ msgstr ""
msgid "Please enter your username and password."
msgstr "Nhập tên và mật mã"
-msgid "Please wait: Device rebooting..."
-msgstr "Xin chá»: Công cụ Ä‘ang reboot"
-
msgid "Policy"
msgstr "Chính sách"
@@ -2145,9 +2260,6 @@ msgstr ""
"Routes chỉ định trên giao diện và cổng một host nhất định hay network được "
"tiếp cận."
-msgid "Rule #"
-msgstr ""
-
msgid "Run a filesystem check before mounting the device"
msgstr ""
@@ -2165,6 +2277,15 @@ msgstr ""
msgid "SSH Access"
msgstr ""
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr ""
@@ -2253,6 +2374,9 @@ msgstr ""
msgid "Size"
msgstr "Dung lượng "
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr ""
@@ -2507,6 +2631,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr ""
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2561,6 +2688,12 @@ msgid "This IPv4 address of the relay"
msgstr ""
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2717,6 +2850,9 @@ msgstr ""
msgid "Unmanaged"
msgstr ""
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "Thay đổi không lưu"
@@ -2874,11 +3010,14 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr ""
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr ""
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "Cảnh báo: Các thay đổi chưa lưu sẽ bị mất trong khi khởi động lại!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3109,6 +3248,19 @@ msgstr ""
msgid "« Back"
msgstr ""
+#~ msgid "Flags"
+#~ msgstr "Cá»"
+
+#~ msgid "Path"
+#~ msgstr "ÄÆ°á»ng dẫn"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "Xin chá»: Công cụ Ä‘ang reboot"
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "Cảnh báo: Các thay đổi chưa lưu sẽ bị mất trong khi khởi động lại!"
+
#~ msgid "Frequency Hopping"
#~ msgstr "Tần số Hopping"
@@ -3685,9 +3837,6 @@ msgstr ""
#~ msgid "Here you can configure installed wifi devices."
#~ msgstr "Ở đây bạn có thể định cấu hình của công cụ wifi được cài đặt."
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "Lá» Ä‘i <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "Äá»™c lập (Ad-Hoc)"
diff --git a/modules/luci-base/po/zh-cn/base.po b/modules/luci-base/po/zh-cn/base.po
index 72bf937952..d3b4034b35 100644
--- a/modules/luci-base/po/zh-cn/base.po
+++ b/modules/luci-base/po/zh-cn/base.po
@@ -45,6 +45,9 @@ msgstr "1分钟负载:"
msgid "15 Minute Load:"
msgstr "15分钟负载:"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "5分钟负载:"
@@ -200,6 +203,9 @@ msgstr "添加新接å£..."
msgid "Additional Hosts files"
msgstr "é¢å¤–çš„HOSTS文件"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "地å€"
@@ -262,6 +268,12 @@ msgstr "广播的DNS域å"
msgid "Announced DNS servers"
msgstr "广播的DNSæœåŠ¡å™¨"
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "天线 1"
@@ -318,6 +330,21 @@ msgstr "自动"
msgid "Automatic Homenet (HNCP)"
msgstr "自动家庭网络(HNCP)"
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "å¯ç”¨"
@@ -327,6 +354,9 @@ msgstr "å¯ç”¨è½¯ä»¶åŒ…"
msgid "Average:"
msgstr "å¹³å‡:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -401,6 +431,11 @@ msgstr "Broadcom BCM%04x 802.11 无线网å¡"
msgid "Buffered"
msgstr "已缓冲"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "按键"
@@ -437,6 +472,9 @@ msgstr "ä¿¡é“"
msgid "Check"
msgstr "检查"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "校验值"
@@ -548,6 +586,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr "自定义分é…çš„IPv6å‰ç¼€"
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr "自定义<abbr title=\"Light Emitting Diode\">LED</abbr>的活动状æ€ã€‚"
@@ -623,9 +669,6 @@ msgstr ""
msgid "Delete"
msgstr "删除"
-msgid "Delete this interface"
-msgstr "删除此接å£"
-
msgid "Delete this network"
msgstr "删除此网络"
@@ -644,6 +687,12 @@ msgstr "设备"
msgid "Device Configuration"
msgstr "设备é…ç½®"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "网络诊断"
@@ -683,6 +732,9 @@ msgstr "è·ç¦»ä¼˜åŒ–"
msgid "Distance to farthest network member in meters."
msgstr "最远客户端的è·ç¦»(ç±³)。"
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "分集"
@@ -746,6 +798,9 @@ msgid ""
"having static leases will be served."
msgstr "动æ€åˆ†é…DHCP地å€ã€‚如果ç¦ç”¨ï¼Œåˆ™åªèƒ½ä¸ºé™æ€ç§Ÿç”¨è¡¨ä¸­çš„客户端æ供网络æœåŠ¡ã€‚"
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAP-Method"
@@ -855,6 +910,9 @@ msgstr "远程logæœåŠ¡å™¨"
msgid "External system log server port"
msgstr "远程logæœåŠ¡å™¨ç«¯å£"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "快速帧"
@@ -876,6 +934,11 @@ msgstr "过滤本地包"
msgid "Filter useless"
msgstr "过滤无用包"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "æœç´¢å¹¶åŠ å…¥ç½‘络"
@@ -900,9 +963,6 @@ msgstr "固件版本"
msgid "Fixed source port for outbound DNS queries"
msgstr "指定的DNS查询æºç«¯å£"
-msgid "Flags"
-msgstr "标识"
-
msgid "Flash Firmware"
msgstr "刷新固件"
@@ -933,6 +993,9 @@ msgstr "强制使用TKIP加密"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIPå’ŒCCMP(AES)æ··åˆåŠ å¯†"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "转å‘DHCPæ•°æ®åŒ…"
@@ -972,6 +1035,12 @@ msgstr "基本设置"
msgid "General Setup"
msgstr "基本设置"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "生æˆå¤‡ä»½"
@@ -981,6 +1050,9 @@ msgstr "Generic 802.11%s 无线网å¡"
msgid "Given password confirmation did not match, password not changed!"
msgstr "由于密ç éªŒè¯ä¸åŒ¹é…,密ç æ²¡æœ‰æ›´æ”¹ï¼"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr "全局网络选项"
@@ -1078,6 +1150,9 @@ msgstr "IPv4å­ç½‘掩ç "
msgid "IPv4 only"
msgstr "ä»…IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "IPv4地å€å‰ç¼€é•¿åº¦"
@@ -1167,8 +1242,8 @@ msgid ""
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr "如果物ç†å†…å­˜ä¸è¶³ï¼Œé—²ç½®æ•°æ®å¯è‡ªåŠ¨ç§»åˆ°äº¤æ¢åŒºæš‚存,以æ高å¯ç”¨å†…存。"
-msgid "Ignore Hosts files"
-msgstr "忽略HOSTS文件"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "忽略 <code>/etc/hosts</code>"
msgid "Ignore interface"
msgstr "关闭DHCP"
@@ -1182,6 +1257,11 @@ msgstr "固件文件"
msgid "In"
msgstr "å…¥å£"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "活动超时"
@@ -1361,6 +1441,9 @@ msgid ""
"requests to"
msgstr "将指定的域åDNS解æžè½¬å‘到指定的DNSæœåŠ¡å™¨ï¼ˆæŒ‰ç…§ç¤ºä¾‹å¡«å†™ï¼‰"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "å…许RFC1918å“应的域å列表"
@@ -1382,6 +1465,9 @@ msgstr "å¹³å‡è´Ÿè½½"
msgid "Loading"
msgstr "加载中"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "本地IPv4地å€"
@@ -1450,6 +1536,9 @@ msgstr "MAC-过滤"
msgid "MAC-List"
msgstr "MAC-列表"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1464,6 +1553,9 @@ msgid ""
"below:"
msgstr "请确认你已ç»å¤åˆ¶è¿‡æ•´ä¸ªæ ¹æ–‡ä»¶ç³»ç»Ÿ,例如使用以下命令:"
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "最高速率"
@@ -1482,6 +1574,11 @@ msgstr "调制解调器就绪的最大等待时间(秒)"
msgid "Maximum hold time"
msgstr "最大æŒç»­æ—¶é—´"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "最大地å€åˆ†é…æ•°é‡ã€‚"
@@ -1547,12 +1644,18 @@ msgid ""
"filesystem"
msgstr "é…置存储设备挂载到文件系统中的ä½ç½®å’Œå‚数。"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "挂载选项"
msgid "Mount point"
msgstr "挂载点"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "已挂载的文件系统"
@@ -1571,6 +1674,9 @@ msgstr "多播地å€"
msgid "NAS ID"
msgstr "NAS ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr "NDP-代ç†"
@@ -1670,6 +1776,9 @@ msgstr "未连接"
msgid "Note: Configuration files will be erased."
msgstr "注æ„:é…置文件将被删除。"
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "注æ„"
@@ -1792,9 +1901,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "需è¦libiwinfo软件包ï¼"
@@ -1822,9 +1940,6 @@ msgstr "ç§æœ‰å¯†é’¥"
msgid "Password successfully changed!"
msgstr "密ç ä¿®æ”¹æˆåŠŸï¼"
-msgid "Path"
-msgstr "路径"
-
msgid "Path to CA-Certificate"
msgstr "CAè¯ä¹¦è·¯å¾„"
@@ -1840,6 +1955,9 @@ msgstr "处ç†æŒ‰é”®åŠ¨ä½œçš„å¯æ‰§è¡Œæ–‡ä»¶è·¯å¾„"
msgid "Peak:"
msgstr "峰值:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "执行é‡å¯"
@@ -1861,9 +1979,6 @@ msgstr "æ•°æ®åŒ…"
msgid "Please enter your username and password."
msgstr "请输入用户å和密ç ã€‚"
-msgid "Please wait: Device rebooting..."
-msgstr "请ç¨ç­‰ï¼šè®¾å¤‡é‡å¯ä¸­..."
-
msgid "Policy"
msgstr "ç­–ç•¥"
@@ -2138,9 +2253,6 @@ msgid ""
"can be reached."
msgstr "路由表æ述了数æ®åŒ…çš„å¯è¾¾è·¯å¾„。"
-msgid "Rule #"
-msgstr "规则 #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "挂载设备å‰è¿è¡Œæ–‡ä»¶ç³»ç»Ÿæ£€æŸ¥"
@@ -2158,6 +2270,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSH访问"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH-密钥"
@@ -2247,6 +2368,9 @@ msgstr "ä¿¡å·:"
msgid "Size"
msgstr "大å°"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "跳过"
@@ -2518,6 +2642,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "所选的å议需è¦åˆ†é…设备"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2569,6 +2696,12 @@ msgid "This IPv4 address of the relay"
msgstr "中继的IPv4地å€"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2724,6 +2857,9 @@ msgstr "未知错误,密ç æœªæ›´æ”¹ï¼"
msgid "Unmanaged"
msgstr "ä¸é…ç½®åè®®"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "未ä¿å­˜çš„é…ç½®"
@@ -2885,11 +3021,14 @@ msgstr "正在应用更改..."
msgid "Waiting for command to complete..."
msgstr "正在执行命令..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "警告"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "警告: 有尚未ä¿å­˜çš„更改,é‡å¯å°†ä¸¢å¤±!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3118,6 +3257,28 @@ msgstr "是"
msgid "« Back"
msgstr "« åŽé€€"
+#~ msgid "Delete this interface"
+#~ msgstr "删除此接å£"
+
+#~ msgid "Flags"
+#~ msgstr "标识"
+
+#~ msgid "Rule #"
+#~ msgstr "规则 #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "忽略HOSTS文件"
+
+#~ msgid "Path"
+#~ msgstr "路径"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "请ç¨ç­‰ï¼šè®¾å¤‡é‡å¯ä¸­..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "警告: 有尚未ä¿å­˜çš„更改,é‡å¯å°†ä¸¢å¤±!"
+
#~ msgid "CPU frequency"
#~ msgstr "CPU 频率"
@@ -3906,9 +4067,6 @@ msgstr "« åŽé€€"
#~ "如果连接在已有网络,那么它会被<em>桥接</em>到现有接å£ï¼Œå¹¶ä¸”被所选的防ç«å¢™"
#~ "区域覆盖。å–消附加选项å¯ä»¥é‡å®šä¹‰æ­¤æŽ¥å£ä¸ºæ–°çš„独立网络。"
-#~ msgid "Ignore <code>/etc/hosts</code>"
-#~ msgstr "忽略 <code>/etc/hosts</code>"
-
#~ msgid "Independent (Ad-Hoc)"
#~ msgstr "独立(点对点Ad-Hoc)"
diff --git a/modules/luci-base/po/zh-tw/base.po b/modules/luci-base/po/zh-tw/base.po
index ec901b8af2..330ec7b5dc 100644
--- a/modules/luci-base/po/zh-tw/base.po
+++ b/modules/luci-base/po/zh-tw/base.po
@@ -44,6 +44,9 @@ msgstr "1分é˜è² è¼‰"
msgid "15 Minute Load:"
msgstr "15分é˜è² è¼‰"
+msgid "464XLAT (CLAT)"
+msgstr ""
+
msgid "5 Minute Load:"
msgstr "5分é˜è² è¼‰"
@@ -200,6 +203,9 @@ msgstr "增加新界é¢"
msgid "Additional Hosts files"
msgstr "é¡å¤–çš„HOST檔案"
+msgid "Additional servers file"
+msgstr ""
+
msgid "Address"
msgstr "ä½ç½®"
@@ -260,6 +266,12 @@ msgstr ""
msgid "Announced DNS servers"
msgstr ""
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
msgid "Antenna 1"
msgstr "天線 1"
@@ -316,6 +328,21 @@ msgstr ""
msgid "Automatic Homenet (HNCP)"
msgstr ""
+msgid "Automatically check filesystem for errors before mounting"
+msgstr ""
+
+msgid "Automatically mount filesystems on hotplug"
+msgstr ""
+
+msgid "Automatically mount swap on hotplug"
+msgstr ""
+
+msgid "Automount Filesystem"
+msgstr ""
+
+msgid "Automount Swap"
+msgstr ""
+
msgid "Available"
msgstr "å¯ç”¨"
@@ -325,6 +352,9 @@ msgstr "å¯ç”¨è»Ÿé«”包"
msgid "Average:"
msgstr "å¹³å‡:"
+msgid "BR / DMR / AFTR"
+msgstr ""
+
msgid "BSSID"
msgstr "BSSID"
@@ -399,6 +429,11 @@ msgstr "Broadcom BCM%04x 802.11 無線控制器"
msgid "Buffered"
msgstr "已緩è¡"
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+
msgid "Buttons"
msgstr "按鈕"
@@ -435,6 +470,9 @@ msgstr "é »é“"
msgid "Check"
msgstr "檢查"
+msgid "Check fileystems before mount"
+msgstr ""
+
msgid "Checksum"
msgstr "效驗碼"
@@ -552,6 +590,14 @@ msgid "Custom delegated IPv6-prefix"
msgstr ""
msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+
+msgid "Custom feeds"
+msgstr ""
+
+msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
"\">LED</abbr>s if possible."
msgstr ""
@@ -629,9 +675,6 @@ msgstr ""
msgid "Delete"
msgstr "刪除"
-msgid "Delete this interface"
-msgstr "刪除這個介é¢"
-
msgid "Delete this network"
msgstr "刪除這個網路"
@@ -650,6 +693,12 @@ msgstr "設備"
msgid "Device Configuration"
msgstr "設定設備"
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
msgid "Diagnostics"
msgstr "診斷"
@@ -689,6 +738,9 @@ msgstr "最佳化è·é›¢"
msgid "Distance to farthest network member in meters."
msgstr "到最é çš„網路è·é›¢ä»¥ç±³è¡¨ç¤º."
+msgid "Distribution feeds"
+msgstr ""
+
msgid "Diversity"
msgstr "差異"
@@ -757,6 +809,9 @@ msgid ""
"having static leases will be served."
msgstr "幫用戶端動態發é…DHCPä½å€. å‡å¦‚關閉的話,僅有有éœæ…‹ä½å€çš„用戶端能被æœå‹™"
+msgid "EA-bits length"
+msgstr ""
+
msgid "EAP-Method"
msgstr "EAPå”定驗證方å¼"
@@ -866,6 +921,9 @@ msgstr "外部系統日誌伺æœå™¨"
msgid "External system log server port"
msgstr "外部系統日誌伺æœå™¨åŸ è™Ÿ"
+msgid "Extra SSH command options"
+msgstr ""
+
msgid "Fast Frames"
msgstr "快速迅框群"
@@ -887,6 +945,11 @@ msgstr "ç§äººéŽæ¿¾å™¨"
msgid "Filter useless"
msgstr "無用éŽæ¿¾å™¨"
+msgid ""
+"Find all currently attached filesystems and swap and replace configuration "
+"with defaults based on what was detected"
+msgstr ""
+
msgid "Find and join network"
msgstr "æœå°‹ä¸¦åŠ å…¥ç¶²è·¯"
@@ -911,9 +974,6 @@ msgstr "防ç«ç‰†ç‰ˆæœ¬"
msgid "Fixed source port for outbound DNS queries"
msgstr "外發DNS請求的固定埠號"
-msgid "Flags"
-msgstr "旗標"
-
msgid "Flash Firmware"
msgstr "韌體更新"
@@ -944,6 +1004,9 @@ msgstr "強制TKIP加密"
msgid "Force TKIP and CCMP (AES)"
msgstr "強制TKIP+CCMP (AES)加密"
+msgid "Form token mismatch"
+msgstr ""
+
msgid "Forward DHCP traffic"
msgstr "轉發DHCPæµé‡"
@@ -983,6 +1046,12 @@ msgstr "一般設定"
msgid "General Setup"
msgstr "一般設置"
+msgid "General options for opkg"
+msgstr ""
+
+msgid "Generate Config"
+msgstr ""
+
msgid "Generate archive"
msgstr "製作壓縮檔"
@@ -992,6 +1061,9 @@ msgstr "通用 802.11%s 無線控制器"
msgid "Given password confirmation did not match, password not changed!"
msgstr "éµå…¥çš„密碼ä¸å»åˆ,密碼將ä¸è®Šæ›´"
+msgid "Global Settings"
+msgstr ""
+
msgid "Global network options"
msgstr ""
@@ -1089,6 +1161,9 @@ msgstr "IPv4網路é®ç½©"
msgid "IPv4 only"
msgstr "僅用IPv4"
+msgid "IPv4 prefix"
+msgstr ""
+
msgid "IPv4 prefix length"
msgstr "IPv4å‰ç¶´é•·åº¦"
@@ -1182,8 +1257,8 @@ msgstr ""
"緩慢的éŽç¨‹,作為交æ›è£ç½®ä¸èƒ½ç”¨é«˜æ•¸æ“šé€ŸçŽ‡è¨ªå•è©²<abbr title=\"Random Access "
"Memory\">RAM</縮寫>"
-msgid "Ignore Hosts files"
-msgstr "被忽視的主機檔案"
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr ""
msgid "Ignore interface"
msgstr "被忽視的介é¢"
@@ -1197,6 +1272,11 @@ msgstr "映åƒæª”"
msgid "In"
msgstr "輸入"
+msgid ""
+"In order to prevent unauthorized access to the system, your request has been "
+"blocked. Click \"Continue »\" below to return to the previous page."
+msgstr ""
+
msgid "Inactivity timeout"
msgstr "é–’ç½®éŽæœŸ"
@@ -1376,6 +1456,9 @@ msgid ""
"requests to"
msgstr "列出 <abbr title=\"Domain Name System\">DNS</abbr> 伺æœå™¨ä»¥ä¾¿è½‰ç™¼è«‹æ±‚"
+msgid "List of SSH key files for auth"
+msgstr ""
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "列出å…許RFC1918文件虛擬IP回應的網域"
@@ -1397,6 +1480,9 @@ msgstr "å¹³å‡æŽ›è¼‰"
msgid "Loading"
msgstr "掛載中"
+msgid "Local IP address to assign"
+msgstr ""
+
msgid "Local IPv4 address"
msgstr "本地IPv4ä½å€"
@@ -1465,6 +1551,9 @@ msgstr "MAC-éŽæ¿¾"
msgid "MAC-List"
msgstr "MAC-清單"
+msgid "MAP / LW4over6"
+msgstr ""
+
msgid "MB/s"
msgstr "MB/s"
@@ -1479,6 +1568,9 @@ msgid ""
"below:"
msgstr ""
+msgid "Manual"
+msgstr ""
+
msgid "Maximum Rate"
msgstr "最快速度"
@@ -1497,6 +1589,11 @@ msgstr "等待數據機待命的最大秒數"
msgid "Maximum hold time"
msgstr "å¯æŒæœ‰æœ€é•·æ™‚é–“"
+msgid ""
+"Maximum length of the name is 15 characters including the automatic protocol/"
+"bridge prefix (br-, 6in4-, pppoe- etc.)"
+msgstr ""
+
msgid "Maximum number of leased addresses."
msgstr "釋放出的ä½å€ç¾¤æœ€å¤§æ•¸é‡"
@@ -1562,12 +1659,18 @@ msgid ""
"filesystem"
msgstr "掛載å„點定義所指定到記憶體設備將會被附載到檔案系統上"
+msgid "Mount filesystems not specifically configured"
+msgstr ""
+
msgid "Mount options"
msgstr "掛載é¸é …"
msgid "Mount point"
msgstr "掛載點"
+msgid "Mount swap not specifically configured"
+msgstr ""
+
msgid "Mounted file systems"
msgstr "已掛載檔案系統"
@@ -1586,6 +1689,9 @@ msgstr "多點群播ä½å€"
msgid "NAS ID"
msgstr " 網路附存伺æœå™¨ID"
+msgid "NAT64 Prefix"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -1685,6 +1791,9 @@ msgstr "尚未連線"
msgid "Note: Configuration files will be erased."
msgstr "注æ„:設定檔將被刪除."
+msgid "Note: interface name length"
+msgstr ""
+
msgid "Notice"
msgstr "通知"
@@ -1811,9 +1920,18 @@ msgstr "PPPoATM"
msgid "PPPoE"
msgstr "PPPoE"
+msgid "PPPoSSH"
+msgstr ""
+
msgid "PPtP"
msgstr "PPtP點å°é»žVPN虛擬ç§äººéš§é“å”定"
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
msgid "Package libiwinfo required!"
msgstr "軟體包必需有libiwinfo!"
@@ -1841,9 +1959,6 @@ msgstr "ç§äººé‡‘鑰密碼"
msgid "Password successfully changed!"
msgstr "密碼已變更æˆåŠŸ!"
-msgid "Path"
-msgstr ""
-
msgid "Path to CA-Certificate"
msgstr "CA-證書的路徑"
@@ -1859,6 +1974,9 @@ msgstr "處ç†æŒ‰éµæ•ˆæžœå¯åŸ·è¡Œæª”路徑"
msgid "Peak:"
msgstr "峰值:"
+msgid "Peer IP address to assign"
+msgstr ""
+
msgid "Perform reboot"
msgstr "執行é‡é–‹"
@@ -1880,9 +1998,6 @@ msgstr "å°åŒ…數."
msgid "Please enter your username and password."
msgstr "請輸入你的用戶å稱和密碼"
-msgid "Please wait: Device rebooting..."
-msgstr "è«‹ç¨ç­‰:設備正é‡é–‹ä¸­..."
-
msgid "Policy"
msgstr "ç­–ç•¥"
@@ -2157,9 +2272,6 @@ msgid ""
"can be reached."
msgstr "路由器指定介é¢å°Žå‡ºåˆ°ç‰¹å®šä¸»æ©Ÿæˆ–者能夠到é”的網路."
-msgid "Rule #"
-msgstr "è¦å‰‡ #"
-
msgid "Run a filesystem check before mounting the device"
msgstr "掛載這個設備å‰å…ˆè·‘系統檢查"
@@ -2177,6 +2289,15 @@ msgstr ""
msgid "SSH Access"
msgstr "SSHå­˜å–"
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
msgid "SSH-Keys"
msgstr "SSH-金鑰"
@@ -2266,6 +2387,9 @@ msgstr "信號:"
msgid "Size"
msgstr "大å°"
+msgid "Size (.ipk)"
+msgstr ""
+
msgid "Skip"
msgstr "è·³éŽ"
@@ -2541,6 +2665,9 @@ msgstr ""
msgid "The selected protocol needs a device assigned"
msgstr "é¸åˆ°çš„å”定需è¦æŒ‡å®šåˆ°è¨­å‚™ä¸Š"
+msgid "The submitted security token is invalid or already expired!"
+msgstr ""
+
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
"when finished."
@@ -2593,6 +2720,12 @@ msgid "This IPv4 address of the relay"
msgstr "IPv4ä½å€çš„轉驛"
msgid ""
+"This file may contain lines like 'server=/domain/1.2.3.4' or "
+"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
+"Name System\">DNS</abbr> servers."
+msgstr ""
+
+msgid ""
"This is a list of shell glob patterns for matching files and directories to "
"include during sysupgrade. Modified files in /etc/config/ and certain other "
"configurations are automatically preserved."
@@ -2750,6 +2883,9 @@ msgstr "未知錯誤, 密碼尚未改變!"
msgid "Unmanaged"
msgstr "éžè¨—管"
+msgid "Unmount"
+msgstr ""
+
msgid "Unsaved Changes"
msgstr "尚未存檔的修改"
@@ -2914,11 +3050,14 @@ msgstr "等待修改被啟用..."
msgid "Waiting for command to complete..."
msgstr "等待完整性指令..."
+msgid "Waiting for device..."
+msgstr ""
+
msgid "Warning"
msgstr "警告"
-msgid "Warning: There are unsaved changes that will be lost while rebooting!"
-msgstr "警告:é‡é–‹æ©Ÿå¾ŒæŸäº›æœªå­˜æª”的修改將會æ¼å¤±!"
+msgid "Warning: There are unsaved changes that will get lost on reboot!"
+msgstr ""
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3146,6 +3285,25 @@ msgstr "是的"
msgid "« Back"
msgstr "« 倒退"
+#~ msgid "Delete this interface"
+#~ msgstr "刪除這個介é¢"
+
+#~ msgid "Flags"
+#~ msgstr "旗標"
+
+#~ msgid "Rule #"
+#~ msgstr "è¦å‰‡ #"
+
+#~ msgid "Ignore Hosts files"
+#~ msgstr "被忽視的主機檔案"
+
+#~ msgid "Please wait: Device rebooting..."
+#~ msgstr "è«‹ç¨ç­‰:設備正é‡é–‹ä¸­..."
+
+#~ msgid ""
+#~ "Warning: There are unsaved changes that will be lost while rebooting!"
+#~ msgstr "警告:é‡é–‹æ©Ÿå¾ŒæŸäº›æœªå­˜æª”的修改將會æ¼å¤±!"
+
#~ msgid ""
#~ "Always use 40MHz channels even if the secondary channel overlaps. Using "
#~ "this option does not comply with IEEE 802.11n-2009!"
diff --git a/modules/luci-base/root/etc/config/luci b/modules/luci-base/root/etc/config/luci
index c503a8f1e0..baa3ac5d1e 100644
--- a/modules/luci-base/root/etc/config/luci
+++ b/modules/luci-base/root/etc/config/luci
@@ -1,6 +1,6 @@
config core main
option lang auto
- option mediaurlbase /luci-static/openwrt.org
+ option mediaurlbase /luci-static/bootstrap
option resourcebase /luci-static/resources
config extern flash_keep
diff --git a/modules/luci-base/root/lib/uci/upload/.placeholder b/modules/luci-base/root/etc/luci-uploads/.placeholder
index e69de29bb2..e69de29bb2 100644
--- a/modules/luci-base/root/lib/uci/upload/.placeholder
+++ b/modules/luci-base/root/etc/luci-uploads/.placeholder
diff --git a/modules/luci-base/root/www/index.html b/modules/luci-base/root/www/index.html
index 0b5fa1d87e..59b0d84842 100644
--- a/modules/luci-base/root/www/index.html
+++ b/modules/luci-base/root/www/index.html
@@ -5,7 +5,7 @@
<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="refresh" content="0; URL=/cgi-bin/luci" />
</head>
-<body style="background-color: black">
-<a style="color: white; text-decoration: none" href="/cgi-bin/luci">LuCI - Lua Configuration Interface</a>
+<body style="background-color: white">
+<a style="color: black; font-family: arial, helvetica, sans-serif;" href="/cgi-bin/luci">LuCI - Lua Configuration Interface</a>
</body>
</html>
diff --git a/modules/luci-mod-admin-full/Makefile b/modules/luci-mod-admin-full/Makefile
index 66c78e28a9..5fed2797ec 100644
--- a/modules/luci-mod-admin-full/Makefile
+++ b/modules/luci-mod-admin-full/Makefile
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Administration - full-featured for full control
-LUCI_DEPENDS:=+luci-base +libubus-lua
+LUCI_DEPENDS:=+luci-base
PKG_BUILD_DEPENDS:=iwinfo
diff --git a/modules/luci-mod-admin-full/luasrc/controller/admin/index.lua b/modules/luci-mod-admin-full/luasrc/controller/admin/index.lua
index d00d546b64..cc8c2e3ae6 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/index.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/index.lua
@@ -33,12 +33,10 @@ function action_logout()
if sid then
utl.ubus("session", "destroy", { ubus_rpc_session = sid })
- dsp.context.urltoken.stok = nil
-
luci.http.header("Set-Cookie", "sysauth=%s; expires=%s; path=%s/" %{
sid, 'Thu, 01 Jan 1970 01:00:00 GMT', dsp.build_url()
})
end
- luci.http.redirect(luci.dispatcher.build_url())
+ luci.http.redirect(dsp.build_url())
end
diff --git a/modules/luci-mod-admin-full/luasrc/controller/admin/network.lua b/modules/luci-mod-admin-full/luasrc/controller/admin/network.lua
index 6e578e013c..aa533cb70b 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/network.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/network.lua
@@ -1,5 +1,5 @@
-- Copyright 2008 Steven Barth <steven@midlink.org>
--- Copyright 2011 Jo-Philipp Wich <jow@openwrt.org>
+-- Copyright 2011-2015 Jo-Philipp Wich <jow@openwrt.org>
-- Licensed to the public under the Apache License 2.0.
module("luci.controller.admin.network", package.seeall)
@@ -43,22 +43,22 @@ function index()
end)
if has_wifi then
- page = entry({"admin", "network", "wireless_join"}, call("wifi_join"), nil)
+ page = entry({"admin", "network", "wireless_join"}, post("wifi_join"), nil)
page.leaf = true
- page = entry({"admin", "network", "wireless_add"}, call("wifi_add"), nil)
+ page = entry({"admin", "network", "wireless_add"}, post("wifi_add"), nil)
page.leaf = true
- page = entry({"admin", "network", "wireless_delete"}, call("wifi_delete"), nil)
+ page = entry({"admin", "network", "wireless_delete"}, post("wifi_delete"), nil)
page.leaf = true
page = entry({"admin", "network", "wireless_status"}, call("wifi_status"), nil)
page.leaf = true
- page = entry({"admin", "network", "wireless_reconnect"}, call("wifi_reconnect"), nil)
+ page = entry({"admin", "network", "wireless_reconnect"}, post("wifi_reconnect"), nil)
page.leaf = true
- page = entry({"admin", "network", "wireless_shutdown"}, call("wifi_shutdown"), nil)
+ page = entry({"admin", "network", "wireless_shutdown"}, post("wifi_shutdown"), nil)
page.leaf = true
page = entry({"admin", "network", "wireless"}, arcombine(template("admin_network/wifi_overview"), cbi("admin_network/wifi")), _("Wifi"), 15)
@@ -85,16 +85,16 @@ function index()
page = entry({"admin", "network", "iface_add"}, cbi("admin_network/iface_add"), nil)
page.leaf = true
- page = entry({"admin", "network", "iface_delete"}, call("iface_delete"), nil)
+ page = entry({"admin", "network", "iface_delete"}, post("iface_delete"), nil)
page.leaf = true
page = entry({"admin", "network", "iface_status"}, call("iface_status"), nil)
page.leaf = true
- page = entry({"admin", "network", "iface_reconnect"}, call("iface_reconnect"), nil)
+ page = entry({"admin", "network", "iface_reconnect"}, post("iface_reconnect"), nil)
page.leaf = true
- page = entry({"admin", "network", "iface_shutdown"}, call("iface_shutdown"), nil)
+ page = entry({"admin", "network", "iface_shutdown"}, post("iface_shutdown"), nil)
page.leaf = true
page = entry({"admin", "network", "network"}, arcombine(cbi("admin_network/network"), cbi("admin_network/ifaces")), _("Interfaces"), 10)
@@ -138,44 +138,33 @@ function index()
page.title = _("Diagnostics")
page.order = 60
- page = entry({"admin", "network", "diag_ping"}, call("diag_ping"), nil)
+ page = entry({"admin", "network", "diag_ping"}, post("diag_ping"), nil)
page.leaf = true
- page = entry({"admin", "network", "diag_nslookup"}, call("diag_nslookup"), nil)
+ page = entry({"admin", "network", "diag_nslookup"}, post("diag_nslookup"), nil)
page.leaf = true
- page = entry({"admin", "network", "diag_traceroute"}, call("diag_traceroute"), nil)
+ page = entry({"admin", "network", "diag_traceroute"}, post("diag_traceroute"), nil)
page.leaf = true
- page = entry({"admin", "network", "diag_ping6"}, call("diag_ping6"), nil)
+ page = entry({"admin", "network", "diag_ping6"}, post("diag_ping6"), nil)
page.leaf = true
- page = entry({"admin", "network", "diag_traceroute6"}, call("diag_traceroute6"), nil)
+ page = entry({"admin", "network", "diag_traceroute6"}, post("diag_traceroute6"), nil)
page.leaf = true
-- end
end
function wifi_join()
- local function param(x)
- return luci.http.formvalue(x)
- end
-
- local function ptable(x)
- x = param(x)
- return x and (type(x) ~= "table" and { x } or x) or {}
- end
-
- local dev = param("device")
- local ssid = param("join")
+ local tpl = require "luci.template"
+ local http = require "luci.http"
+ local dev = http.formvalue("device")
+ local ssid = http.formvalue("join")
if dev and ssid then
- local cancel = (param("cancel") or param("cbi.cancel")) and true or false
-
- if cancel then
- luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless_join?device=" .. dev))
- else
+ local cancel = (http.formvalue("cancel") or http.formvalue("cbi.cancel"))
+ if not cancel then
local cbi = require "luci.cbi"
- local tpl = require "luci.template"
local map = luci.cbi.load("admin_network/wifi_add")[1]
if map:parse() ~= cbi.FORM_DONE then
@@ -183,10 +172,12 @@ function wifi_join()
map:render()
tpl.render("footer")
end
+
+ return
end
- else
- luci.template.render("admin_network/wifi_join")
end
+
+ tpl.render("admin_network/wifi_join")
end
function wifi_add()
@@ -244,6 +235,8 @@ function iface_status(ifaces)
proto = net:proto(),
uptime = net:uptime(),
gwaddr = net:gwaddr(),
+ ipaddrs = net:ipaddrs(),
+ ip6addrs = net:ip6addrs(),
dnsaddrs = net:dnsaddrs(),
name = device:shortname(),
type = device:type(),
@@ -255,29 +248,9 @@ function iface_status(ifaces)
rx_packets = device:rx_packets(),
tx_packets = device:tx_packets(),
- ipaddrs = { },
- ip6addrs = { },
subdevices = { }
}
- local _, a
- for _, a in ipairs(device:ipaddrs()) do
- data.ipaddrs[#data.ipaddrs+1] = {
- addr = a:host():string(),
- netmask = a:mask():string(),
- prefix = a:prefix()
- }
- end
- for _, a in ipairs(device:ip6addrs()) do
- if not a:is6linklocal() then
- data.ip6addrs[#data.ip6addrs+1] = {
- addr = a:host():string(),
- netmask = a:mask():string(),
- prefix = a:prefix()
- }
- end
- end
-
for _, device in ipairs(net:get_interfaces() or {}) do
data.subdevices[#data.subdevices+1] = {
name = device:shortname(),
diff --git a/modules/luci-mod-admin-full/luasrc/controller/admin/status.lua b/modules/luci-mod-admin-full/luasrc/controller/admin/status.lua
index 1ceb24d16a..24db1e4ff5 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/status.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/status.lua
@@ -7,7 +7,10 @@ module("luci.controller.admin.status", package.seeall)
function index()
entry({"admin", "status"}, alias("admin", "status", "overview"), _("Status"), 20).index = true
entry({"admin", "status", "overview"}, template("admin_status/index"), _("Overview"), 1)
- entry({"admin", "status", "iptables"}, call("action_iptables"), _("Firewall"), 2).leaf = true
+
+ entry({"admin", "status", "iptables"}, template("admin_status/iptables"), _("Firewall"), 2).leaf = true
+ entry({"admin", "status", "iptables_action"}, post("action_iptables")).leaf = true
+
entry({"admin", "status", "routes"}, template("admin_status/routes"), _("Routes"), 3)
entry({"admin", "status", "syslog"}, call("action_syslog"), _("System Log"), 4)
entry({"admin", "status", "dmesg"}, call("action_dmesg"), _("Kernel Log"), 5)
@@ -42,22 +45,16 @@ end
function action_iptables()
if luci.http.formvalue("zero") then
- if luci.http.formvalue("zero") == "6" then
- luci.util.exec("ip6tables -Z")
+ if luci.http.formvalue("family") == "6" then
+ luci.util.exec("/usr/sbin/ip6tables -Z")
else
- luci.util.exec("iptables -Z")
+ luci.util.exec("/usr/sbin/iptables -Z")
end
- luci.http.redirect(
- luci.dispatcher.build_url("admin", "status", "iptables")
- )
- elseif luci.http.formvalue("restart") == "1" then
+ elseif luci.http.formvalue("restart") then
luci.util.exec("/etc/init.d/firewall restart")
- luci.http.redirect(
- luci.dispatcher.build_url("admin", "status", "iptables")
- )
- else
- luci.template.render("admin_status/iptables")
end
+
+ luci.http.redirect(luci.dispatcher.build_url("admin/status/iptables"))
end
function action_bandwidth(iface)
diff --git a/modules/luci-mod-admin-full/luasrc/controller/admin/system.lua b/modules/luci-mod-admin-full/luasrc/controller/admin/system.lua
index 1b38c6783c..cbba48cc25 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/system.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/system.lua
@@ -9,12 +9,12 @@ function index()
entry({"admin", "system"}, alias("admin", "system", "system"), _("System"), 30).index = true
entry({"admin", "system", "system"}, cbi("admin_system/system"), _("System"), 1)
- entry({"admin", "system", "clock_status"}, call("action_clock_status"))
+ entry({"admin", "system", "clock_status"}, post_on({ set = true }, "action_clock_status"))
entry({"admin", "system", "admin"}, cbi("admin_system/admin"), _("Administration"), 2)
if fs.access("/bin/opkg") then
- entry({"admin", "system", "packages"}, call("action_packages"), _("Software"), 10)
+ entry({"admin", "system", "packages"}, post_on({ exec = "1" }, "action_packages"), _("Software"), 10)
entry({"admin", "system", "packages", "ipkg"}, form("admin_system/ipkg"))
end
@@ -32,9 +32,16 @@ function index()
end
entry({"admin", "system", "flashops"}, call("action_flashops"), _("Backup / Flash Firmware"), 70)
+ entry({"admin", "system", "flashops", "reset"}, post("action_reset"))
+ entry({"admin", "system", "flashops", "backup"}, post("action_backup"))
entry({"admin", "system", "flashops", "backupfiles"}, form("admin_system/backupfiles"))
- entry({"admin", "system", "reboot"}, call("action_reboot"), _("Reboot"), 90)
+ -- call() instead of post() due to upload handling!
+ entry({"admin", "system", "flashops", "restore"}, call("action_restore"))
+ entry({"admin", "system", "flashops", "sysupgrade"}, call("action_sysupgrade"))
+
+ entry({"admin", "system", "reboot"}, template("admin_system/reboot"), _("Reboot"), 90)
+ entry({"admin", "system", "reboot", "call"}, post("action_reboot"))
end
function action_clock_status()
@@ -55,7 +62,8 @@ end
function action_packages()
local fs = require "nixio.fs"
local ipkg = require "luci.model.ipkg"
- local submit = luci.http.formvalue("submit")
+ local submit = (luci.http.formvalue("exec") == "1")
+ local update, upgrade
local changes = false
local install = { }
local remove = { }
@@ -75,59 +83,62 @@ function action_packages()
query = (query ~= '') and query or nil
- -- Packets to be installed
- local ninst = submit and luci.http.formvalue("install")
- local uinst = nil
-
- -- Install from URL
- local url = luci.http.formvalue("url")
- if url and url ~= '' and submit then
- uinst = url
- end
+ -- Modifying actions
+ if submit then
+ -- Packets to be installed
+ local ninst = luci.http.formvalue("install")
+ local uinst = nil
- -- Do install
- if ninst then
- install[ninst], out, err = ipkg.install(ninst)
- stdout[#stdout+1] = out
- stderr[#stderr+1] = err
- changes = true
- end
+ -- Install from URL
+ local url = luci.http.formvalue("url")
+ if url and url ~= '' then
+ uinst = url
+ end
- if uinst then
- local pkg
- for pkg in luci.util.imatch(uinst) do
- install[uinst], out, err = ipkg.install(pkg)
+ -- Do install
+ if ninst then
+ install[ninst], out, err = ipkg.install(ninst)
stdout[#stdout+1] = out
stderr[#stderr+1] = err
changes = true
end
- end
- -- Remove packets
- local rem = submit and luci.http.formvalue("remove")
- if rem then
- remove[rem], out, err = ipkg.remove(rem)
- stdout[#stdout+1] = out
- stderr[#stderr+1] = err
- changes = true
- end
+ if uinst then
+ local pkg
+ for pkg in luci.util.imatch(uinst) do
+ install[uinst], out, err = ipkg.install(pkg)
+ stdout[#stdout+1] = out
+ stderr[#stderr+1] = err
+ changes = true
+ end
+ end
+ -- Remove packets
+ local rem = luci.http.formvalue("remove")
+ if rem then
+ remove[rem], out, err = ipkg.remove(rem)
+ stdout[#stdout+1] = out
+ stderr[#stderr+1] = err
+ changes = true
+ end
- -- Update all packets
- local update = luci.http.formvalue("update")
- if update then
- update, out, err = ipkg.update()
- stdout[#stdout+1] = out
- stderr[#stderr+1] = err
- end
+
+ -- Update all packets
+ update = luci.http.formvalue("update")
+ if update then
+ update, out, err = ipkg.update()
+ stdout[#stdout+1] = out
+ stderr[#stderr+1] = err
+ end
- -- Upgrade all packets
- local upgrade = luci.http.formvalue("upgrade")
- if upgrade then
- upgrade, out, err = ipkg.upgrade()
- stdout[#stdout+1] = out
- stderr[#stderr+1] = err
+ -- Upgrade all packets
+ upgrade = luci.http.formvalue("upgrade")
+ if upgrade then
+ upgrade, out, err = ipkg.upgrade()
+ stdout[#stdout+1] = out
+ stderr[#stderr+1] = err
+ end
end
@@ -166,137 +177,185 @@ function action_packages()
end
end
-function action_flashops()
- local sys = require "luci.sys"
- local fs = require "nixio.fs"
-
- local upgrade_avail = fs.access("/lib/upgrade/platform.sh")
- local reset_avail = os.execute([[grep '"rootfs_data"' /proc/mtd >/dev/null 2>&1]]) == 0
+local function image_supported(image)
+ return (os.execute("sysupgrade -T %q >/dev/null" % image) == 0)
+end
- local restore_cmd = "tar -xzC/ >/dev/null 2>&1"
- local backup_cmd = "sysupgrade --create-backup - 2>/dev/null"
- local image_tmp = "/tmp/firmware.img"
+local function image_checksum(image)
+ return (luci.sys.exec("md5sum %q" % image):match("^([^%s]+)"))
+end
- local function image_supported()
- return (os.execute("sysupgrade -T %q >/dev/null" % image_tmp) == 0)
- end
+local function supports_sysupgrade()
+ return nixio.fs.access("/lib/upgrade/platform.sh")
+end
- local function image_checksum()
- return (luci.sys.exec("md5sum %q" % image_tmp):match("^([^%s]+)"))
- end
+local function supports_reset()
+ return (os.execute([[grep -sq '"rootfs_data"' /proc/mtd]]) == 0)
+end
- local function storage_size()
- local size = 0
- if fs.access("/proc/mtd") then
- for l in io.lines("/proc/mtd") do
- local d, s, e, n = l:match('^([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+"([^%s]+)"')
- if n == "linux" or n == "firmware" then
- size = tonumber(s, 16)
- break
- end
+local function storage_size()
+ local size = 0
+ if nixio.fs.access("/proc/mtd") then
+ for l in io.lines("/proc/mtd") do
+ local d, s, e, n = l:match('^([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+"([^%s]+)"')
+ if n == "linux" or n == "firmware" then
+ size = tonumber(s, 16)
+ break
end
- elseif fs.access("/proc/partitions") then
- for l in io.lines("/proc/partitions") do
- local x, y, b, n = l:match('^%s*(%d+)%s+(%d+)%s+([^%s]+)%s+([^%s]+)')
- if b and n and not n:match('[0-9]') then
- size = tonumber(b) * 1024
- break
- end
+ end
+ elseif nixio.fs.access("/proc/partitions") then
+ for l in io.lines("/proc/partitions") do
+ local x, y, b, n = l:match('^%s*(%d+)%s+(%d+)%s+([^%s]+)%s+([^%s]+)')
+ if b and n and not n:match('[0-9]') then
+ size = tonumber(b) * 1024
+ break
end
end
- return size
end
+ return size
+end
+
+
+function action_flashops()
+ --
+ -- Overview
+ --
+ luci.template.render("admin_system/flashops", {
+ reset_avail = supports_reset(),
+ upgrade_avail = supports_sysupgrade()
+ })
+end
+function action_sysupgrade()
+ local fs = require "nixio.fs"
+ local http = require "luci.http"
+ local image_tmp = "/tmp/firmware.img"
local fp
- luci.http.setfilehandler(
+ http.setfilehandler(
function(meta, chunk, eof)
- if not fp then
- if meta and meta.name == "image" then
- fp = io.open(image_tmp, "w")
- else
- fp = io.popen(restore_cmd, "w")
- end
+ if not fp and meta and meta.name == "image" then
+ fp = io.open(image_tmp, "w")
end
- if chunk then
+ if fp and chunk then
fp:write(chunk)
end
- if eof then
+ if fp and eof then
fp:close()
end
end
)
- if luci.http.formvalue("backup") then
- --
- -- Assemble file list, generate backup
- --
- local reader = ltn12_popen(backup_cmd)
- luci.http.header('Content-Disposition', 'attachment; filename="backup-%s-%s.tar.gz"' % {
- luci.sys.hostname(), os.date("%Y-%m-%d")})
- luci.http.prepare_content("application/x-targz")
- luci.ltn12.pump.all(reader, luci.http.write)
- elseif luci.http.formvalue("restore") then
- --
- -- Unpack received .tar.gz
- --
- local upload = luci.http.formvalue("archive")
- if upload and #upload > 0 then
- luci.template.render("admin_system/applyreboot")
- luci.sys.reboot()
+ if not luci.dispatcher.test_post_security() then
+ fs.unlink(image_tmp)
+ return
+ end
+
+ --
+ -- Cancel firmware flash
+ --
+ if http.formvalue("cancel") then
+ fs.unlink(image_tmp)
+ http.redirect(luci.dispatcher.build_url('admin/system/flashops'))
+ return
+ end
+
+ --
+ -- Initiate firmware flash
+ --
+ local step = tonumber(http.formvalue("step") or 1)
+ if step == 1 then
+ if image_supported(image_tmp) then
+ luci.template.render("admin_system/upgrade", {
+ checksum = image_checksum(image_tmp),
+ storage = storage_size(),
+ size = (fs.stat(image_tmp, "size") or 0),
+ keep = (not not http.formvalue("keep"))
+ })
+ else
+ fs.unlink(image_tmp)
+ luci.template.render("admin_system/flashops", {
+ reset_avail = supports_reset(),
+ upgrade_avail = supports_sysupgrade(),
+ image_invalid = true
+ })
end
- elseif luci.http.formvalue("image") or luci.http.formvalue("step") then
- --
- -- Initiate firmware flash
- --
- local step = tonumber(luci.http.formvalue("step") or 1)
- if step == 1 then
- if image_supported() then
- luci.template.render("admin_system/upgrade", {
- checksum = image_checksum(),
- storage = storage_size(),
- size = (fs.stat(image_tmp, "size") or 0),
- keep = (not not luci.http.formvalue("keep"))
- })
- else
- fs.unlink(image_tmp)
- luci.template.render("admin_system/flashops", {
- reset_avail = reset_avail,
- upgrade_avail = upgrade_avail,
- image_invalid = true
- })
+ --
+ -- Start sysupgrade flash
+ --
+ elseif step == 2 then
+ local keep = (http.formvalue("keep") == "1") and "" or "-n"
+ luci.template.render("admin_system/applyreboot", {
+ title = luci.i18n.translate("Flashing..."),
+ msg = luci.i18n.translate("The system is flashing now.<br /> DO NOT POWER OFF THE DEVICE!<br /> Wait a few minutes before you try to reconnect. It might be necessary to renew the address of your computer to reach the device again, depending on your settings."),
+ addr = (#keep > 0) and "192.168.1.1" or nil
+ })
+ fork_exec("killall dropbear uhttpd; sleep 1; /sbin/sysupgrade %s %q" %{ keep, image_tmp })
+ end
+end
+
+function action_backup()
+ local reader = ltn12_popen("sysupgrade --create-backup - 2>/dev/null")
+
+ luci.http.header(
+ 'Content-Disposition', 'attachment; filename="backup-%s-%s.tar.gz"' %{
+ luci.sys.hostname(),
+ os.date("%Y-%m-%d")
+ })
+
+ luci.http.prepare_content("application/x-targz")
+ luci.ltn12.pump.all(reader, luci.http.write)
+end
+
+function action_restore()
+ local fs = require "nixio.fs"
+ local http = require "luci.http"
+ local archive_tmp = "/tmp/restore.tar.gz"
+
+ local fp
+ http.setfilehandler(
+ function(meta, chunk, eof)
+ if not fp and meta and meta.name == "archive" then
+ fp = io.open(archive_tmp, "w")
+ end
+ if fp and chunk then
+ fp:write(chunk)
+ end
+ if fp and eof then
+ fp:close()
end
- --
- -- Start sysupgrade flash
- --
- elseif step == 2 then
- local keep = (luci.http.formvalue("keep") == "1") and "" or "-n"
- luci.template.render("admin_system/applyreboot", {
- title = luci.i18n.translate("Flashing..."),
- msg = luci.i18n.translate("The system is flashing now.<br /> DO NOT POWER OFF THE DEVICE!<br /> Wait a few minutes before you try to reconnect. It might be necessary to renew the address of your computer to reach the device again, depending on your settings."),
- addr = (#keep > 0) and "192.168.1.1" or nil
- })
- fork_exec("killall dropbear uhttpd; sleep 1; /sbin/sysupgrade %s %q" %{ keep, image_tmp })
end
- elseif reset_avail and luci.http.formvalue("reset") then
- --
- -- Reset system
- --
+ )
+
+ if not luci.dispatcher.test_post_security() then
+ fs.unlink(archive_tmp)
+ return
+ end
+
+ local upload = http.formvalue("archive")
+ if upload and #upload > 0 then
+ luci.template.render("admin_system/applyreboot")
+ os.execute("tar -C / -xzf %q >/dev/null 2>&1" % archive_tmp)
+ luci.sys.reboot()
+ return
+ end
+
+ http.redirect(luci.dispatcher.build_url('admin/system/flashops'))
+end
+
+function action_reset()
+ if supports_reset() then
luci.template.render("admin_system/applyreboot", {
title = luci.i18n.translate("Erasing..."),
msg = luci.i18n.translate("The system is erasing the configuration partition now and will reboot itself when finished."),
addr = "192.168.1.1"
})
+
fork_exec("killall dropbear uhttpd; sleep 1; mtd -r erase rootfs_data")
- else
- --
- -- Overview
- --
- luci.template.render("admin_system/flashops", {
- reset_avail = reset_avail,
- upgrade_avail = upgrade_avail
- })
+ return
end
+
+ http.redirect(luci.dispatcher.build_url('admin/system/flashops'))
end
function action_passwd()
@@ -316,11 +375,7 @@ function action_passwd()
end
function action_reboot()
- local reboot = luci.http.formvalue("reboot")
- luci.template.render("admin_system/reboot", {reboot=reboot})
- if reboot then
- luci.sys.reboot()
- end
+ luci.sys.reboot()
end
function fork_exec(command)
diff --git a/modules/luci-mod-admin-full/luasrc/controller/admin/uci.lua b/modules/luci-mod-admin-full/luasrc/controller/admin/uci.lua
index 6de3c73a3c..9c33d9c18b 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/uci.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/uci.lua
@@ -1,5 +1,5 @@
-- Copyright 2008 Steven Barth <steven@midlink.org>
--- Copyright 2010 Jo-Philipp Wich <jow@openwrt.org>
+-- Copyright 2010-2015 Jo-Philipp Wich <jow@openwrt.org>
-- Licensed to the public under the Apache License 2.0.
module("luci.controller.admin.uci", package.seeall)
@@ -10,9 +10,9 @@ function index()
entry({"admin", "uci"}, nil, _("Configuration"))
entry({"admin", "uci", "changes"}, call("action_changes"), _("Changes"), 40).query = {redir=redir}
- entry({"admin", "uci", "revert"}, call("action_revert"), _("Revert"), 30).query = {redir=redir}
- entry({"admin", "uci", "apply"}, call("action_apply"), _("Apply"), 20).query = {redir=redir}
- entry({"admin", "uci", "saveapply"}, call("action_apply"), _("Save &#38; Apply"), 10).query = {redir=redir}
+ entry({"admin", "uci", "revert"}, post("action_revert"), _("Revert"), 30).query = {redir=redir}
+ entry({"admin", "uci", "apply"}, post("action_apply"), _("Apply"), 20).query = {redir=redir}
+ entry({"admin", "uci", "saveapply"}, post("action_apply"), _("Save &#38; Apply"), 10).query = {redir=redir}
end
function action_changes()
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
index 49103a8113..572446feff 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
@@ -51,13 +51,10 @@ rf.optional = true
s:taboption("files", Flag, "nohosts",
- translate("Ignore Hosts files")).optional = true
+ translate("Ignore <code>/etc/hosts</code>")).optional = true
-hf = s:taboption("files", DynamicList, "addnhosts",
- translate("Additional Hosts files"))
-
-hf:depends("nohosts", "")
-hf.optional = true
+s:taboption("files", DynamicList, "addnhosts",
+ translate("Additional Hosts files")).optional = true
s:taboption("advanced", Flag, "boguspriv",
@@ -138,7 +135,7 @@ rd = s:taboption("general", DynamicList, "rebind_domain",
translate("List of domains to allow RFC1918 responses for"))
rd:depends("rebind_protection", "1")
-rd.datatype = "host"
+rd.datatype = "host(1)"
rd.placeholder = "ihost.netflix.com"
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua
index da1e140de0..e48e3b4bdf 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua
@@ -17,7 +17,12 @@ newnet = m:field(Value, "_netname", translate("Name of the new interface"),
newnet:depends("_attach", "")
newnet.default = arg[1] and "net_" .. arg[1]:gsub("[^%w_]+", "_")
-newnet.datatype = "uciname"
+newnet.datatype = "and(uciname,maxlength(15))"
+
+advice = m:field(DummyValue, "d1", translate("Note: interface name length"),
+ translate("Maximum length of the name is 15 characters including " ..
+ "the automatic protocol/bridge prefix (br-, 6in4-, pppoe- etc.)"
+ ))
newproto = m:field(ListValue, "_netproto", translate("Protocol of the new interface"))
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua
index 40f8014f1a..ce3c3ef325 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua
@@ -107,6 +107,12 @@ m.uci:foreach("network", "switch",
local sp = s:option(ListValue, "mirror_source_port", translate("Mirror source port"))
local mp = s:option(ListValue, "mirror_monitor_port", translate("Mirror monitor port"))
+ sp:depends("enable_mirror_tx", "1")
+ sp:depends("enable_mirror_rx", "1")
+
+ mp:depends("enable_mirror_tx", "1")
+ mp:depends("enable_mirror_rx", "1")
+
local pt
for pt = 0, num_ports - 1 do
local name
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua
index 9a2bd5d201..44528927e7 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua
@@ -361,7 +361,8 @@ s:tab("encryption", translate("Wireless Security"))
s:tab("macfilter", translate("MAC-Filter"))
s:tab("advanced", translate("Advanced Settings"))
-s:taboption("general", Value, "ssid", translate("<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"))
+ssid = s:taboption("general", Value, "ssid", translate("<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"))
+ssid.datatype = "maxlength(32)"
mode = s:taboption("general", ListValue, "mode", translate("Mode"))
mode.override_values = true
@@ -748,7 +749,7 @@ auth_server:depends({mode="ap", encryption="wpa2"})
auth_server:depends({mode="ap-wds", encryption="wpa"})
auth_server:depends({mode="ap-wds", encryption="wpa2"})
auth_server.rmempty = true
-auth_server.datatype = "host"
+auth_server.datatype = "host(0)"
auth_port = s:taboption("encryption", Value, "auth_port", translate("Radius-Authentication-Port"), translatef("Default %d", 1812))
auth_port:depends({mode="ap", encryption="wpa"})
@@ -772,7 +773,7 @@ acct_server:depends({mode="ap", encryption="wpa2"})
acct_server:depends({mode="ap-wds", encryption="wpa"})
acct_server:depends({mode="ap-wds", encryption="wpa2"})
acct_server.rmempty = true
-acct_server.datatype = "host"
+acct_server.datatype = "host(0)"
acct_port = s:taboption("encryption", Value, "acct_port", translate("Radius-Accounting-Port"), translatef("Default %d", 1813))
acct_port:depends({mode="ap", encryption="wpa"})
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua
index d4e834daff..fd466d5c26 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua
@@ -33,12 +33,67 @@ until not ln
block:close()
-
m = Map("fstab", translate("Mount Points"))
+s = m:section(TypedSection, "global", translate("Global Settings"))
+s.addremove = false
+s.anonymous = true
+
+detect = s:option(Button, "block_detect", translate("Generate Config"), translate("Find all currently attached filesystems and swap and replace configuration with defaults based on what was detected"))
+detect.inputstyle = "reload"
+
+detect.write = function(self, section)
+ luci.sys.call("block detect >/etc/config/fstab")
+ luci.http.redirect(luci.dispatcher.build_url("admin/system", "fstab"))
+end
+
+o = s:option(Flag, "anon_swap", translate("Anonymous Swap"), translate("Mount swap not specifically configured"))
+o.default = o.disabled
+o.rmempty = false
+
+o = s:option(Flag, "anon_mount", translate("Anonymous Mount"), translate("Mount filesystems not specifically configured"))
+o.default = o.disabled
+o.rmempty = false
+
+o = s:option(Flag, "auto_swap", translate("Automount Swap"), translate("Automatically mount swap on hotplug"))
+o.default = o.enabled
+o.rmempty = false
+
+o = s:option(Flag, "auto_mount", translate("Automount Filesystem"), translate("Automatically mount filesystems on hotplug"))
+o.default = o.enabled
+o.rmempty = false
+
+o = s:option(Flag, "check_fs", translate("Check fileystems before mount"), translate("Automatically check filesystem for errors before mounting"))
+o.default = o.disabled
+o.rmempty = false
local mounts = luci.sys.mounts()
+local non_system_mounts = {}
+for rawmount, val in pairs(mounts) do
+ if (string.find(val.mountpoint, "/tmp/.jail") == nil) then
+ repeat
+ val.umount = false
+ if (val.mountpoint == "/") then
+ break
+ elseif (val.mountpoint == "/overlay") then
+ break
+ elseif (val.mountpoint == "/rom") then
+ break
+ elseif (val.mountpoint == "/tmp") then
+ break
+ elseif (val.mountpoint == "/tmp/shm") then
+ break
+ elseif (val.mountpoint == "/tmp/upgrade") then
+ break
+ elseif (val.mountpoint == "/dev") then
+ break
+ end
+ val.umount = true
+ until true
+ non_system_mounts[rawmount] = val
+ end
+end
-v = m:section(Table, mounts, translate("Mounted file systems"))
+v = m:section(Table, non_system_mounts, translate("Mounted file systems"))
fs = v:option(DummyValue, "fs", translate("Filesystem"))
@@ -61,7 +116,21 @@ function used.cfgvalue(self, section)
) .. ")"
end
+unmount = v:option(Button, "unmount", translate("Unmount"))
+unmount.render = function(self, section, scope)
+ if non_system_mounts[section].umount then
+ self.title = translate("Unmount")
+ self.inputstyle = "remove"
+ Button.render(self, section, scope)
+ end
+end
+unmount.write = function(self, section)
+ if non_system_mounts[section].umount then
+ luci.sys.call("/bin/umount '%s'" % luci.util.shellstartsqescape(non_system_mounts[section].mountpoint))
+ return luci.http.redirect(luci.dispatcher.build_url("admin/system", "fstab"))
+ end
+end
mount = m:section(TypedSection, "mount", translate("Mount Points"), translate("Mount Points define at which point a memory device will be attached to the filesystem"))
mount.anonymous = true
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua
index 2652e00f25..f5751673fd 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua
@@ -112,7 +112,7 @@ o.default = [[
mkdir -p /tmp/extroot
mount --bind / /tmp/introot
mount /dev/sda1 /tmp/extroot
-tar -C /tmp/intproot -cvf - . | tar -C /tmp/extroot -xf -
+tar -C /tmp/introot -cvf - . | tar -C /tmp/extroot -xf -
umount /tmp/introot
umount /tmp/extroot</pre>
]] %{
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua
index 2f3c4927b3..7c6d7e1c66 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua
@@ -3,12 +3,15 @@
-- Licensed to the public under the Apache License 2.0.
local ipkgfile = "/etc/opkg.conf"
+local distfeeds = "/etc/opkg/distfeeds.conf"
+local customfeeds = "/etc/opkg/customfeeds.conf"
-f = SimpleForm("ipkgconf", translate("OPKG-Configuration"))
+f = SimpleForm("ipkgconf", translate("OPKG-Configuration"), translate("General options for opkg"))
f:append(Template("admin_system/ipkg"))
t = f:field(TextValue, "lines")
+t.wrap = "off"
t.rows = 10
function t.cfgvalue()
return nixio.fs.readfile(ipkgfile) or ""
@@ -22,4 +25,40 @@ function f.handle(self, state, data)
return true
end
-return f
+g = SimpleForm("distfeedconf", translate("Distribution feeds"),
+ translate("Build/distribution specific feed definitions. This file will NOT be preserved in any sysupgrade."))
+
+d = g:field(TextValue, "lines2")
+d.wrap = "off"
+d.rows = 10
+function d.cfgvalue()
+ return nixio.fs.readfile(distfeeds) or ""
+end
+
+function d.write(self, section, data)
+ return nixio.fs.writefile(distfeeds, data:gsub("\r\n", "\n"))
+end
+
+function g.handle(self, state, data)
+ return true
+end
+
+h = SimpleForm("customfeedconf", translate("Custom feeds"),
+ translate("Custom feed definitions, e.g. private feeds. This file can be preserved in a sysupgrade."))
+
+c = h:field(TextValue, "lines3")
+c.wrap = "off"
+c.rows = 10
+function c.cfgvalue()
+ return nixio.fs.readfile(customfeeds) or ""
+end
+
+function c.write(self, section, data)
+ return nixio.fs.writefile(customfeeds, data:gsub("\r\n", "\n"))
+end
+
+function h.handle(self, state, data)
+ return true
+end
+
+return f, g, h
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua
index 94ba8053ad..2874b5607e 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua
@@ -204,7 +204,7 @@ if has_ntpd then
o = s:option(DynamicList, "server", translate("NTP server candidates"))
- o.datatype = "host"
+ o.datatype = "host(0)"
o:depends("enable", "1")
-- retain server list even if disabled
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm
index 05c866128d..685082a335 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm
@@ -34,7 +34,7 @@ local has_traceroute6 = fs.access("/usr/bin/traceroute6")
legend.parentNode.style.display = 'block';
legend.style.display = 'inline';
- stxhr.get('<%=luci.dispatcher.build_url("admin", "network")%>/diag_' + tool + protocol + '/' + addr, null,
+ stxhr.post('<%=url('admin/network')%>/diag_' + tool + protocol + '/' + addr, { token: '<%=token%>' },
function(x)
{
if (x.responseText)
@@ -53,9 +53,9 @@ local has_traceroute6 = fs.access("/usr/bin/traceroute6")
}
//]]></script>
-<form method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
+<form method="post" action="<%=url('admin/network/diagnostics')%>">
<div class="cbi-map">
- <h2><a id="content" name="content"><%:Diagnostics%></a></h2>
+ <h2 name="content"><%:Diagnostics%></h2>
<fieldset class="cbi-section">
<legend><%:Network Utilities%></legend>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm
index 1de349856e..646d931f37 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm
@@ -49,7 +49,7 @@
s.innerHTML = '<%:Waiting for changes to be applied...%>';
}
- XHR.get('<%=luci.dispatcher.build_url("admin", "network")%>/iface_' + (reconnect ? 'reconnect' : 'shutdown') + '/' + id, null,
+ (new XHR()).post('<%=url('admin/network')%>/iface_' + (reconnect ? 'reconnect' : 'shutdown') + '/' + id, { token: '<%=token%>' },
function(x)
{
if (s)
@@ -66,12 +66,22 @@
);
}
+ function iface_delete(id) {
+ if (!confirm('<%:Really delete this interface? The deletion cannot be undone!\nYou might lose access to this device if you are connected via this interface.%>'))
+ return;
+
+ (new XHR()).post('<%=url('admin/network/iface_delete')%>/' + id, { token: '<%=token%>' },
+ function(x) {
+ location.href = '<%=url('admin/network/network')%>';
+ }
+ );
+ }
var iwxhr = new XHR();
var wifidevs = <%=luci.http.write_json(netdevs)%>;
var arptable = <%=luci.http.write_json(arpcache)%>;
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "iface_status", table.concat(ifaces, ","))%>', null,
+ XHR.poll(5, '<%=url('admin/network/iface_status', table.concat(ifaces, ","))%>', null,
function(x, ifcs)
{
if (ifcs)
@@ -125,7 +135,7 @@
html += String.format('<strong><%:Uptime%>:</strong> %t<br />', ifc.uptime);
}
- if (ifc.type != 'tunnel')
+ if (ifc.macaddr)
{
html += String.format('<strong><%:MAC-Address%>:</strong> %s<br />', ifc.macaddr);
}
@@ -139,32 +149,20 @@
if (ifc.ipaddrs && ifc.ipaddrs.length)
{
- html += '<strong><%:IPv4%>: </strong>';
-
for (var i = 0; i < ifc.ipaddrs.length; i++)
html += String.format(
- '%s%s/%d',
- i ? ', ' : '',
- ifc.ipaddrs[i].addr,
- ifc.ipaddrs[i].prefix
+ '<strong><%:IPv4%>:</strong> %s<br />',
+ ifc.ipaddrs[i]
);
-
- html += '<br />';
}
if (ifc.ip6addrs && ifc.ip6addrs.length)
{
- html += '<strong><%:IPv6%>: </strong>';
-
for (var i = 0; i < ifc.ip6addrs.length; i++)
html += String.format(
- '%s%s/%d',
- i ? ', ' : '',
- ifc.ip6addrs[i].addr.toUpperCase(),
- ifc.ip6addrs[i].prefix
+ '<strong><%:IPv6%>:</strong> %s<br />',
+ ifc.ip6addrs[i]
);
-
- html += '<br />';
}
d.innerHTML = html;
@@ -178,14 +176,14 @@
d.innerHTML = String.format(
'<em><%:Unsupported protocol type.%></em><br />' +
'<a href="%h"><%:Install protocol extensions...%></a>',
- '<%=luci.dispatcher.build_url("admin/system/packages")%>?query=luci-proto&display=available'
+ '<%=url("admin/system/packages")%>?query=luci-proto&display=available'
);
}
else if (d && !ifc.ifname)
{
d.innerHTML = String.format(
'<em><%:Network without interfaces.%></em><br />' +
- '<a href="<%=luci.dispatcher.build_url("admin/network/network/%s")%>?tab.network.%s=physical"><%:Assign interfaces...%></a>',
+ '<a href="<%=url("admin/network/network/%s")%>?tab.network.%s=physical"><%:Assign interfaces...%></a>',
ifc.name, ifc.name
);
}
@@ -239,13 +237,13 @@
<td style="width:420px">
<input type="button" class="cbi-button cbi-button-reload" style="width:100px" onclick="iface_shutdown('<%=net[1]%>', true)" title="<%:Reconnect this interface%>" value="<%:Connect%>" />
<input type="button" class="cbi-button cbi-button-reset" style="width:100px" onclick="iface_shutdown('<%=net[1]%>', false)" title="<%:Shutdown this interface%>" value="<%:Stop%>" />
- <input type="button" class="cbi-button cbi-button-edit" style="width:100px" onclick="location.href='<%=luci.dispatcher.build_url("admin/network/network", net[1])%>'" title="<%:Edit this interface%>" value="<%:Edit%>" id="<%=net[1]%>-ifc-edit" />
- <input type="button" class="cbi-button cbi-button-remove" style="width:100px" onclick="if (confirm('<%:Really delete this interface? The deletion cannot be undone!\nYou might lose access to this device if you are connected via this interface.%>')) location.href='<%=luci.dispatcher.build_url("admin/network/iface_delete", net[1])%>'" title="<%:Delete this interface%>" value="<%:Delete%>" />
+ <input type="button" class="cbi-button cbi-button-edit" style="width:100px" onclick="location.href='<%=url("admin/network/network", net[1])%>'" title="<%:Edit this interface%>" value="<%:Edit%>" id="<%=net[1]%>-ifc-edit" />
+ <input type="button" class="cbi-button cbi-button-remove" style="width:100px" onclick="iface_delete('<%=net[1]%>')" value="<%:Delete%>" />
</td>
</tr>
<% end %>
</table>
- <input type="button" class="cbi-button cbi-button-add" value="<%:Add new interface...%>" onclick="location.href='<%=luci.dispatcher.build_url("admin/network/iface_add")%>'" />
+ <input type="button" class="cbi-button cbi-button-add" value="<%:Add new interface...%>" onclick="location.href='<%=url("admin/network/iface_add")%>'" />
</fieldset>
</div>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm
index 8136383969..94d9e88117 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm
@@ -1,7 +1,7 @@
<%+cbi/valueheader%>
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "iface_status", self.network)%>', null,
+ XHR.poll(5, '<%=url('admin/network/iface_status', self.network)%>', null,
function(x, ifc)
{
if (ifc && (ifc = ifc[0]))
@@ -25,7 +25,7 @@
html += String.format('<strong><%:Uptime%>:</strong> %t<br />', ifc.uptime);
}
- if (ifc.type != 'tunnel')
+ if (ifc.macaddr)
{
html += String.format('<strong><%:MAC-Address%>:</strong> %s<br />', ifc.macaddr);
}
@@ -43,10 +43,9 @@
for (var i = 0; i < ifc.ipaddrs.length; i++)
html += String.format(
- '%s%s/%d',
+ '%s%s',
i ? ', ' : '',
- ifc.ipaddrs[i].addr,
- ifc.ipaddrs[i].prefix
+ ifc.ipaddrs[i]
);
html += '<br />';
@@ -58,10 +57,9 @@
for (var i = 0; i < ifc.ip6addrs.length; i++)
html += String.format(
- '%s%s/%d',
+ '%s%s',
i ? ', ' : '',
- ifc.ip6addrs[i].addr.toUpperCase(),
- ifc.ip6addrs[i].prefix
+ ifc.ip6addrs[i].toUpperCase()
);
html += '<br />';
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm
index 0ba334ee9d..ab8e732573 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm
@@ -1,5 +1,5 @@
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "dhcplease_status")%>', null,
+ XHR.poll(5, '<%=url('admin/network/dhcplease_status')%>', null,
function(x, st)
{
var tb = document.getElementById('lease_status_table');
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm
index b299575e2f..53c35ae59c 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm
@@ -1,6 +1,6 @@
<script type="text/javascript">//<![CDATA[
var switches = [ '<%=table.concat(self.switches, "', '")%>' ];
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "switch_status")%>/' + switches.join(','), null,
+ XHR.poll(5, '<%=url('admin/network/switch_status')%>/' + switches.join(','), null,
function(x, st)
{
for (var i = 0; i < switches.length; i++)
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm
index 90cc4c03e1..3533c6fa4d 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm
@@ -1,5 +1,5 @@
<%#
- Copyright 2009 Jo-Philipp Wich <jow@openwrt.org>
+ Copyright 2009-2015 Jo-Philipp Wich <jow@openwrt.org>
Licensed to the public under the Apache License 2.0.
-%>
@@ -87,7 +87,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Join Network: Wireless Scan%></a></h2>
+<h2 name="content"><%:Join Network: Wireless Scan%></h2>
<div class="cbi-map">
<fieldset class="cbi-section">
@@ -109,7 +109,8 @@
<strong>Encryption:</strong> <%=format_wifi_encryption(net.encryption)%>
</td>
<td class="cbi-value-field" style="width:40px">
- <form action="<%=REQUEST_URI%>" method="post">
+ <form action="<%=url('admin/network/wireless_join')%>" method="post">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="device" value="<%=utl.pcdata(dev)%>" />
<input type="hidden" name="join" value="<%=utl.pcdata(net.ssid)%>" />
<input type="hidden" name="mode" value="<%=net.mode%>" />
@@ -135,10 +136,11 @@
</fieldset>
</div>
<div class="cbi-page-actions right">
- <form class="inline" action="<%=luci.dispatcher.build_url("admin/network/wireless")%>" method="get">
+ <form class="inline" action="<%=url("admin/network/wireless")%>" method="get">
<input class="cbi-button cbi-button-reset" type="submit" value="<%:Back to overview%>" />
</form>
- <form class="inline" action="<%=REQUEST_URI%>" method="get">
+ <form class="inline" action="<%=url('admin/network/wireless_join')%>" method="post">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="device" value="<%=utl.pcdata(dev)%>" />
<input class="cbi-button cbi-input-find" type="submit" value="<%:Repeat scan%>" />
</form>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm
index 4fc268e66c..f82d06dcdc 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm
@@ -149,7 +149,7 @@
st.innerHTML = '<em><%:Wireless is restarting...%></em>';
}
- XHR.get('<%=luci.dispatcher.build_url("admin", "network")%>/wireless_' + (reconnect ? 'reconnect' : 'shutdown') + '/' + id, null,
+ (new XHR()).post('<%=url('admin/network')%>/wireless_' + (reconnect ? 'reconnect' : 'shutdown') + '/' + id, { token: '<%=token%>' },
function(x)
{
if (s)
@@ -167,7 +167,18 @@
);
}
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "wireless_status", table.concat(netlist, ","))%>', null,
+ function wifi_delete(id) {
+ if (!confirm('<%:Really delete this wireless network? The deletion cannot be undone!\nYou might lose access to this device if you are connected via this network.%>'))
+ return;
+
+ (new XHR()).post('<%=url('admin/network/wireless_delete')%>/' + id, { token: '<%=token%>' },
+ function(x) {
+ location.href = '<%=url('admin/network/wireless')%>';
+ }
+ );
+ }
+
+ XHR.poll(5, '<%=url('admin/network/wireless_status', table.concat(netlist, ","))%>', null,
function(x, st)
{
if (st)
@@ -348,7 +359,7 @@
);
//]]></script>
-<h2><a id="content" name="content"><%:Wireless Overview%></a></h2>
+<h2 name="content"><%:Wireless Overview%></h2>
<fieldset class="cbi-section" style="display:none">
<legend><%:Reconnecting interface%></legend>
@@ -370,8 +381,16 @@
<span id="<%=dev:name()%>-iw-devinfo"></span>
</td>
<td style="width:310px;text-align:right">
- <input type="button" class="cbi-button cbi-button-find" style="width:100px" onclick="location.href='<%=luci.dispatcher.build_url("admin/network/wireless_join")%>?device=<%=dev:name()%>'" title="<%:Find and join network%>" value="<%:Scan%>" />
- <input type="button" class="cbi-button cbi-button-add" style="width:100px" onclick="location.href='<%=luci.dispatcher.build_url("admin/network/wireless_add")%>?device=<%=dev:name()%>'" title="<%:Provide new network%>" value="<%:Add%>" />
+ <form action="<%=url('admin/network/wireless_join')%>" method="post" class="inline">
+ <input type="hidden" name="device" value="<%=dev:name()%>" />
+ <input type="hidden" name="token" value="<%=token%>" />
+ <input type="submit" class="cbi-button cbi-button-find" style="width:100px" title="<%:Find and join network%>" value="<%:Scan%>" />
+ </form>
+ <form action="<%=url('admin/network/wireless_add')%>" method="post" class="inline">
+ <input type="hidden" name="device" value="<%=dev:name()%>" />
+ <input type="hidden" name="token" value="<%=token%>" />
+ <input type="submit" class="cbi-button cbi-button-add" style="width:100px" title="<%:Provide new network%>" value="<%:Add%>" />
+ </form>
</td>
</tr>
<!-- /physical device -->
@@ -391,7 +410,7 @@
<td class="cbi-value-field" style="width:310px;text-align:right">
<input id="<%=net:id()%>-iw-toggle" type="button" class="cbi-button cbi-button-reload" style="width:100px" onclick="wifi_shutdown('<%=net:id()%>', this)" title="<%:Delete this network%>" value="<%:Enable%>" />
<input type="button" class="cbi-button cbi-button-edit" style="width:100px" onclick="location.href='<%=net:adminlink()%>'" title="<%:Edit this network%>" value="<%:Edit%>" />
- <input type="button" class="cbi-button cbi-button-remove" style="width:100px" onclick="if (confirm('<%:Really delete this wireless network? The deletion cannot be undone!\nYou might lose access to this device if you are connected via this network.%>')) location.href='<%=luci.dispatcher.build_url("admin/network/wireless_delete", net:ifname())%>'" title="<%:Delete this network%>" value="<%:Remove%>" />
+ <input type="button" class="cbi-button cbi-button-remove" style="width:100px" onclick="wifi_delete('<%=net:ifname()%>')" title="<%:Delete this network%>" value="<%:Remove%>" />
</td>
</tr>
<% end %>
@@ -410,7 +429,7 @@
<% end %>
- <h2><a id="content" name="content"><%:Associated Stations%></a></h2>
+ <h2><%:Associated Stations%></h2>
<fieldset class="cbi-section">
<table class="cbi-section-table" style="margin:10px" id="iw-assoclist">
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm b/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm
index fa0a97b707..04687f38e7 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm
@@ -1,7 +1,7 @@
<%+cbi/valueheader%>
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "wireless_status", self.ifname)%>', null,
+ XHR.poll(5, '<%=url('admin/network/wireless_status', self.ifname)%>', null,
function(x, iw)
{
if (iw && (iw = iw[0]))
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm
index dbcf06beef..04da3c1239 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm
@@ -264,7 +264,7 @@
);
//]]></script>
-<h2><a id="content" name="content"><%:Realtime Traffic%></a></h2>
+<h2 name="content"><%:Realtime Traffic%></h2>
<ul class="cbi-tabmenu">
<% for _, dev in ipairs(devices) do %>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/connections.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/connections.htm
index 64b950e24b..0b2e52e059 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/connections.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/connections.htm
@@ -312,7 +312,7 @@
);
//]]></script>
-<h2><a id="content" name="content"><%:Realtime Connections%></a></h2>
+<h2 name="content"><%:Realtime Connections%></h2>
<div class="cbi-map-descr"><%:This page gives an overview over currently active network connections.%></div>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm
index a63bb71128..c119b57296 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:Kernel Log%></a></h2>
+<h2 name="content"><%:Kernel Log%></h2>
<div id="content_syslog">
<textarea readonly="readonly" wrap="off" rows="<%=dmesg:cmatch("\n")+2%>" id="syslog"><%=dmesg:pcdata()%></textarea>
</div>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm
index 07a96b2bf0..62188e45e2 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm
@@ -88,7 +88,9 @@
if has_dsl then
local dsl_stat = luci.sys.exec("/etc/init.d/dsl_control lucistat")
local dsl_func = loadstring(dsl_stat)
- rv.dsl = dsl_func()
+ if dsl_func then
+ rv.dsl = dsl_func()
+ end
end
luci.http.prepare_content("application/json")
@@ -550,7 +552,7 @@
);
//]]></script>
-<h2><a id="content" name="content"><%:Status%></a></h2>
+<h2 name="content"><%:Status%></h2>
<fieldset class="cbi-section">
<legend><%:System%></legend>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm
index ba2933adef..f49469a599 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm
@@ -1,6 +1,6 @@
<%#
Copyright 2008-2009 Steven Barth <steven@midlink.org>
- Copyright 2008-2011 Jo-Philipp Wich <jow@openwrt.org>
+ Copyright 2008-2015 Jo-Philipp Wich <jow@openwrt.org>
Licensed to the public under the Apache License 2.0.
-%>
@@ -37,7 +37,7 @@
local net = wba.iface_get_network(i)
if net and i ~= "lo" then
return '<a href="%s">%s</a>' %{
- luci.dispatcher.build_url("admin", "network", "network", net), i
+ url("admin/network/network", net), i
}
end
@@ -59,91 +59,88 @@
}
</style>
-<h2><a id="content" name="content"><%:Firewall Status%></a></h2>
+<h2 name="content"><%:Firewall Status%></h2>
+<br />
<% if has_ip6tables then %>
<ul class="cbi-tabmenu">
- <li class="cbi-tab<%= mode ~= 4 and "-disabled" %>"><a href="<%=luci.dispatcher.build_url("admin/status/iptables/4")%>"><%:IPv4 Firewall%></a></li>
- <li class="cbi-tab<%= mode ~= 6 and "-disabled" %>"><a href="<%=luci.dispatcher.build_url("admin/status/iptables/6")%>"><%:IPv6 Firewall%></a></li>
+ <li class="cbi-tab<%= mode ~= 4 and "-disabled" %>"><a href="<%=url("admin/status/iptables/4")%>"><%:IPv4 Firewall%></a></li>
+ <li class="cbi-tab<%= mode ~= 6 and "-disabled" %>"><a href="<%=url("admin/status/iptables/6")%>"><%:IPv6 Firewall%></a></li>
</ul>
<% end %>
-<form method="post" action="<%=REQUEST_URI%>">
- <div class="cbi-map">
- <fieldset class="cbi-section">
- <h3><%:Actions%></h3>
- <ul>
- <li><a href="<%=REQUEST_URI%>?zero=<%=mode%>"><%:Reset Counters%></a></li>
- <li><a href="<%=REQUEST_URI%>?restart=1"><%:Restart Firewall%></a></li>
- </ul>
- <br /><br />
-
- <% for _, tbl in ipairs(tables) do chaincnt = 0 %>
- <h3><%:Table%>: <%=tbl%></h3>
- <table class="cbi-section-table" style="font-size:90%">
- <% for _, chain in ipairs(ipt:chains(tbl)) do
- rowcnt = 0
- chaincnt = chaincnt + 1
- chaininfo = ipt:chain(tbl, chain)
- %>
- <tr class="cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
- <th class="cbi-section-table-cell" style="text-align:left" colspan="11">
- <br /><span id="rule_<%=tbl:lower()%>_<%=chain%>">
- <%:Chain%> <em><%=chain%></em>
- (<%- if chaininfo.policy then -%>
- <%:Policy%>: <em><%=chaininfo.policy%></em>, <%:Packets%>: <%=chaininfo.packets%>, <%:Traffic%>: <%=wba.byte_format(chaininfo.bytes)-%>
- <%- else -%>
- <%:References%>: <%=chaininfo.references-%>
- <%- end -%>)</span>
- </th>
+<div class="cbi-map" style="position: relative">
+
+ <form method="post" action="<%=url("admin/status/iptables_action")%>" style="position: absolute; right: 0">
+ <input type="hidden" name="token" value="<%=token%>" />
+ <input type="hidden" name="family" value="<%=mode%>" />
+ <input type="submit" class="cbi-button" name="zero" value="<%:Reset Counters%>" />
+ <input type="submit" class="cbi-button" name="restart" value="<%:Restart Firewall%>" />
+ </form>
+
+ <fieldset class="cbi-section">
+
+ <% for _, tbl in ipairs(tables) do chaincnt = 0 %>
+ <h3><%:Table%>: <%=tbl%></h3>
+ <table class="cbi-section-table" style="font-size:90%">
+ <% for _, chain in ipairs(ipt:chains(tbl)) do
+ rowcnt = 0
+ chaincnt = chaincnt + 1
+ chaininfo = ipt:chain(tbl, chain)
+ %>
+ <tr class="cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
+ <th class="cbi-section-table-cell" style="text-align:left" colspan="11">
+ <br /><span id="rule_<%=tbl:lower()%>_<%=chain%>">
+ <%:Chain%> <em><%=chain%></em>
+ (<%- if chaininfo.policy then -%>
+ <%:Policy%>: <em><%=chaininfo.policy%></em>, <%:Packets%>: <%=chaininfo.packets%>, <%:Traffic%>: <%=wba.byte_format(chaininfo.bytes)-%>
+ <%- else -%>
+ <%:References%>: <%=chaininfo.references-%>
+ <%- end -%>)</span>
+ </th>
+ </tr>
+ <tr class="cbi-section-table-descr">
+ <th class="cbi-section-table-cell"><%:Pkts.%></th>
+ <th class="cbi-section-table-cell"><%:Traffic%></th>
+ <th class="cbi-section-table-cell"><%:Target%></th>
+ <th class="cbi-section-table-cell"><%:Prot.%></th>
+ <th class="cbi-section-table-cell"><%:In%></th>
+ <th class="cbi-section-table-cell"><%:Out%></th>
+ <th class="cbi-section-table-cell"><%:Source%></th>
+ <th class="cbi-section-table-cell"><%:Destination%></th>
+ <th class="cbi-section-table-cell" style="width:30%"><%:Options%></th>
+ </tr>
+
+ <% for _, rule in ipairs(ipt:find({table=tbl, chain=chain})) do %>
+ <tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
+ <td><%=rule.packets%></td>
+ <td style="white-space: nowrap"><%=wba.byte_format(rule.bytes)%></td>
+ <td><%=rule.target and link_target(tbl, rule.target) or "-"%></td>
+ <td><%=rule.protocol%></td>
+ <td><%=link_iface(rule.inputif)%></td>
+ <td><%=link_iface(rule.outputif)%></td>
+ <td><%=rule.source%></td>
+ <td><%=rule.destination%></td>
+ <td style="width:30%"><small><%=#rule.options > 0 and luci.util.pcdata(table.concat(rule.options, " ")) or "-"%></small></td>
</tr>
- <tr class="cbi-section-table-descr">
- <th class="cbi-section-table-cell"><%:Rule #%></th>
- <th class="cbi-section-table-cell"><%:Pkts.%></th>
- <th class="cbi-section-table-cell"><%:Traffic%></th>
- <th class="cbi-section-table-cell"><%:Target%></th>
- <th class="cbi-section-table-cell"><%:Prot.%></th>
- <th class="cbi-section-table-cell"><%:Flags%></th>
- <th class="cbi-section-table-cell"><%:In%></th>
- <th class="cbi-section-table-cell"><%:Out%></th>
- <th class="cbi-section-table-cell"><%:Source%></th>
- <th class="cbi-section-table-cell"><%:Destination%></th>
- <th class="cbi-section-table-cell" style="width:30%"><%:Options%></th>
- </tr>
-
- <% for _, rule in ipairs(ipt:find({table=tbl, chain=chain})) do %>
- <tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
- <td><%=rule.index%></td>
- <td><%=rule.packets%></td>
- <td><%=wba.byte_format(rule.bytes)%></td>
- <td><%=rule.target and link_target(tbl, rule.target) or "-"%></td>
- <td><%=rule.protocol%></td>
- <td><%=rule.flags%></td>
- <td><%=link_iface(rule.inputif)%></td>
- <td><%=link_iface(rule.outputif)%></td>
- <td><%=rule.source%></td>
- <td><%=rule.destination%></td>
- <td style="width:30%"><small><%=#rule.options > 0 and luci.util.pcdata(table.concat(rule.options, " ")) or "-"%></small></td>
- </tr>
- <% end %>
-
- <% if rowcnt == 1 then %>
- <tr class="cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
- <td colspan="11"><em><%:No rules in this chain%></em></td>
- </tr>
- <% end %>
<% end %>
- <% if chaincnt == 0 then %>
+ <% if rowcnt == 1 then %>
<tr class="cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
- <td colspan="11"><em><%:No chains in this table%></em></td>
+ <td colspan="9"><em><%:No rules in this chain%></em></td>
</tr>
<% end %>
- </table>
- <br /><br />
- <% end %>
- </fieldset>
- </div>
-</form>
+ <% end %>
+
+ <% if chaincnt == 0 then %>
+ <tr class="cbi-section-table-titles cbi-rowstyle-<%=rowstyle()%>">
+ <td colspan="9"><em><%:No chains in this table%></em></td>
+ </tr>
+ <% end %>
+ </table>
+ <br /><br />
+ <% end %>
+ </fieldset>
+</div>
<%+footer%>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/load.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/load.htm
index d095948e50..97a2f5ed59 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/load.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/load.htm
@@ -242,7 +242,7 @@
);
//]]></script>
-<h2><a id="content" name="content"><%:Realtime Load%></a></h2>
+<h2 name="content"><%:Realtime Load%></h2>
<embed id="bwsvg" style="width:100%; height:300px; border:1px solid #000000; background-color:#FFFFFF" src="<%=resource%>/load.svg" />
<div style="text-align:right"><small id="scale">-</small></div>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/routes.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/routes.htm
index 82dd3a7dfe..5f2c074939 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/routes.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/routes.htm
@@ -33,7 +33,7 @@
<%+header%>
<div class="cbi-map" id="cbi-network">
- <h2><a id="content" name="content"><%:Routes%></a></h2>
+ <h2 name="content"><%:Routes%></h2>
<div class="cbi-map-descr"><%:The following rules are currently active on this system.%></div>
<fieldset class="cbi-section">
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm
index 40032a1426..b87f21d08d 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:System Log%></a></h2>
+<h2 name="content"><%:System Log%></h2>
<div id="content_syslog">
<textarea readonly="readonly" wrap="off" rows="<%=syslog:cmatch("\n")+2%>" id="syslog"><%=syslog:pcdata()%></textarea>
</div>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm b/modules/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm
index 025fece90b..f185926104 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm
@@ -314,7 +314,7 @@
);
//]]></script>
-<h2><a id="content" name="content"><%:Realtime Wireless%></a></h2>
+<h2 name="content"><%:Realtime Wireless%></h2>
<ul class="cbi-tabmenu">
<% for _, dev in ipairs(devices) do %>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm
index 15c96e34df..e722a48096 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm
@@ -25,7 +25,7 @@
<body>
<div id="maincontainer">
<div id="maincontent">
- <h2><a id="content" name="content"><%:System%> - <% if title then %><%=title%><% else %><%:Rebooting...%><% end %></a></h2>
+ <h2 name="content"><%:System%> - <% if title then %><%=title%><% else %><%:Rebooting...%><% end %></h2>
<fieldset class="cbi-section">
<p>
<% if msg then %><%=msg%><% else %><%:Changes applied.%><% end %>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm
index 0a6df109df..c1f3361ae2 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm
@@ -5,6 +5,6 @@
-%>
<ul class="cbi-tabmenu">
- <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/system/flashops")%>"><%:Actions%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=url("admin/system/flashops")%>"><%:Actions%></a></li>
<li class="cbi-tab"><a href="#"><%:Configuration%></a></li>
</ul>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm
index 84e151075f..37d8ae0e85 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm
@@ -1,7 +1,7 @@
<%+cbi/valueheader%>
<script type="text/javascript">//<![CDATA[
- XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "system", "clock_status")%>', null,
+ XHR.poll(5, '<%=url('admin/system/clock_status')%>', null,
function(x, rv)
{
var s = document.getElementById('<%=self.option%>-clock-status');
@@ -17,8 +17,8 @@
btn.disabled = true;
btn.value = '<%:Synchronizing...%>';
- XHR.get('<%=luci.dispatcher.build_url("admin", "system", "clock_status")%>',
- { set: Math.floor((new Date()).getTime() / 1000) },
+ (new XHR()).post('<%=url('admin/system/clock_status')%>',
+ { token: '<%=token%>', set: Math.floor((new Date()).getTime() / 1000) },
function()
{
btn.disabled = false;
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm
index bea565aa05..82a1fdbc9c 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm
@@ -1,12 +1,12 @@
<%#
Copyright 2008 Steven Barth <steven@midlink.org>
- Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
+ Copyright 2008-2015 Jo-Philipp Wich <jow@openwrt.org>
Licensed to the public under the Apache License 2.0.
-%>
<%+header%>
-<h2><a id="content" name="content"><%:Flash operations%></a></h2>
+<h2 name="content"><%:Flash operations%></h2>
<ul class="cbi-tabmenu">
<li class="cbi-tab"><a href="#"><%:Actions%></a></li>
@@ -17,36 +17,43 @@
<fieldset class="cbi-section">
<legend><%:Backup / Restore%></legend>
- <form method="post" action="<%=REQUEST_URI%>" enctype="multipart/form-data">
- <div class="cbi-section-descr"><%:Click "Generate archive" to download a tar archive of the current configuration files. To reset the firmware to its initial state, click "Perform reset" (only possible with squashfs images).%></div>
- <div class="cbi-section-node">
+ <div class="cbi-section-descr"><%:Click "Generate archive" to download a tar archive of the current configuration files. To reset the firmware to its initial state, click "Perform reset" (only possible with squashfs images).%></div>
+ <div class="cbi-section-node">
+ <form class="inline" method="post" action="<%=url('admin/system/flashops/backup')%>">
+ <input type="hidden" name="token" value="<%=token%>" />
<div class="cbi-value<% if not reset_avail then %> cbi-value-last<% end %>">
<label class="cbi-value-title" for="image"><%:Download backup%>:</label>
<div class="cbi-value-field">
<input class="cbi-button cbi-button-apply" type="submit" name="backup" value="<%:Generate archive%>" />
</div>
</div>
- <% if reset_avail then %>
+ </form>
+ <% if reset_avail then %>
+ <form class="inline" method="post" action="<%=url('admin/system/flashops/reset')%>">
+ <input type="hidden" name="token" value="<%=token%>" />
<div class="cbi-value cbi-value-last">
<label class="cbi-value-title"><%:Reset to defaults%>:</label>
<div class="cbi-value-field">
<input onclick="return confirm('<%:Really reset all changes?%>')" class="cbi-button cbi-button-reset" type="submit" name="reset" value="<%:Perform reset%>" />
</div>
</div>
- <% end %>
- </div>
- <br />
- <div class="cbi-section-descr"><%:To restore configuration files, you can upload a previously generated backup archive here.%></div>
- <div class="cbi-section-node">
+ </form>
+ <% end %>
+ </div>
+ <br />
+ <div class="cbi-section-descr"><%:To restore configuration files, you can upload a previously generated backup archive here.%></div>
+ <div class="cbi-section-node">
+ <form class="inline" method="post" action="<%=url('admin/system/flashops/restore')%>" enctype="multipart/form-data">
<div class="cbi-value cbi-value-last">
<label class="cbi-value-title" for="archive"><%:Restore backup%>:</label>
<div class="cbi-value-field">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="file" name="archive" id="archive" />
<input type="submit" class="cbi-button cbi-input-apply" name="restore" value="<%:Upload archive...%>" />
</div>
</div>
- </div>
- </form>
+ </form>
+ </div>
</fieldset>
<br />
@@ -54,7 +61,8 @@
<fieldset class="cbi-section">
<legend><%:Flash new firmware image%></legend>
<% if upgrade_avail then %>
- <form method="post" action="<%=REQUEST_URI%>" enctype="multipart/form-data">
+ <form method="post" action="<%=url('admin/system/flashops/sysupgrade')%>" enctype="multipart/form-data">
+ <input type="hidden" name="token" value="<%=token%>" />
<div class="cbi-section-descr"><%:Upload a sysupgrade-compatible image here to replace the running firmware. Check "Keep settings" to retain the current configuration (requires an OpenWrt compatible firmware image).%></div>
<div class="cbi-section-node">
<div class="cbi-value">
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm
index 6b812e837e..a7ff4e50bd 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm
@@ -5,6 +5,6 @@
-%>
<ul class="cbi-tabmenu">
- <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/system/packages")%>"><%:Actions%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=url("admin/system/packages")%>"><%:Actions%></a></li>
<li class="cbi-tab"><a href="#"><%:Configuration%></a></li>
</ul>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/packages.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/packages.htm
index 1ceda47852..1bc9caceda 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/packages.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/packages.htm
@@ -44,19 +44,20 @@ end
<%+header%>
-<h2><a id="content" name="content"><%:Software%></a></h2>
+<h2 name="content"><%:Software%></h2>
-<form method="post" action="<%=REQUEST_URI%>">
- <div class="cbi-map">
+<div class="cbi-map">
- <ul class="cbi-tabmenu">
- <li class="cbi-tab"><a href="#"><%:Actions%></a></li>
- <li class="cbi-tab-disabled"><a href="<%=REQUEST_URI%>/ipkg"><%:Configuration%></a></li>
- </ul>
-
- <fieldset class="cbi-section">
+ <ul class="cbi-tabmenu">
+ <li class="cbi-tab"><a href="#"><%:Actions%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=REQUEST_URI%>/ipkg"><%:Configuration%></a></li>
+ </ul>
+ <form method="post" action="<%=REQUEST_URI%>">
+ <input type="hidden" name="exec" value="1" />
+ <input type="hidden" name="token" value="<%=token%>" />
+ <fieldset class="cbi-section">
<fieldset class="cbi-section-node">
<% if (install and next(install)) or (remove and next(remove)) or update or upgrade then %>
<div class="cbi-value">
@@ -80,7 +81,7 @@ end
<% else %>
<%:No package lists available%>
<% end %>
- <input type="button" onclick="location.href='?update=1'" href="#" class="cbi-button cbi-button-apply" style="margin-left:3em" value="<%:Update lists%>" />
+ <input type="submit" name="update" href="#" class="cbi-button cbi-button-apply" style="margin-left:3em" value="<%:Update lists%>" />
</div>
<% end %>
@@ -101,7 +102,7 @@ end
<label class="cbi-value-title"><%:Download and install package%>:</label>
<div class="cbi-value-field">
<input type="text" name="url" size="30" value="" />
- <input class="cbi-button cbi-input-save" type="submit" name="submit" value="<%:OK%>" />
+ <input class="cbi-button cbi-input-save" type="submit" name="exec" value="<%:OK%>" />
</div>
</div>
@@ -114,80 +115,98 @@ end
</div>
</fieldset>
</fieldset>
- <br />
-
- <h3><%:Status%></h3>
-
-
- <ul class="cbi-tabmenu">
- <li class="cbi-tab<% if display ~= "installed" then %>-disabled<% end %>"><a href="?display=installed&amp;query=<%=pcdata(query)%>"><%:Installed packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
- <li class="cbi-tab<% if display ~= "available" then %>-disabled<% end %>"><a href="?display=available&amp;query=<%=pcdata(query)%>"><%:Available packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
- </ul>
-
- <% if display ~= "available" then %>
- <fieldset class="cbi-section">
- <table class="cbi-section-table" style="width:100%">
- <tr class="cbi-section-table-titles">
- <th class="cbi-section-table-cell" style="text-align:left">&#160;</th>
- <th class="cbi-section-table-cell" style="text-align:left"><%:Package name%></th>
- <th class="cbi-section-table-cell" style="text-align:left"><%:Version%></th>
- </tr>
- <% local empty = true; luci.model.ipkg.list_installed(querypat, function(n, v, d) empty = false; filter[n] = true %>
- <tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
- <td style="text-align:left; width:10%"><a onclick="return window.confirm('<%:Remove%> &quot;<%=luci.util.pcdata(n)%>&quot; ?')" href="<%=REQUEST_URI%>?submit=1&amp;remove=<%=luci.util.pcdata(n)%>"><%:Remove%></a></td>
- <td style="text-align:left"><%=luci.util.pcdata(n)%></td>
- <td style="text-align:left"><%=luci.util.pcdata(v)%></td>
- </tr>
- <% end) %>
- <% if empty then %>
- <tr class="cbi-section-table-row">
- <td style="text-align:left">&#160;</td>
- <td style="text-align:left"><em><%:none%></em></td>
- <td style="text-align:left"><em><%:none%></em></td>
- </tr>
- <% end %>
- </table>
- </fieldset>
- <% else %>
- <fieldset class="cbi-section">
- <% if not querypat then %>
- <ul class="cbi-tabmenu">
- <% local i; for i = 65, 90 do %>
- <li class="cbi-tab<% if letter ~= i then %>-disabled<% end %>"><a href="?display=available&amp;letter=<%=string.char(i)%>"><%=string.char(i)%></a></li>
- <% end %>
- <li class="cbi-tab<% if letter ~= 35 then %>-disabled<% end %>"><a href="?display=available&amp;letter=%23">#</a></li>
- </ul>
- <div class="cbi-section-node">
- <% end %>
- <table class="cbi-section-table" style="width:100%">
- <tr class="cbi-section-table-titles">
- <th class="cbi-section-table-cell" style="text-align:left">&#160;</th>
- <th class="cbi-section-table-cell" style="text-align:left"><%:Package name%></th>
- <th class="cbi-section-table-cell" style="text-align:left"><%:Version%></th>
- <th class="cbi-section-table-cell" style="text-align:left"><%:Description%></th>
- </tr>
- <% local empty = true; opkg_list(querypat or letterpat, function(n, v, d) if filter[n] then return end; empty = false %>
- <tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
- <td style="text-align:left; width:10%"><a onclick="return window.confirm('<%:Install%> &quot;<%=luci.util.pcdata(n)%>&quot; ?')" href="<%=REQUEST_URI%>?submit=1&amp;install=<%=luci.util.pcdata(n)%>"><%:Install%></a></td>
- <td style="text-align:left"><%=luci.util.pcdata(n)%></td>
- <td style="text-align:left"><%=luci.util.pcdata(v)%></td>
- <td style="text-align:left"><%=luci.util.pcdata(d)%></td>
- </tr>
- <% end) %>
- <% if empty then %>
- <tr class="cbi-section-table-row">
- <td style="text-align:left">&#160;</td>
- <td style="text-align:left"><em><%:none%></em></td>
- <td style="text-align:left"><em><%:none%></em></td>
- <td style="text-align:left"><em><%:none%></em></td>
- </tr>
- <% end %>
- </table>
- <% if not querypat then %>
- </div>
- <% end %>
- </fieldset>
+ </form>
+
+
+ <h3><%:Status%></h3>
+
+
+ <ul class="cbi-tabmenu">
+ <li class="cbi-tab<% if display ~= "installed" then %>-disabled<% end %>"><a href="?display=installed&amp;query=<%=pcdata(query)%>"><%:Installed packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
+ <li class="cbi-tab<% if display ~= "available" then %>-disabled<% end %>"><a href="?display=available&amp;query=<%=pcdata(query)%>"><%:Available packages%><% if query then %> (<%=pcdata(query)%>)<% end %></a></li>
+ </ul>
+
+ <% if display ~= "available" then %>
+ <fieldset class="cbi-section">
+ <table class="cbi-section-table" style="width:100%">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell" style="text-align:left">&#160;</th>
+ <th class="cbi-section-table-cell" style="text-align:left"><%:Package name%></th>
+ <th class="cbi-section-table-cell" style="text-align:left"><%:Version%></th>
+ </tr>
+ <% local empty = true; luci.model.ipkg.list_installed(querypat, function(n, v, s, d) empty = false; filter[n] = true %>
+ <tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
+ <td style="text-align:left; width:10%">
+ <form method="post" class="inline" action="<%=REQUEST_URI%>">
+ <input type="hidden" name="exec" value="1" />
+ <input type="hidden" name="token" value="<%=token%>" />
+ <input type="hidden" name="remove" value="<%=pcdata(n)%>" />
+ <a onclick="window.confirm('<%:Remove%> &quot;<%=luci.util.pcdata(n)%>&quot; ?') &#38;&#38; this.parentNode.submit(); return false" href="#"><%:Remove%></a>
+ </form>
+ </td>
+ <td style="text-align:left"><%=luci.util.pcdata(n)%></td>
+ <td style="text-align:left"><%=luci.util.pcdata(v)%></td>
+ </tr>
+ <% end) %>
+ <% if empty then %>
+ <tr class="cbi-section-table-row">
+ <td style="text-align:left">&#160;</td>
+ <td style="text-align:left"><em><%:none%></em></td>
+ <td style="text-align:left"><em><%:none%></em></td>
+ </tr>
+ <% end %>
+ </table>
+ </fieldset>
+ <% else %>
+ <fieldset class="cbi-section">
+ <% if not querypat then %>
+ <ul class="cbi-tabmenu">
+ <% local i; for i = 65, 90 do %>
+ <li class="cbi-tab<% if letter ~= i then %>-disabled<% end %>"><a href="?display=available&amp;letter=<%=string.char(i)%>"><%=string.char(i)%></a></li>
+ <% end %>
+ <li class="cbi-tab<% if letter ~= 35 then %>-disabled<% end %>"><a href="?display=available&amp;letter=%23">#</a></li>
+ </ul>
+ <div class="cbi-section-node">
+ <% end %>
+ <table class="cbi-section-table" style="width:100%">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell" style="text-align:left">&#160;</th>
+ <th class="cbi-section-table-cell" style="text-align:left"><%:Package name%></th>
+ <th class="cbi-section-table-cell" style="text-align:left"><%:Version%></th>
+ <th class="cbi-section-table-cell" style="text-align:right"><%:Size (.ipk)%></th>
+ <th class="cbi-section-table-cell" style="text-align:left"><%:Description%></th>
+ </tr>
+ <% local empty = true; opkg_list(querypat or letterpat, function(n, v, s, d) if filter[n] then return end; empty = false %>
+ <tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
+ <td style="text-align:left; width:10%">
+ <form method="post" class="inline" action="<%=REQUEST_URI%>">
+ <input type="hidden" name="exec" value="1" />
+ <input type="hidden" name="token" value="<%=token%>" />
+ <input type="hidden" name="install" value="<%=pcdata(n)%>" />
+ <a onclick="window.confirm('<%:Install%> &quot;<%=luci.util.pcdata(n)%>&quot; ?') &#38;&#38; this.parentNode.submit(); return false" href="#"><%:Install%></a>
+ </form>
+ </td>
+ <td style="text-align:left"><%=luci.util.pcdata(n)%></td>
+ <td style="text-align:left"><%=luci.util.pcdata(v)%></td>
+ <td style="text-align:right"><%=luci.util.pcdata(s)%></td>
+ <td style="text-align:left"><%=luci.util.pcdata(d)%></td>
+ </tr>
+ <% end) %>
+ <% if empty then %>
+ <tr class="cbi-section-table-row">
+ <td style="text-align:left">&#160;</td>
+ <td style="text-align:left"><em><%:none%></em></td>
+ <td style="text-align:left"><em><%:none%></em></td>
+ <td style="text-align:right"><em><%:none%></em></td>
+ <td style="text-align:left"><em><%:none%></em></td>
+ </tr>
+ <% end %>
+ </table>
+ <% if not querypat then %>
+ </div>
<% end %>
- </div>
-</form>
+ </fieldset>
+ <% end %>
+</div>
+
<%+footer%>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm
index 80768119fe..c9551804d2 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm
@@ -1,25 +1,59 @@
<%#
Copyright 2008 Steven Barth <steven@midlink.org>
- Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
+ Copyright 2008-2015 Jo-Philipp Wich <jow@openwrt.org>
Licensed to the public under the Apache License 2.0.
-%>
<%+header%>
-<h2><a id="content" name="content"><%:System%></a></h2>
-<h3><%:Reboot%></h3>
+
+<h2 name="content"><%:Reboot%></h2>
+<br />
+
<p><%:Reboots the operating system of your device%></p>
-<%-
-local c = require("luci.model.uci").cursor():changes()
-if c and next(c) then
--%>
- <p class="warning"><%:Warning: There are unsaved changes that will be lost while rebooting!%></p>
-<%-
-end
-if not reboot then
--%>
-<p><a href="<%=controller%>/admin/system/reboot?reboot=1"><%:Perform reboot%></a></p>
-<%- else -%>
-<p><%:Please wait: Device rebooting...%></p>
-<script type="text/javascript">setTimeout("location='<%=controller%>/admin'", 60000)</script>
+
+<%- local c = require("luci.model.uci").cursor():changes(); if c and next(c) then -%>
+ <p class="alert-message warning"><%:Warning: There are unsaved changes that will get lost on reboot!%></p>
<%- end -%>
-<%+footer%> \ No newline at end of file
+
+<hr />
+
+<script type="text/javascript">//<![CDATA[
+ var tries = 0;
+
+ function ok() {
+ window.location = '<%=controller%>/admin';
+ }
+
+ function check() {
+ if (tries++ < 12)
+ window.setTimeout(ping, 5000);
+ else
+ alert('<%:Device unreachable%>');
+ }
+
+ function ping() {
+ var img = document.createElement('img');
+
+ img.onload = ok;
+ img.onerror = check;
+ img.src = '<%=resource%>/icons/loading.gif?' + Math.random();
+
+ document.getElementById('reboot-message').innerHTML = '<%:Waiting for device...%>';
+ }
+
+ function reboot(button) {
+ button.style.display = 'none';
+ document.getElementById('reboot-message').parentNode.style.display = '';
+
+ (new XHR()).post('<%=controller%>/admin/system/reboot/call', { token: '<%=token%>' }, check);
+ }
+//]]></script>
+
+<input class="cbi-button cbi-button-apply" type="button" value="<%:Perform reboot%>" onclick="reboot(this)" />
+
+<p class="alert-message" style="display:none">
+ <img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" />
+ <span id="reboot-message"><%:Device is rebooting...%></span>
+</p>
+
+<%+footer%>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm b/modules/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm
index b9d42357bb..5ca0398e13 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm
@@ -6,7 +6,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Flash Firmware%> - <%:Verify%></a></h2>
+<h2 name="content"><%:Flash Firmware%> - <%:Verify%></h2>
<p>
<%_ The flash image was uploaded.
Below is the checksum and file size listed,
@@ -45,12 +45,11 @@
</fieldset>
<div class="cbi-page-actions right">
- <form style="display:inline" action="<%=REQUEST_URI%>" method="post">
- <input class="cbi-button cbi-button-reset" type="submit" value="<%:Cancel%>" />
- </form>
- <form style="display:inline" action="<%=REQUEST_URI%>" method="post">
+ <form class="inline" action="<%=REQUEST_URI%>" method="post">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="step" value="2" />
<input type="hidden" name="keep" value="<%=keep and "1" or ""%>" />
+ <input class="cbi-button cbi-button-reset" name="cancel" type="submit" value="<%:Cancel%>" />
<input class="cbi-button cbi-button-apply" type="submit" value="<%:Proceed%>" />
</form>
</div>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm b/modules/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm
index 4284b44d38..370027e510 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm
@@ -6,7 +6,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Configuration%> / <%:Apply%></a></h2>
+<h2 name="content"><%:Configuration%> / <%:Apply%></h2>
<% if changes then %>
<%+cbi/apply_xhr%>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm b/modules/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm
index 84e22879e0..c3373604f3 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm
@@ -1,12 +1,12 @@
<%#
Copyright 2008 Steven Barth <steven@midlink.org>
- Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
+ Copyright 2008-2015 Jo-Philipp Wich <jow@openwrt.org>
Licensed to the public under the Apache License 2.0.
-%>
<%+header%>
-<h2><a id="content" name="content"><%:Configuration%> / <%:Changes%></a></h2>
+<h2 name="content"><%:Configuration%> / <%:Changes%></h2>
<% if changes then %>
<%+admin_uci/changelog%>
@@ -25,15 +25,18 @@
<% end %>
<div style="text-align:right">
- <form class="inline" method="get" action="<%=controller%>/admin/uci/apply">
+ <form class="inline" method="post" action="<%=controller%>/admin/uci/apply">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="redir" value="<%=pcdata(luci.http.formvalue("redir"))%>" />
<input class="cbi-button cbi-button-apply" type="submit" value="<%:Apply%>" />
</form>
- <form class="inline" method="get" action="<%=controller%>/admin/uci/saveapply">
+ <form class="inline" method="post" action="<%=controller%>/admin/uci/saveapply">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="redir" value="<%=pcdata(luci.http.formvalue("redir"))%>" />
<input class="cbi-button cbi-button-save" type="submit" value="<%:Save & Apply%>" />
</form>
- <form class="inline" method="get" action="<%=controller%>/admin/uci/revert">
+ <form class="inline" method="post" action="<%=controller%>/admin/uci/revert">
+ <input type="hidden" name="token" value="<%=token%>" />
<input type="hidden" name="redir" value="<%=pcdata(luci.http.formvalue("redir"))%>" />
<input class="cbi-button cbi-button-reset" type="submit" value="<%:Revert%>" />
</form>
diff --git a/modules/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm b/modules/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm
index d2bdc7a971..5da7281a80 100644
--- a/modules/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm
+++ b/modules/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm
@@ -6,7 +6,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Configuration%> / <%:Revert%></a></h2>
+<h2 name="content"><%:Configuration%> / <%:Revert%></h2>
<% if changes then %>
<%+cbi/apply_xhr%>
diff --git a/modules/luci-mod-admin-mini/luasrc/view/mini/applyreboot.htm b/modules/luci-mod-admin-mini/luasrc/view/mini/applyreboot.htm
index 4c536249ae..d33a2ca291 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/applyreboot.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/applyreboot.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:System%></a></h2>
+<h2 name="content"><%:System%></h2>
<br />
<p><% if msg then %><%=msg%><% else %><%:Changes applied.%><% end %></p>
<p><%:Please wait: Device rebooting...%></p>
diff --git a/modules/luci-mod-admin-mini/luasrc/view/mini/backup.htm b/modules/luci-mod-admin-mini/luasrc/view/mini/backup.htm
index b0f52f791e..efc6aa72f7 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/backup.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/backup.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:System%></a></h2>
+<h2 name="content"><%:System%></h2>
<h3><%:Backup / Restore%></h3>
<p><%:Here you can backup and restore your configuration and - if possible - reset this device to the default settings.%></p>
<br />
diff --git a/modules/luci-mod-admin-mini/luasrc/view/mini/index.htm b/modules/luci-mod-admin-mini/luasrc/view/mini/index.htm
index 9fb03c3c66..5818a567fc 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/index.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/index.htm
@@ -4,7 +4,7 @@
Licensed to the public under the Apache License 2.0.
-%>
-<h2><a id="content" name="content"><%:Hello!%></a></h2>
+<h2 name="content"><%:Hello!%></h2>
<p><%_This is the administration area of <abbr title="Lua Configuration Interface">LuCI</abbr>.%></p>
<p><%_<abbr title="Lua Configuration Interface">LuCI</abbr> is a free, flexible, and user friendly graphical interface for configuring OpenWrt.%><br />
<%:On the following pages you can adjust all important settings of this device.%></p>
diff --git a/modules/luci-mod-admin-mini/luasrc/view/mini/reboot.htm b/modules/luci-mod-admin-mini/luasrc/view/mini/reboot.htm
index 0717f68d88..f70e7c92da 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/reboot.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/reboot.htm
@@ -5,7 +5,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:System%></a></h2>
+<h2 name="content"><%:System%></h2>
<h3><%:Reboot%></h3>
<p><%:Reboots the operating system of your device%></p>
<%-
diff --git a/modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm b/modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm
index 474c22037a..ecd1e8a7a8 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm
@@ -6,7 +6,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:System%></a></h2>
+<h2 name="content"><%:System%></h2>
<h3><%:Flash Firmware%></h3>
<% if step == 1 then %>
diff --git a/modules/luci-mod-failsafe/luasrc/controller/failsafe/failsafe.lua b/modules/luci-mod-failsafe/luasrc/controller/failsafe/failsafe.lua
index 6f78643018..60caadb4b1 100644
--- a/modules/luci-mod-failsafe/luasrc/controller/failsafe/failsafe.lua
+++ b/modules/luci-mod-failsafe/luasrc/controller/failsafe/failsafe.lua
@@ -84,11 +84,13 @@ function action_flashops()
fp = io.open(image_tmp, "w")
end
end
- if chunk then
- fp:write(chunk)
- end
- if eof then
- fp:close()
+ if fp then
+ if chunk then
+ fp:write(chunk)
+ end
+ if eof then
+ fp:close()
+ end
end
end
)
diff --git a/modules/luci-mod-failsafe/luasrc/view/failsafe/applyreboot.htm b/modules/luci-mod-failsafe/luasrc/view/failsafe/applyreboot.htm
index 0c8cebc137..12c138c165 100644
--- a/modules/luci-mod-failsafe/luasrc/view/failsafe/applyreboot.htm
+++ b/modules/luci-mod-failsafe/luasrc/view/failsafe/applyreboot.htm
@@ -25,7 +25,7 @@
<body>
<div id="maincontainer">
<div id="maincontent">
- <h2><a id="content" name="content"><%:System%> - <% if title then %><%=title%><% else %><%:Rebooting...%><% end %></a></h2>
+ <h2 name="content"><%:System%> - <% if title then %><%=title%><% else %><%:Rebooting...%><% end %></h2>
<fieldset class="cbi-section">
<p>
<% if msg then %><%=msg%><% else %><%:Changes applied.%><% end %>
diff --git a/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm b/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm
index 29c4d2d6fb..3c8d11bb75 100644
--- a/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm
+++ b/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm
@@ -7,7 +7,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Flash operations%></a></h2>
+<h2 name="content"><%:Flash operations%></h2>
<fieldset class="cbi-section">
<legend><%:Flash new firmware image%></legend>
<% if upgrade_avail then %>
diff --git a/modules/luci-mod-failsafe/luasrc/view/failsafe/reboot.htm b/modules/luci-mod-failsafe/luasrc/view/failsafe/reboot.htm
index 189939afbe..cbbe13b427 100644
--- a/modules/luci-mod-failsafe/luasrc/view/failsafe/reboot.htm
+++ b/modules/luci-mod-failsafe/luasrc/view/failsafe/reboot.htm
@@ -6,7 +6,7 @@
-%>
<%+header%>
-<h2><a id="content" name="content"><%:System%></a></h2>
+<h2 name="content"><%:System%></h2>
<h3><%:Reboot%></h3>
<p><%:Reboots the operating system of your device%></p>
<%- if not reboot then -%>
diff --git a/modules/luci-mod-failsafe/luasrc/view/failsafe/upgrade.htm b/modules/luci-mod-failsafe/luasrc/view/failsafe/upgrade.htm
index 619ed85dea..3be9ae1193 100644
--- a/modules/luci-mod-failsafe/luasrc/view/failsafe/upgrade.htm
+++ b/modules/luci-mod-failsafe/luasrc/view/failsafe/upgrade.htm
@@ -7,7 +7,7 @@
<%+header%>
-<h2><a id="content" name="content"><%:Flash Firmware%> - <%:Verify%></a></h2>
+<h2 name="content"><%:Flash Firmware%> - <%:Verify%></h2>
<p>
<%_ The flash image was uploaded.
Below is the checksum and file size listed,
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm
index b2e168363f..dbf3820f5c 100644
--- a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm
@@ -11,7 +11,7 @@
%>
<% if has_latlon then %>
- <iframe style="width:100%; height:640px; border:none" src="<%=luci.dispatcher.build_url("freifunk/map/content")%>"></iframe>
+ <iframe style="width:100%; height:640px; border:none" src="<%=url("freifunk/map/content")%>"></iframe>
<h3><%:Legend%>:</h3>
<ul>
<li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (ETX < 2)%></li>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm
index f7cb4a92bf..1add595c6c 100644
--- a/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm
@@ -27,7 +27,7 @@ else
end
%>
-<h2><a id="content" name="content"><%:Contact%></a></h2>
+<h2 name="content"><%:Contact%></h2>
<fieldset xmlns="http://www.w3.org/1999/xhtml" class="cbi-section">
<legend><%:Operator%></legend>
diff --git a/modules/luci-mod-rpc/luasrc/controller/rpc.lua b/modules/luci-mod-rpc/luasrc/controller/rpc.lua
index 129ca43b51..759bb749cf 100644
--- a/modules/luci-mod-rpc/luasrc/controller/rpc.lua
+++ b/modules/luci-mod-rpc/luasrc/controller/rpc.lua
@@ -49,10 +49,10 @@ function rpc_auth()
server.challenge = function(user, pass)
local sid, token, secret
- require "luci.config"
+ local config = require "luci.config"
if sys.user.checkpasswd(user, pass) then
- local sdat = util.ubus("session", "create", { timeout = luci.config.sauth.sessiontime })
+ local sdat = util.ubus("session", "create", { timeout = config.sauth.sessiontime })
if sdat then
sid = sdat.ubus_rpc_session
token = sys.uniqueid(16)