summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--applications/luci-app-adblock/Makefile10
-rw-r--r--applications/luci-app-adblock/luasrc/controller/adblock.lua46
-rw-r--r--applications/luci-app-adblock/luasrc/model/cbi/adblock.lua103
-rw-r--r--applications/luci-app-adblock/luasrc/model/cbi/adblock/blacklist_tab.lua39
-rw-r--r--applications/luci-app-adblock/luasrc/model/cbi/adblock/configuration_tab.lua36
-rw-r--r--applications/luci-app-adblock/luasrc/model/cbi/adblock/overview_tab.lua164
-rw-r--r--applications/luci-app-adblock/luasrc/model/cbi/adblock/whitelist_tab.lua39
-rw-r--r--applications/luci-app-adblock/luasrc/view/adblock/config_css.htm10
-rw-r--r--applications/luci-app-adblock/luasrc/view/adblock/logread.htm14
-rw-r--r--applications/luci-app-adblock/luasrc/view/adblock/query.htm65
-rw-r--r--applications/luci-app-adblock/luasrc/view/adblock/runtime.htm10
-rw-r--r--applications/luci-app-adblock/po/ja/adblock.po364
-rw-r--r--applications/luci-app-adblock/po/pt-br/adblock.po268
-rw-r--r--applications/luci-app-adblock/po/sv/adblock.po212
-rw-r--r--applications/luci-app-adblock/po/templates/adblock.pot159
-rw-r--r--applications/luci-app-adblock/po/zh-cn/adblock.po262
-rw-r--r--applications/luci-app-ahcp/po/pt-br/ahcp.po10
-rw-r--r--applications/luci-app-aria2/po/pt-br/aria2.po236
-rw-r--r--applications/luci-app-bcp38/Makefile18
-rw-r--r--applications/luci-app-bcp38/luasrc/controller/bcp38.lua7
-rw-r--r--applications/luci-app-bcp38/luasrc/model/cbi/bcp38.lua60
-rwxr-xr-xapplications/luci-app-bcp38/root/etc/uci-defaults/60_luci-bcp3811
-rw-r--r--applications/luci-app-clamav/Makefile18
-rw-r--r--applications/luci-app-clamav/luasrc/controller/clamav.lua22
-rw-r--r--applications/luci-app-clamav/luasrc/model/cbi/clamav.lua178
-rw-r--r--applications/luci-app-clamav/po/ja/clamav.po130
-rw-r--r--applications/luci-app-clamav/po/templates/clamav.pot119
-rw-r--r--applications/luci-app-clamav/po/zh-cn/clamav.po131
-rw-r--r--applications/luci-app-commands/luasrc/controller/commands.lua69
-rw-r--r--applications/luci-app-commands/luasrc/view/commands.htm15
-rw-r--r--applications/luci-app-commands/luasrc/view/commands_public.htm50
-rw-r--r--applications/luci-app-commands/po/ca/commands.po24
-rw-r--r--applications/luci-app-commands/po/cs/commands.po21
-rw-r--r--applications/luci-app-commands/po/de/commands.po24
-rw-r--r--applications/luci-app-commands/po/el/commands.po21
-rw-r--r--applications/luci-app-commands/po/en/commands.po32
-rw-r--r--applications/luci-app-commands/po/es/commands.po24
-rw-r--r--applications/luci-app-commands/po/fr/commands.po24
-rw-r--r--applications/luci-app-commands/po/he/commands.po21
-rw-r--r--applications/luci-app-commands/po/hu/commands.po24
-rw-r--r--applications/luci-app-commands/po/it/commands.po24
-rw-r--r--applications/luci-app-commands/po/ja/commands.po39
-rw-r--r--applications/luci-app-commands/po/ms/commands.po21
-rw-r--r--applications/luci-app-commands/po/no/commands.po24
-rw-r--r--applications/luci-app-commands/po/pl/commands.po24
-rw-r--r--applications/luci-app-commands/po/pt-br/commands.po33
-rw-r--r--applications/luci-app-commands/po/pt/commands.po24
-rw-r--r--applications/luci-app-commands/po/ro/commands.po24
-rw-r--r--applications/luci-app-commands/po/ru/commands.po24
-rw-r--r--applications/luci-app-commands/po/sk/commands.po21
-rw-r--r--applications/luci-app-commands/po/sv/commands.po21
-rw-r--r--applications/luci-app-commands/po/templates/commands.pot21
-rw-r--r--applications/luci-app-commands/po/tr/commands.po21
-rw-r--r--applications/luci-app-commands/po/uk/commands.po21
-rw-r--r--applications/luci-app-commands/po/vi/commands.po21
-rw-r--r--applications/luci-app-commands/po/zh-cn/commands.po33
-rw-r--r--applications/luci-app-commands/po/zh-tw/commands.po24
-rw-r--r--applications/luci-app-cshark/Makefile17
-rw-r--r--applications/luci-app-cshark/luasrc/controller/cshark.lua125
-rw-r--r--applications/luci-app-cshark/luasrc/model/cbi/admin_network/cshark.lua30
-rw-r--r--applications/luci-app-cshark/luasrc/view/cshark.htm291
-rw-r--r--applications/luci-app-ddns/Makefile4
-rwxr-xr-xapplications/luci-app-ddns/luasrc/controller/ddns.lua12
-rw-r--r--applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm1
-rw-r--r--applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm1
-rw-r--r--applications/luci-app-ddns/po/pt-br/ddns.po20
-rw-r--r--applications/luci-app-diag-devinfo/Makefile4
-rw-r--r--applications/luci-app-dynapoint/Makefile17
-rw-r--r--applications/luci-app-dynapoint/luasrc/controller/dynapoint.lua9
-rw-r--r--applications/luci-app-dynapoint/luasrc/model/cbi/dynapoint.lua99
-rw-r--r--applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_checkbox.htm6
-rw-r--r--applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_color.htm18
-rw-r--r--applications/luci-app-dynapoint/po/de/dynapoint.po106
-rw-r--r--applications/luci-app-dynapoint/po/ja/dynapoint.po108
-rw-r--r--applications/luci-app-dynapoint/po/pt-br/dynapoint.po107
-rw-r--r--applications/luci-app-dynapoint/po/templates/dynapoint.pot92
-rw-r--r--applications/luci-app-dynapoint/root/etc/uci-defaults/40_luci-dynapoint13
-rw-r--r--applications/luci-app-e2guardian/Makefile18
-rw-r--r--applications/luci-app-e2guardian/luasrc/controller/e2guardian.lua22
-rw-r--r--applications/luci-app-e2guardian/luasrc/model/cbi/e2guardian.lua399
-rw-r--r--applications/luci-app-firewall/luasrc/model/cbi/firewall/custom.lua4
-rw-r--r--applications/luci-app-firewall/luasrc/model/cbi/firewall/forward-details.lua6
-rw-r--r--applications/luci-app-firewall/luasrc/model/cbi/firewall/rule-details.lua8
-rw-r--r--applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua4
-rw-r--r--applications/luci-app-firewall/luasrc/model/cbi/firewall/zones.lua1
-rw-r--r--applications/luci-app-firewall/po/ca/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/cs/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/de/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/el/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/en/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/es/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/fr/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/he/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/hu/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/it/firewall.po14
-rw-r--r--applications/luci-app-firewall/po/ja/firewall.po56
-rw-r--r--applications/luci-app-firewall/po/ko/firewall.po505
-rw-r--r--applications/luci-app-firewall/po/ms/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/no/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/pl/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/pt-br/firewall.po42
-rw-r--r--applications/luci-app-firewall/po/pt/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/ro/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/ru/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/sk/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/sv/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/templates/firewall.pot3
-rw-r--r--applications/luci-app-firewall/po/tr/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/uk/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/vi/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/zh-cn/firewall.po3
-rw-r--r--applications/luci-app-firewall/po/zh-tw/firewall.po3
-rw-r--r--applications/luci-app-fwknopd/Makefile2
-rw-r--r--applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua14
-rw-r--r--applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm3
-rw-r--r--applications/luci-app-fwknopd/po/en/fwknopd.po15
-rw-r--r--applications/luci-app-fwknopd/po/pt-br/fwknopd.po116
-rw-r--r--applications/luci-app-fwknopd/po/templates/fwknopd.pot9
-rw-r--r--applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd1
-rw-r--r--applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh12
-rw-r--r--applications/luci-app-hd-idle/luasrc/controller/hd_idle.lua2
-rw-r--r--applications/luci-app-hd-idle/luasrc/model/cbi/hd_idle.lua8
-rw-r--r--applications/luci-app-hd-idle/po/ca/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/cs/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/de/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/el/hd_idle.po20
-rw-r--r--applications/luci-app-hd-idle/po/en/hd_idle.po28
-rw-r--r--applications/luci-app-hd-idle/po/es/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/fr/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/he/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/hu/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/it/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/ja/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/ms/hd_idle.po18
-rw-r--r--applications/luci-app-hd-idle/po/no/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/pl/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/pt-br/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/pt/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/ro/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/ru/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/sk/hd_idle.po16
-rw-r--r--applications/luci-app-hd-idle/po/sv/hd_idle.po16
-rw-r--r--applications/luci-app-hd-idle/po/templates/hd_idle.pot16
-rw-r--r--applications/luci-app-hd-idle/po/tr/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/uk/hd_idle.po22
-rw-r--r--applications/luci-app-hd-idle/po/vi/hd_idle.po24
-rw-r--r--applications/luci-app-hd-idle/po/zh-cn/hd_idle.po20
-rw-r--r--applications/luci-app-hd-idle/po/zh-tw/hd_idle.po20
-rw-r--r--applications/luci-app-lxc/Makefile17
-rw-r--r--applications/luci-app-lxc/htdocs/luci-static/resources/cbi/green.gifbin0 -> 310 bytes
-rw-r--r--applications/luci-app-lxc/htdocs/luci-static/resources/cbi/purple.gifbin0 -> 317 bytes
-rw-r--r--applications/luci-app-lxc/htdocs/luci-static/resources/cbi/red.gifbin0 -> 320 bytes
-rw-r--r--applications/luci-app-lxc/luasrc/controller/lxc.lua167
-rw-r--r--applications/luci-app-lxc/luasrc/model/cbi/lxc.lua31
-rw-r--r--applications/luci-app-lxc/luasrc/view/lxc.htm458
-rw-r--r--applications/luci-app-lxc/root/etc/config/lxc6
-rw-r--r--applications/luci-app-meshwizard/luasrc/model/cbi/freifunk/meshwizard.lua5
-rw-r--r--applications/luci-app-meshwizard/po/pt-br/meshwizard.po11
-rwxr-xr-xapplications/luci-app-minidlna/root/etc/uci-defaults/40_luci-minidlna5
-rw-r--r--applications/luci-app-mjpg-streamer/po/ja/mjpg-streamer.po171
-rw-r--r--applications/luci-app-mjpg-streamer/po/pt-br/mjpg-streamer.po172
-rw-r--r--applications/luci-app-mwan3/Makefile19
-rw-r--r--applications/luci-app-mwan3/luasrc/controller/mwan3.lua331
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_hotplugscript.lua55
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_mwanconfig.lua32
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_networkconfig.lua32
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_wirelessconfig.lua32
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/interface.lua266
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/interfaceconfig.lua250
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/member.lua46
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/memberconfig.lua47
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/policy.lua95
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/policyconfig.lua65
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/rule.lua141
-rw-r--r--applications/luci-app-mwan3/luasrc/model/cbi/mwan/ruleconfig.lua113
-rw-r--r--applications/luci-app-mwan3/luasrc/view/admin_status/index/mwan.htm1
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/advanced_diagnostics.htm129
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/advanced_hotplugscript.htm24
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/advanced_mwanconfig.htm24
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/advanced_networkconfig.htm24
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/advanced_troubleshooting.htm74
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/advanced_wirelessconfig.htm24
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/config_css.htm34
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/openwrt_overview_status.htm83
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/overview_detailed.htm51
-rw-r--r--applications/luci-app-mwan3/luasrc/view/mwan/overview_interface.htm122
-rw-r--r--applications/luci-app-mwan3/po/ja/mwan3.po562
-rw-r--r--applications/luci-app-mwan3/po/templates/mwan3.pot464
-rw-r--r--applications/luci-app-mwan3/po/zh-cn/mwan3.po510
-rwxr-xr-xapplications/luci-app-mwan3/root/etc/hotplug.d/iface/16-mwancustombak38
-rwxr-xr-xapplications/luci-app-mwan3/root/etc/uci-defaults/60_luci-mwan314
-rw-r--r--applications/luci-app-olsr/luasrc/controller/olsr.lua8
-rw-r--r--applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm8
-rw-r--r--applications/luci-app-olsr/po/pt-br/olsr.po17
-rw-r--r--applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua879
-rw-r--r--applications/luci-app-openvpn/po/pt-br/openvpn.po18
-rw-r--r--applications/luci-app-openvpn/po/zh-cn/openvpn.po12
-rw-r--r--applications/luci-app-p910nd/po/ja/p910nd.po14
-rw-r--r--applications/luci-app-privoxy/po/pt-br/privoxy.po516
-rw-r--r--applications/luci-app-privoxy/po/zh-cn/privoxy.po127
-rw-r--r--applications/luci-app-qos/po/ja/qos.po14
-rw-r--r--applications/luci-app-radicale/po/pt-br/radicale.po432
-rw-r--r--applications/luci-app-samba/luasrc/model/cbi/samba.lua9
-rw-r--r--applications/luci-app-samba/po/ca/samba.po3
-rw-r--r--applications/luci-app-samba/po/cs/samba.po3
-rw-r--r--applications/luci-app-samba/po/de/samba.po3
-rw-r--r--applications/luci-app-samba/po/el/samba.po3
-rw-r--r--applications/luci-app-samba/po/en/samba.po3
-rw-r--r--applications/luci-app-samba/po/es/samba.po3
-rw-r--r--applications/luci-app-samba/po/fr/samba.po3
-rw-r--r--applications/luci-app-samba/po/he/samba.po3
-rw-r--r--applications/luci-app-samba/po/hu/samba.po3
-rw-r--r--applications/luci-app-samba/po/it/samba.po3
-rw-r--r--applications/luci-app-samba/po/ja/samba.po3
-rw-r--r--applications/luci-app-samba/po/ms/samba.po3
-rw-r--r--applications/luci-app-samba/po/no/samba.po3
-rw-r--r--applications/luci-app-samba/po/pl/samba.po3
-rw-r--r--applications/luci-app-samba/po/pt-br/samba.po3
-rw-r--r--applications/luci-app-samba/po/pt/samba.po3
-rw-r--r--applications/luci-app-samba/po/ro/samba.po3
-rw-r--r--applications/luci-app-samba/po/ru/samba.po3
-rw-r--r--applications/luci-app-samba/po/sk/samba.po3
-rw-r--r--applications/luci-app-samba/po/sv/samba.po3
-rw-r--r--applications/luci-app-samba/po/templates/samba.pot3
-rw-r--r--applications/luci-app-samba/po/tr/samba.po3
-rw-r--r--applications/luci-app-samba/po/uk/samba.po3
-rw-r--r--applications/luci-app-samba/po/vi/samba.po3
-rw-r--r--applications/luci-app-samba/po/zh-cn/samba.po3
-rw-r--r--applications/luci-app-samba/po/zh-tw/samba.po7
-rw-r--r--applications/luci-app-shadowsocks-libev/po/pt-br/shadowsocks-libev.po97
-rw-r--r--applications/luci-app-shairplay/po/ja/shairplay.po54
-rw-r--r--applications/luci-app-shairplay/po/pt-br/shairplay.po54
-rw-r--r--applications/luci-app-shairplay/po/templates/shairplay.pot40
-rw-r--r--applications/luci-app-simple-adblock/po/ja/simple-adblock.po93
-rw-r--r--applications/luci-app-splash/Makefile6
-rw-r--r--applications/luci-app-squid/Makefile18
-rw-r--r--applications/luci-app-squid/luasrc/controller/squid.lua21
-rw-r--r--applications/luci-app-squid/luasrc/model/cbi/squid.lua67
-rw-r--r--applications/luci-app-statistics/Makefile4
-rw-r--r--applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua3
-rw-r--r--applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/contextswitch.lua14
-rw-r--r--applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/rrdtool.lua7
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/contextswitch.lua23
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua1
-rw-r--r--applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/processes.lua45
-rw-r--r--applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm2
-rw-r--r--applications/luci-app-statistics/po/ca/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/cs/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/de/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/el/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/en/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/es/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/fr/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/he/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/hu/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/it/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/ja/statistics.po319
-rw-r--r--applications/luci-app-statistics/po/ms/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/no/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/pl/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/pt-br/statistics.po116
-rw-r--r--applications/luci-app-statistics/po/pt/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/ro/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/ru/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/sk/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/sv/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/templates/statistics.pot41
-rw-r--r--applications/luci-app-statistics/po/tr/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/uk/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/vi/statistics.po41
-rw-r--r--applications/luci-app-statistics/po/zh-cn/rrdtool.po135
-rw-r--r--applications/luci-app-statistics/po/zh-cn/statistics.po92
-rw-r--r--applications/luci-app-statistics/po/zh-tw/statistics.po41
-rw-r--r--applications/luci-app-statistics/root/etc/config/luci_statistics3
-rwxr-xr-xapplications/luci-app-statistics/root/usr/bin/stat-genconfig12
-rw-r--r--applications/luci-app-travelmate/Makefile6
-rw-r--r--applications/luci-app-travelmate/luasrc/controller/travelmate.lua21
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate.lua53
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_firewall_tab.lua36
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_network_tab.lua36
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_wireless_tab.lua36
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/configuration_tab.lua38
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/overview_tab.lua165
-rw-r--r--applications/luci-app-travelmate/luasrc/view/travelmate/config_css.htm10
-rw-r--r--applications/luci-app-travelmate/luasrc/view/travelmate/logread.htm15
-rw-r--r--applications/luci-app-travelmate/luasrc/view/travelmate/runtime.htm10
-rw-r--r--applications/luci-app-travelmate/po/ja/travelmate.po298
-rw-r--r--applications/luci-app-travelmate/po/pt-br/travelmate.po262
-rw-r--r--applications/luci-app-travelmate/po/templates/travelmate.pot168
-rw-r--r--applications/luci-app-uhttpd/Makefile7
-rw-r--r--applications/luci-app-uhttpd/po/ja/uhttpd.po213
-rw-r--r--applications/luci-app-uhttpd/po/pt-br/uhttpd.po208
-rw-r--r--applications/luci-app-uhttpd/po/templates/uhttpd.pot186
-rw-r--r--applications/luci-app-unbound/luasrc/model/cbi/unbound.lua168
-rw-r--r--applications/luci-app-unbound/root/etc/uci-defaults/60_luci-unbound25
-rw-r--r--applications/luci-app-upnp/luasrc/model/cbi/upnp/upnp.lua12
-rw-r--r--applications/luci-app-upnp/po/ja/upnp.po20
-rwxr-xr-xapplications/luci-app-upnp/root/etc/uci-defaults/40_luci-miniupnp11
-rw-r--r--applications/luci-app-vpnbypass/Makefile16
-rw-r--r--applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua7
-rw-r--r--applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua61
-rw-r--r--applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po90
-rw-r--r--applications/luci-app-vpnbypass/po/templates/vpnbypass.pot51
-rw-r--r--applications/luci-app-vpnbypass/root/etc/uci-defaults/40_luci-vpnbypass11
-rw-r--r--applications/luci-app-watchcat/po/pt-br/watchcat.po13
-rw-r--r--applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua28
-rw-r--r--applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua96
-rw-r--r--applications/luci-app-wifischedule/po/ja/wifischedule.po112
-rw-r--r--applications/luci-app-wifischedule/po/pt-br/wifischedule.po114
-rw-r--r--applications/luci-app-wifischedule/po/templates/wifischedule.pot101
-rw-r--r--applications/luci-app-wifischedule/po/zh-cn/wifischedule.po101
-rw-r--r--applications/luci-app-wireguard/Makefile17
-rw-r--r--applications/luci-app-wireguard/luasrc/controller/wireguard.lua8
-rw-r--r--applications/luci-app-wireguard/luasrc/view/wireguard.htm209
-rw-r--r--applications/luci-app-wireguard/po/ja/wireguard.po74
-rw-r--r--applications/luci-app-wireguard/po/pt-br/wireguard.po73
-rw-r--r--applications/luci-app-wireguard/po/templates/wireguard.pot62
-rw-r--r--applications/luci-app-wireguard/po/zh-cn/wireguard.po73
-rw-r--r--applications/luci-app-wol/luasrc/controller/wol.lua4
-rw-r--r--applications/luci-app-wol/luasrc/model/cbi/wol.lua13
-rw-r--r--applications/luci-app-wol/po/ca/wol.po3
-rw-r--r--applications/luci-app-wol/po/cs/wol.po3
-rw-r--r--applications/luci-app-wol/po/de/wol.po3
-rw-r--r--applications/luci-app-wol/po/el/wol.po3
-rw-r--r--applications/luci-app-wol/po/en/wol.po3
-rw-r--r--applications/luci-app-wol/po/es/wol.po3
-rw-r--r--applications/luci-app-wol/po/fr/wol.po3
-rw-r--r--applications/luci-app-wol/po/he/wol.po3
-rw-r--r--applications/luci-app-wol/po/hu/wol.po3
-rw-r--r--applications/luci-app-wol/po/it/wol.po3
-rw-r--r--applications/luci-app-wol/po/ja/wol.po20
-rw-r--r--applications/luci-app-wol/po/ms/wol.po3
-rw-r--r--applications/luci-app-wol/po/no/wol.po3
-rw-r--r--applications/luci-app-wol/po/pl/wol.po3
-rw-r--r--applications/luci-app-wol/po/pt-br/wol.po16
-rw-r--r--applications/luci-app-wol/po/pt/wol.po3
-rw-r--r--applications/luci-app-wol/po/ro/wol.po3
-rw-r--r--applications/luci-app-wol/po/ru/wol.po3
-rw-r--r--applications/luci-app-wol/po/sk/wol.po3
-rw-r--r--applications/luci-app-wol/po/sv/wol.po3
-rw-r--r--applications/luci-app-wol/po/templates/wol.pot3
-rw-r--r--applications/luci-app-wol/po/tr/wol.po3
-rw-r--r--applications/luci-app-wol/po/uk/wol.po3
-rw-r--r--applications/luci-app-wol/po/vi/wol.po3
-rw-r--r--applications/luci-app-wol/po/zh-cn/wol.po3
-rw-r--r--applications/luci-app-wol/po/zh-tw/wol.po3
-rw-r--r--applications/luci-app-wshaper/luasrc/controller/wshaper.lua9
-rw-r--r--applications/luci-app-wshaper/luasrc/model/cbi/wshaper.lua46
-rw-r--r--applications/luci-app-wshaper/po/ca/wshaper.po59
-rw-r--r--applications/luci-app-wshaper/po/cs/wshaper.po58
-rw-r--r--applications/luci-app-wshaper/po/de/wshaper.po58
-rw-r--r--applications/luci-app-wshaper/po/el/wshaper.po55
-rw-r--r--applications/luci-app-wshaper/po/en/wshaper.po54
-rw-r--r--applications/luci-app-wshaper/po/es/wshaper.po58
-rw-r--r--applications/luci-app-wshaper/po/fr/wshaper.po62
-rw-r--r--applications/luci-app-wshaper/po/he/wshaper.po54
-rw-r--r--applications/luci-app-wshaper/po/hu/wshaper.po54
-rw-r--r--applications/luci-app-wshaper/po/it/wshaper.po59
-rw-r--r--applications/luci-app-wshaper/po/ja/wshaper.po58
-rw-r--r--applications/luci-app-wshaper/po/ms/wshaper.po54
-rw-r--r--applications/luci-app-wshaper/po/no/wshaper.po54
-rw-r--r--applications/luci-app-wshaper/po/pl/wshaper.po59
-rw-r--r--applications/luci-app-wshaper/po/pt-br/wshaper.po59
-rw-r--r--applications/luci-app-wshaper/po/pt/wshaper.po55
-rw-r--r--applications/luci-app-wshaper/po/ro/wshaper.po56
-rw-r--r--applications/luci-app-wshaper/po/ru/wshaper.po61
-rw-r--r--applications/luci-app-wshaper/po/sk/wshaper.po50
-rw-r--r--applications/luci-app-wshaper/po/sv/wshaper.po53
-rw-r--r--applications/luci-app-wshaper/po/templates/wshaper.pot43
-rw-r--r--applications/luci-app-wshaper/po/tr/wshaper.po50
-rw-r--r--applications/luci-app-wshaper/po/uk/wshaper.po58
-rw-r--r--applications/luci-app-wshaper/po/vi/wshaper.po54
-rw-r--r--applications/luci-app-wshaper/po/zh-cn/wshaper.po58
-rw-r--r--applications/luci-app-wshaper/po/zh-tw/wshaper.po56
-rw-r--r--applications/luci-app-wshaper/root/etc/uci-defaults/40_wshaper11
-rw-r--r--collections/luci-ssl-openssl/Makefile6
-rw-r--r--collections/luci-ssl/Makefile4
-rw-r--r--contrib/package/community-profiles/files/etc/config/profile_berlin1
-rw-r--r--contrib/package/community-profiles/files/etc/config/profile_potsdam22
-rw-r--r--contrib/package/freifunk-common/Makefile2
-rw-r--r--contrib/package/freifunk-common/files/etc/config/freifunk6
-rwxr-xr-xcontrib/package/freifunk-common/files/usr/bin/neigh.sh3
-rw-r--r--contrib/package/meshwizard/Makefile2
-rwxr-xr-xcontrib/package/meshwizard/files/usr/bin/meshwizard/helpers/rename-wifi.sh2
-rwxr-xr-xcontrib/package/meshwizard/files/usr/bin/meshwizard/helpers/setup_wifi.sh5
-rwxr-xr-xcontrib/package/meshwizard/files/usr/bin/meshwizard/helpers/supports_vap.sh4
-rw-r--r--contrib/package/remote-update/Makefile43
-rwxr-xr-xcontrib/package/remote-update/files/usr/sbin/remote-update306
-rw-r--r--libs/luci-lib-nixio/src/fs.c2
-rw-r--r--luci.mk6
-rw-r--r--modules/luci-base/Makefile5
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/cbi.js58
-rw-r--r--modules/luci-base/luasrc/cbi/datatypes.lua118
-rw-r--r--modules/luci-base/luasrc/dispatcher.lua6
-rw-r--r--modules/luci-base/luasrc/model/network.lua9
-rw-r--r--modules/luci-base/luasrc/sys/iptparser.lua36
-rw-r--r--modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua236
-rw-r--r--modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua93
-rw-r--r--modules/luci-base/luasrc/tools/status.lua15
-rw-r--r--modules/luci-base/luasrc/tools/webadmin.lua2
-rw-r--r--modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm4
-rw-r--r--modules/luci-base/luasrc/view/cbi/fvalue.htm1
-rw-r--r--modules/luci-base/luasrc/view/cbi/lvalue.htm3
-rw-r--r--modules/luci-base/luasrc/view/cbi/mvalue.htm5
-rw-r--r--modules/luci-base/luasrc/view/cbi/network_ifacelist.htm12
-rw-r--r--modules/luci-base/luasrc/view/cbi/network_netlist.htm3
-rw-r--r--modules/luci-base/po/ca/base.po392
-rw-r--r--modules/luci-base/po/cs/base.po405
-rw-r--r--modules/luci-base/po/de/base.po411
-rw-r--r--modules/luci-base/po/el/base.po386
-rw-r--r--modules/luci-base/po/en/base.po384
-rw-r--r--modules/luci-base/po/es/base.po399
-rw-r--r--modules/luci-base/po/fr/base.po401
-rw-r--r--modules/luci-base/po/he/base.po360
-rw-r--r--modules/luci-base/po/hu/base.po398
-rw-r--r--modules/luci-base/po/it/base.po396
-rw-r--r--modules/luci-base/po/ja/base.po924
-rw-r--r--modules/luci-base/po/ko/base.po3809
-rw-r--r--modules/luci-base/po/ms/base.po384
-rw-r--r--modules/luci-base/po/no/base.po401
-rw-r--r--modules/luci-base/po/pl/base.po403
-rw-r--r--modules/luci-base/po/pt-br/base.po1006
-rw-r--r--modules/luci-base/po/pt/base.po394
-rw-r--r--modules/luci-base/po/ro/base.po374
-rw-r--r--modules/luci-base/po/ru/base.po401
-rw-r--r--modules/luci-base/po/sk/base.po340
-rw-r--r--modules/luci-base/po/sv/base.po340
-rw-r--r--modules/luci-base/po/templates/base.pot340
-rw-r--r--modules/luci-base/po/tr/base.po349
-rw-r--r--modules/luci-base/po/uk/base.po401
-rw-r--r--modules/luci-base/po/vi/base.po384
-rw-r--r--modules/luci-base/po/zh-cn/base.po1411
-rw-r--r--modules/luci-base/po/zh-tw/base.po399
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/network.lua1
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/status.lua6
-rw-r--r--modules/luci-mod-admin-full/luasrc/controller/admin/system.lua1
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua3
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua6
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua28
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua323
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua4
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua4
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua10
-rw-r--r--modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua40
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm5
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm5
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm4
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/connections.htm3
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_status/index.htm49
-rw-r--r--modules/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm4
-rw-r--r--modules/luci-mod-admin-full/src/luci-bwc.c4
-rw-r--r--modules/luci-mod-admin-mini/luasrc/model/cbi/mini/wifi.lua20
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/index.htm2
-rw-r--r--modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm4
-rw-r--r--modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm2
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm2
-rw-r--r--protocols/luci-proto-ncm/Makefile (renamed from applications/luci-app-wshaper/Makefile)4
-rw-r--r--protocols/luci-proto-ncm/luasrc/model/cbi/admin_network/proto_ncm.lua157
-rw-r--r--protocols/luci-proto-ncm/luasrc/model/network/proto_ncm.lua61
-rw-r--r--protocols/luci-proto-qmi/Makefile14
-rw-r--r--protocols/luci-proto-qmi/luasrc/model/cbi/admin_network/proto_qmi.lua45
-rw-r--r--protocols/luci-proto-qmi/luasrc/model/network/proto_qmi.lua51
-rw-r--r--protocols/luci-proto-vpnc/Makefile5
-rw-r--r--protocols/luci-proto-wireguard/Makefile1
-rw-r--r--protocols/luci-proto-wireguard/luasrc/model/cbi/admin_network/proto_wireguard.lua41
-rw-r--r--themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css7
-rw-r--r--themes/luci-theme-bootstrap/luasrc/view/themes/bootstrap/header.htm7
-rw-r--r--themes/luci-theme-freifunk-generic/luasrc/view/themes/freifunk-generic/header.htm4
-rwxr-xr-xthemes/luci-theme-material/luasrc/view/themes/material/footer.htm2
-rw-r--r--[-rwxr-xr-x]themes/luci-theme-material/luasrc/view/themes/material/header.htm215
-rw-r--r--themes/luci-theme-openwrt/luasrc/view/themes/openwrt.org/header.htm4
471 files changed, 32083 insertions, 6592 deletions
diff --git a/applications/luci-app-adblock/Makefile b/applications/luci-app-adblock/Makefile
index 8efe2d604..ae1eba251 100644
--- a/applications/luci-app-adblock/Makefile
+++ b/applications/luci-app-adblock/Makefile
@@ -1,14 +1,12 @@
-# Copyright (C) 2016 Openwrt.org
-#
-# This is free software, licensed under the Apache License, Version 2.0 .
-#
+# Copyright 2017 Dirk Brenken (dev@brenken.org)
+# This is free software, licensed under the Apache License, Version 2.0
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI support for Adblock
-LUCI_DEPENDS:=+adblock
+LUCI_DEPENDS:=+adblock +luci-lib-jsonc
LUCI_PKGARCH:=all
include ../../luci.mk
-# call BuildPackage - OpenWrt buildroot signature
+# call BuildPackage - OpenWrt buildroot signature \ No newline at end of file
diff --git a/applications/luci-app-adblock/luasrc/controller/adblock.lua b/applications/luci-app-adblock/luasrc/controller/adblock.lua
index d8b471814..b37fcd889 100644
--- a/applications/luci-app-adblock/luasrc/controller/adblock.lua
+++ b/applications/luci-app-adblock/luasrc/controller/adblock.lua
@@ -1,12 +1,52 @@
--- Copyright 2016 Openwrt.org
--- Licensed to the public under the Apache License 2.0.
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
module("luci.controller.adblock", package.seeall)
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local template = require("luci.template")
+local i18n = require("luci.i18n")
+
function index()
if not nixio.fs.access("/etc/config/adblock") then
return
end
+ entry({"admin", "services", "adblock"}, firstchild(), _("Adblock"), 30).dependent = false
+ entry({"admin", "services", "adblock", "tab_from_cbi"}, cbi("adblock/overview_tab"), _("Overview"), 10).leaf = true
+ entry({"admin", "services", "adblock", "logfile"}, call("logread"), _("View Logfile"), 20).leaf = true
+ entry({"admin", "services", "adblock", "advanced"}, firstchild(), _("Advanced"), 100)
+ entry({"admin", "services", "adblock", "advanced", "blacklist"}, cbi("adblock/blacklist_tab"), _("Edit Blacklist"), 110).leaf = true
+ entry({"admin", "services", "adblock", "advanced", "whitelist"}, cbi("adblock/whitelist_tab"), _("Edit Whitelist"), 120).leaf = true
+ entry({"admin", "services", "adblock", "advanced", "configuration"}, cbi("adblock/configuration_tab"), _("Edit Configuration"), 130).leaf = true
+ entry({"admin", "services", "adblock", "advanced", "query"}, call("query"), _("Query domains"), 140).leaf = true
+ entry({"admin", "services", "adblock", "advanced", "result"}, call("queryData"), nil, 150).leaf = true
+end
+
+function logread()
+ local logfile = util.trim(util.exec("logread -e 'adblock'"))
+ template.render("adblock/logread", {title = i18n.translate("Adblock Logfile"), content = logfile})
+end
- entry({"admin", "services", "adblock"}, cbi("adblock"), _("Adblock"), 40)
+function query()
+ template.render("adblock/query", {title = i18n.translate("Adblock Domain Query")})
+end
+
+function queryData(domain)
+ if domain and domain:match("^[a-zA-Z0-9%-%._]+$") then
+ luci.http.prepare_content("text/plain")
+ local cmd = "/etc/init.d/adblock query %q 2>&1"
+ local util = io.popen(cmd % domain)
+ if util then
+ while true do
+ local line = util:read("*l")
+ if not line then
+ break
+ end
+ luci.http.write(line)
+ luci.http.write("\n")
+ end
+ util:close()
+ end
+ end
end
diff --git a/applications/luci-app-adblock/luasrc/model/cbi/adblock.lua b/applications/luci-app-adblock/luasrc/model/cbi/adblock.lua
deleted file mode 100644
index 2cee30208..000000000
--- a/applications/luci-app-adblock/luasrc/model/cbi/adblock.lua
+++ /dev/null
@@ -1,103 +0,0 @@
--- Copyright 2016 Openwrt.org
--- Licensed to the public under the Apache License 2.0.
-
-m = Map("adblock", translate("Adblock"),
- translate("Configuration of the adblock package to block ad/abuse domains by using DNS."))
-
--- General options
-
-s = m:section(NamedSection, "global", "adblock", translate("Global options"))
-
-o1 = s:option(Flag, "adb_enabled", translate("Enable adblock"))
-o1.rmempty = false
-o1.default = 0
-
-o3 = s:option(Value, "adb_whitelist", translate("Whitelist file"),
- translate("File with whitelisted hosts/domains that are allowed despite being on a blocklist."))
-o3.rmempty = false
-o3.datatype = "file"
-
-fdns = s:option(Flag, "adb_forcedns", translate("Redirect all DNS queries to the local resolver"),
- translate("When adblock is active, all DNS queries are redirected to the local resolver " ..
- "in this server by default. You can disable that to allow queries to external DNS servers."))
-fdns.rmempty = false
-fdns.default = fdns.enabled
-
--- Statistics
-
-t = m:section(NamedSection, "global", "adblock", translate("Statistics"))
-
-dat = t:option(DummyValue, "adb_lastrun", translate("Last update of the blocklists"))
-tot = t:option(DummyValue, "adb_overall_count", translate("Total count of blocked domains"))
-prc = t:option(DummyValue, "adb_percentage", translate("Percentage of blocked packets (before last update, IPv4/IPv6)"))
-
--- Blocklist options
-
-bl = m:section(TypedSection, "source", translate("Blocklist sources"),
- translate("Available blocklist sources (")
- .. [[<a href="https://github.com/openwrt/packages/blob/master/net/adblock/files/README.md" target="_blank">]]
- .. translate("see list details")
- .. [[</a>]]
- .. translate("). Note that list URLs and Shallalist category selections are not configurable via Luci."))
-bl.template = "cbi/tblsection"
-
-name = bl:option(Flag, "enabled", translate("Enabled"))
-name.rmempty = false
-
-des = bl:option(DummyValue, "adb_src_desc", translate("Description"))
-cou = bl:option(DummyValue, "adb_src_count", translate("Count"))
-upd = bl:option(DummyValue, "adb_src_timestamp", translate("List date/state"))
-
--- Additional options
-
-s2 = m:section(NamedSection, "backup", "service", translate("Backup options"))
-
-o4 = s2:option(Flag, "enabled", translate("Enable blocklist backup"))
-o4.rmempty = false
-o4.default = 0
-
-o5 = s2:option(Value, "adb_dir", translate("Backup directory"))
-o5.rmempty = false
-o5.datatype = "directory"
-
--- Extra options
-
-e = m:section(NamedSection, "global", "adblock", translate("Extra options"),
- translate("Options for further tweaking in case the defaults are not suitable for you."))
-
-a0 = e:option(Flag, "adb_restricted", translate("Do not write status info to flash"),
- translate("Skip writing update status information to the config file. Status fields on this page will not be updated."))
-a0.default = 0
-
-a1 = e:option(Value, "adb_nullport", translate("Port of the adblock uhttpd instance"))
-a1.optional = true
-a1.default = 65534
-a1.datatype = "port"
-
-a5 = e:option(Value, "adb_nullportssl", translate("Port of the adblock uhttpd instance for https links"))
-a5.optional = true
-a5.default = 65535
-a5.datatype = "port"
-
-a2 = e:option(Value, "adb_nullipv4", translate("IPv4 blackhole ip address"))
-a2.optional = true
-a2.default = "198.18.0.1"
-a2.datatype = "ip4addr"
-
-a3 = e:option(Value, "adb_nullipv6", translate("IPv6 blackhole ip address"))
-a3.optional = true
-a3.default = "::ffff:c612:0001"
-a3.datatype = "ip6addr"
-
-a4 = e:option(Value, "adb_fetchttl", translate("Timeout for blocklist fetch (seconds)"))
-a4.optional = true
-a4.default = 5
-a4.datatype = "range(2,60)"
-
-a7 = e:option(Value, "adb_lanif", translate("Name of the logical lan interface"))
-a7.optional = true
-a7.default = "lan"
-a7.datatype = "network"
-
-return m
-
diff --git a/applications/luci-app-adblock/luasrc/model/cbi/adblock/blacklist_tab.lua b/applications/luci-app-adblock/luasrc/model/cbi/adblock/blacklist_tab.lua
new file mode 100644
index 000000000..d540c77d1
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/model/cbi/adblock/blacklist_tab.lua
@@ -0,0 +1,39 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local uci = require("uci")
+local adbinput = uci.get("adblock", "blacklist", "adb_src" or "/etc/adblock/adblock.blacklist")
+
+if not nixio.fs.access(adbinput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("adblock/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translatef("This form allows you to modify the content of the adblock blacklist (%s).<br />", adbinput)
+ .. translate("Please add only one domain per line. Comments introduced with '#' are allowed - ip addresses, wildcards and regex are not."))
+
+f = s:option(TextValue, "data")
+f.datatype = "string"
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(adbinput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(adbinput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-adblock/luasrc/model/cbi/adblock/configuration_tab.lua b/applications/luci-app-adblock/luasrc/model/cbi/adblock/configuration_tab.lua
new file mode 100644
index 000000000..1b83c949e
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/model/cbi/adblock/configuration_tab.lua
@@ -0,0 +1,36 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local adbinput = "/etc/config/adblock"
+
+if not nixio.fs.access(adbinput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("adblock/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translate("This form allows you to modify the content of the main adblock configuration file (/etc/config/adblock)."))
+
+f = s:option(TextValue, "data")
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(adbinput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(adbinput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-adblock/luasrc/model/cbi/adblock/overview_tab.lua b/applications/luci-app-adblock/luasrc/model/cbi/adblock/overview_tab.lua
new file mode 100644
index 000000000..d2740f4da
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/model/cbi/adblock/overview_tab.lua
@@ -0,0 +1,164 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local uci = require("uci")
+local sys = require("luci.sys")
+local json = require("luci.jsonc")
+local adbinput = uci.get("adblock", "global", "adb_rtfile") or "/tmp/adb_runtime.json"
+local parse = json.parse(fs.readfile(adbinput) or "")
+local dnsFile1 = sys.exec("find '/tmp/dnsmasq.d/.adb_hidden' -maxdepth 1 -type f -name 'adb_list*' -print 2>/dev/null")
+local dnsFile2 = sys.exec("find '/var/lib/unbound/.adb_hidden' -maxdepth 1 -type f -name 'adb_list*' -print 2>/dev/null")
+
+m = Map("adblock", translate("Adblock"),
+ translate("Configuration of the adblock package to block ad/abuse domains by using DNS. ")
+ .. translate("For further information ")
+ .. [[<a href="https://github.com/openwrt/packages/blob/master/net/adblock/files/README.md" target="_blank">]]
+ .. translate("see online documentation")
+ .. [[</a>]]
+ .. translate("."))
+m.reset = false
+
+-- Main adblock options
+
+s = m:section(NamedSection, "global", "adblock")
+
+o1 = s:option(Flag, "adb_enabled", translate("Enable adblock"))
+o1.default = o1.enabled
+o1.rmempty = false
+
+btn = s:option(Button, "", translate("Suspend / Resume adblock"))
+if dnsFile1 ~= "" or dnsFile2 ~= "" then
+ btn.inputtitle = translate("Resume adblock")
+ btn.inputstyle = "apply"
+ btn.disabled = false
+ function btn.write()
+ luci.sys.call("/etc/init.d/adblock resume >/dev/null 2>&1")
+ end
+else
+ btn.inputtitle = translate("Suspend adblock")
+ btn.inputstyle = "reset"
+ btn.disabled = false
+ function btn.write()
+ luci.sys.call("/etc/init.d/adblock suspend >/dev/null 2>&1")
+ end
+end
+
+o2 = s:option(Value, "adb_iface", translate("Restrict interface trigger to certain interface(s)"),
+ translate("Space separated list of interfaces that trigger adblock processing. "..
+ "To disable event driven (re-)starts remove all entries."))
+o2.rmempty = true
+
+o3 = s:option(Value, "adb_triggerdelay", translate("Trigger delay"),
+ translate("Additional trigger delay in seconds before adblock processing begins."))
+o3.default = 2
+o3.datatype = "range(1,90)"
+o3.rmempty = false
+
+o4 = s:option(Flag, "adb_debug", translate("Enable verbose debug logging"))
+o4.default = o4.disabled
+o4.rmempty = false
+
+-- Runtime information
+
+ds = s:option(DummyValue, "_dummy", translate("Runtime information"))
+ds.template = "cbi/nullsection"
+
+dv1 = s:option(DummyValue, "status", translate("Status"))
+dv1.template = "adblock/runtime"
+if parse == nil then
+ dv1.value = translate("n/a")
+elseif parse.data.blocked_domains == "0" then
+ dv1.value = translate("no domains blocked")
+elseif dnsFile1 ~= "" or dnsFile2 ~= "" then
+ dv1.value = translate("suspended")
+else
+ dv1.value = translate("active")
+end
+dv2 = s:option(DummyValue, "adblock_version", translate("Adblock version"))
+dv2.template = "adblock/runtime"
+if parse ~= nil then
+ dv2.value = parse.data.adblock_version or translate("n/a")
+else
+ dv2.value = translate("n/a")
+end
+
+dv3 = s:option(DummyValue, "fetch_info", translate("Download Utility (SSL Library)"),
+ translate("For SSL protected blocklist sources you need a suitable SSL library, e.g. 'libustream-ssl' or the wget 'built-in'."))
+dv3.template = "adblock/runtime"
+if parse ~= nil then
+ dv3.value = parse.data.fetch_info or translate("n/a")
+else
+ dv3.value = translate("n/a")
+end
+
+dv4 = s:option(DummyValue, "dns_backend", translate("DNS backend"))
+dv4.template = "adblock/runtime"
+if parse ~= nil then
+ dv4.value = parse.data.dns_backend or translate("n/a")
+else
+ dv4.value = translate("n/a")
+end
+
+dv5 = s:option(DummyValue, "blocked_domains", translate("Blocked domains (overall)"))
+dv5.template = "adblock/runtime"
+if parse ~= nil then
+ dv5.value = parse.data.blocked_domains or translate("n/a")
+else
+ dv5.value = translate("n/a")
+end
+
+dv6 = s:option(DummyValue, "last_rundate", translate("Last rundate"))
+dv6.template = "adblock/runtime"
+if parse ~= nil then
+ dv6.value = parse.data.last_rundate or translate("n/a")
+else
+ dv6.value = translate("n/a")
+end
+
+-- Blocklist table
+
+bl = m:section(TypedSection, "source", translate("Blocklist sources"),
+ translate("Available blocklist sources. ")
+ .. translate("Note that list URLs and Shallalist category selections are configurable in the 'Advanced' section."))
+bl.template = "cbi/tblsection"
+
+name = bl:option(Flag, "enabled", translate("Enabled"))
+name.rmempty = false
+
+ssl = bl:option(DummyValue, "adb_src", translate("SSL req."))
+function ssl.cfgvalue(self, section)
+ local source = self.map:get(section, "adb_src")
+ if source and source:match("https://") then
+ return translate("Yes")
+ else
+ return translate("No")
+ end
+end
+
+des = bl:option(DummyValue, "adb_src_desc", translate("Description"))
+
+-- Extra options
+
+e = m:section(NamedSection, "global", "adblock", translate("Extra options"),
+ translate("Options for further tweaking in case the defaults are not suitable for you."))
+
+e1 = e:option(Flag, "adb_forcedns", translate("Force local DNS"),
+ translate("Redirect all DNS queries to the local resolver."))
+e1.default = e1.disabled
+e1.rmempty = false
+
+e2 = e:option(Flag, "adb_forcesrt", translate("Force Overall Sort"),
+ translate("Enable memory intense overall sort / duplicate removal on low memory devices (&lt; 64 MB RAM)"))
+e2.default = e2.disabled
+e2.rmempty = false
+
+e3 = e:option(Flag, "adb_backup", translate("Enable blocklist backup"))
+e3.default = e3.disabled
+e3.rmempty = false
+
+e4 = e:option(Value, "adb_backupdir", translate("Backup directory"))
+e4.datatype = "directory"
+e4.rmempty = false
+
+return m
diff --git a/applications/luci-app-adblock/luasrc/model/cbi/adblock/whitelist_tab.lua b/applications/luci-app-adblock/luasrc/model/cbi/adblock/whitelist_tab.lua
new file mode 100644
index 000000000..23c99a977
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/model/cbi/adblock/whitelist_tab.lua
@@ -0,0 +1,39 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local uci = require("uci")
+local adbinput = uci.get("adblock", "global", "adb_whitelist") or "/etc/adblock/adblock.whitelist"
+
+if not nixio.fs.access(adbinput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("adblock/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translatef("This form allows you to modify the content of the adblock whitelist (%s).<br />", adbinput)
+ .. translate("Please add only one domain per line. Comments introduced with '#' are allowed - ip addresses, wildcards and regex are not."))
+
+f = s:option(TextValue, "data")
+f.datatype = "string"
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(adbinput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(adbinput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-adblock/luasrc/view/adblock/config_css.htm b/applications/luci-app-adblock/luasrc/view/adblock/config_css.htm
new file mode 100644
index 000000000..53493a18f
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/view/adblock/config_css.htm
@@ -0,0 +1,10 @@
+<style type="text/css">
+ textarea
+ {
+ border: 1px solid #cccccc;
+ padding: 5px;
+ font-size: 12px;
+ font-family: monospace;
+ resize: none;
+ }
+</style>
diff --git a/applications/luci-app-adblock/luasrc/view/adblock/logread.htm b/applications/luci-app-adblock/luasrc/view/adblock/logread.htm
new file mode 100644
index 000000000..5e25a549c
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/view/adblock/logread.htm
@@ -0,0 +1,14 @@
+<%#
+Copyright 2017 Dirk Brenken (dev@brenken.org)
+This is free software, licensed under the Apache License, Version 2.0
+-%>
+
+<%+header%>
+
+<div class="cbi-map">
+ <fieldset class="cbi-section">
+ <div class="cbi-section-descr"><%:This form shows the syslog output, pre-filtered for adblock related messages only.%></div>
+ <textarea id="logread_id" style="width: 100%; height: 450px; border: 1px solid #cccccc; padding: 5px; font-size: 12px; font-family: monospace; resize: none;" readonly="readonly" wrap="off" rows="<%=content:cmatch("\n")+2%>"><%=content:pcdata()%></textarea>
+ </fieldset>
+</div>
+<%+footer%>
diff --git a/applications/luci-app-adblock/luasrc/view/adblock/query.htm b/applications/luci-app-adblock/luasrc/view/adblock/query.htm
new file mode 100644
index 000000000..ce706e40a
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/view/adblock/query.htm
@@ -0,0 +1,65 @@
+<%#
+Copyright 2017 Dirk Brenken (dev@brenken.org)
+This is free software, licensed under the Apache License, Version 2.0
+-%>
+
+<%+header%>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">
+//<![CDATA[
+ var stxhr = new XHR();
+
+ function update_status(data)
+ {
+ var domain = data.value;
+ var input = document.getElementById('query_input');
+ var output = document.getElementById('query_output');
+
+ if (input && output)
+ {
+ output.innerHTML =
+ '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> ' +
+ '<%:Waiting for command to complete...%>'
+ ;
+ input.parentNode.style.display = 'block';
+ input.style.display = 'inline';
+ stxhr.post('<%=luci.dispatcher.build_url('admin/services/adblock/advanced/result/')%>' + domain, { token: '<%=token%>' },
+ function(x)
+ {
+ if (x.responseText)
+ {
+ input.style.display = 'none';
+ output.innerHTML = String.format('<pre>%h</pre>', x.responseText);
+ }
+ else
+ {
+ input.style.display = 'none';
+ output.innerHTML = '<span class="error"><%:Invalid domain specified!%></span>';
+ }
+ }
+ );
+ }
+ }
+//]]>
+</script>
+
+<form method="post" action="<%=REQUEST_URI%>">
+ <div class="cbi-map">
+ <fieldset class="cbi-section">
+ <div class="cbi-section-descr"><%:This form allows you to query active block lists for certain domains, e.g. for whitelisting.%></div>
+ <div style="width:33%; float:left;">
+ <input style="margin: 5px 0" type="text" value="www.lede-project.org" name="input" />
+ <input type="button" value="<%:Query%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.input)" />
+ </div>
+ <br style="clear:both" />
+ <br />
+ </fieldset>
+ </div>
+ <fieldset class="cbi-section" style="display:none">
+ <legend id="query_input"><%:Collecting data...%></legend>
+ <span id="query_output"></span>
+ </fieldset>
+</form>
+
+<%+footer%>
diff --git a/applications/luci-app-adblock/luasrc/view/adblock/runtime.htm b/applications/luci-app-adblock/luasrc/view/adblock/runtime.htm
new file mode 100644
index 000000000..ee3a4553a
--- /dev/null
+++ b/applications/luci-app-adblock/luasrc/view/adblock/runtime.htm
@@ -0,0 +1,10 @@
+<%#
+Copyright 2017 Dirk Brenken (dev@brenken.org)
+This is free software, licensed under the Apache License, Version 2.0
+-%>
+
+<%+cbi/valueheader%>
+
+<input name="runtime" id="runtime" type="text" class="cbi-input-text" style="border: none; box-shadow: none; background-color: #ffffff; color: #0069d6;" value="<%=self:cfgvalue(section)%>" disabled="disabled" />
+
+<%+cbi/valuefooter%>
diff --git a/applications/luci-app-adblock/po/ja/adblock.po b/applications/luci-app-adblock/po/ja/adblock.po
new file mode 100644
index 000000000..6c89c5e80
--- /dev/null
+++ b/applications/luci-app-adblock/po/ja/adblock.po
@@ -0,0 +1,364 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.0.1\n"
+"Language: ja\n"
+
+msgid "."
+msgstr "。"
+
+msgid "Adblock"
+msgstr "Adblock"
+
+msgid "Adblock Domain Query"
+msgstr "Adblock ドメイン検索"
+
+msgid "Adblock Logfile"
+msgstr "Adblock ログファイル"
+
+msgid "Adblock version"
+msgstr "Adblock ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
+
+msgid "Additional trigger delay in seconds before adblock processing begins."
+msgstr "Adblock ã®å‡¦ç†ãŒé–‹å§‹ã•ã‚Œã‚‹ã¾ã§ã®ã€è¿½åŠ ã®é…延時間(秒)ã§ã™ã€‚"
+
+msgid "Advanced"
+msgstr "詳細設定"
+
+msgid "Available blocklist sources."
+msgstr "利用å¯èƒ½ãªãƒ–ロックリストæ供元ã§ã™ã€‚"
+
+msgid "Backup directory"
+msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—å…ˆ ディレクトリ"
+
+msgid "Blocked domains (overall)"
+msgstr "ブロック済ã¿ãƒ‰ãƒ¡ã‚¤ãƒ³ï¼ˆå…¨ä½“)"
+
+msgid "Blocklist sources"
+msgstr "ブロックリストæ供元"
+
+msgid "Collecting data..."
+msgstr "データåŽé›†ä¸­ã§ã™..."
+
+msgid ""
+"Configuration of the adblock package to block ad/abuse domains by using DNS."
+msgstr ""
+"DNS ã®åˆ©ç”¨ã«ã‚ˆã£ã¦åºƒå‘Š/ä¸æ­£ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’ブロックã™ã‚‹ã€Adblock パッケージã®è¨­å®šã§"
+"ã™ã€‚"
+
+msgid "DNS backend"
+msgstr "DNS ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰"
+
+msgid "Description"
+msgstr "説明"
+
+msgid "Download Utility (SSL Library)"
+msgstr "ダウンロード ユーティリティ(SSL ライブラリ)"
+
+msgid "Edit Blacklist"
+msgstr "ブラックリストã®ç·¨é›†"
+
+msgid "Edit Configuration"
+msgstr "設定ã®ç·¨é›†"
+
+msgid "Edit Whitelist"
+msgstr "ホワイトリストã®ç·¨é›†"
+
+msgid "Enable adblock"
+msgstr "Adblock ã®æœ‰åŠ¹åŒ–"
+
+msgid "Enable blocklist backup"
+msgstr "ブロックリスト ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã®æœ‰åŠ¹åŒ–"
+
+msgid ""
+"Enable memory intense overall sort / duplicate removal on low memory devices "
+"(&lt; 64 MB RAM)"
+msgstr ""
+"メモリー容é‡ã®å°‘ãªã„デãƒã‚¤ã‚¹ï¼ˆRAM 64MB 未満)ã«ãŠã„ã¦ã€ä¸€æ™‚ファイル内ã®å…¨ä½“çš„"
+"ãªã‚½ãƒ¼ãƒˆåŠã³é‡è¤‡ã®é™¤åŽ»ã‚’有効ã«ã—ã¾ã™ã€‚"
+
+msgid "Enable verbose debug logging"
+msgstr "詳細ãªãƒ‡ãƒãƒƒã‚° ログã®æœ‰åŠ¹åŒ–"
+
+msgid "Enabled"
+msgstr "有効"
+
+msgid "Extra options"
+msgstr "拡張設定"
+
+msgid ""
+"For SSL protected blocklist sources you need a suitable SSL library, e.g. "
+"'libustream-ssl' or the wget 'built-in'."
+msgstr ""
+"SSLã§ä¿è­·ã•ã‚Œã¦ã„るブロックリストã®å–å¾—ã«ã¯ã€é©åˆ‡ãªSSL ライブラリãŒå¿…è¦ã§ã™ã€‚"
+"例: 'libustream-ssl' ã¾ãŸã¯ wget 'ビルトイン'"
+
+msgid "For further information"
+msgstr "詳細ãªæƒ…å ±ã¯"
+
+msgid "Force Overall Sort"
+msgstr "全体ソートã®å¼·åˆ¶"
+
+msgid "Force local DNS"
+msgstr "ローカル DNS ã®å¼·åˆ¶"
+
+msgid "Input file not found, please check your configuration."
+msgstr "入力ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。設定を確èªã—ã¦ãã ã•ã„。"
+
+msgid "Invalid domain specified!"
+msgstr "無効ãªãƒ‰ãƒ¡ã‚¤ãƒ³ãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ï¼"
+
+msgid "Last rundate"
+msgstr "最終実行日時"
+
+msgid "Loading"
+msgstr "読込中"
+
+msgid "No"
+msgstr "ã„ã„ãˆ"
+
+msgid ""
+"Note that list URLs and Shallalist category selections are configurable in "
+"the 'Advanced' section."
+msgstr ""
+"リスト㮠URL åŠã³ \"Shalla\" リストã®ã‚«ãƒ†ã‚´ãƒªãƒ¼è¨­å®šã¯ã€'詳細設定' セクション"
+"ã§è¨­å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"Options for further tweaking in case the defaults are not suitable for you."
+msgstr "デフォルト設定ãŒé©åˆ‡ã§ãªã„å ´åˆã€è¿½åŠ ã§è¨­å®šã™ã‚‹ãŸã‚ã®ã‚ªãƒ—ションã§ã™ã€‚"
+
+msgid "Overview"
+msgstr "概è¦"
+
+msgid ""
+"Please add only one domain per line. Comments introduced with '#' are "
+"allowed - ip addresses, wildcards and regex are not."
+msgstr ""
+"1è¡Œã«1ã¤ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’追加ã—ã¦ãã ã•ã„。'#' ã‹ã‚‰å§‹ã¾ã‚‹ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã§ãã¾ã™"
+"ãŒã€IP アドレスやワイルドカードã€æ­£è¦è¡¨ç¾ã‚’設定値ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›"
+"ん。"
+
+msgid "Query"
+msgstr "検索"
+
+msgid "Query domains"
+msgstr "ドメインã®æ¤œç´¢"
+
+msgid "Redirect all DNS queries to the local resolver."
+msgstr "å…¨ã¦ã® DNS クエリをローカル リゾルãƒã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¾ã™ã€‚"
+
+msgid "Restrict interface trigger to certain interface(s)"
+msgstr "インターフェース トリガーを特定ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«é™å®šã™ã‚‹"
+
+msgid "Resume adblock"
+msgstr "Adblock ã®å†é–‹"
+
+msgid "Runtime information"
+msgstr "実行情報"
+
+msgid "SSL req."
+msgstr "SSL å¿…é ˆ"
+
+msgid ""
+"Space separated list of interfaces that trigger adblock processing. To "
+"disable event driven (re-)starts remove all entries."
+msgstr ""
+"Adblock ã®å‡¦ç†ã®ãƒˆãƒªã‚¬ãƒ¼ã¨ãªã‚‹ã€ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒªã‚¹ãƒˆ"
+"ã§ã™ã€‚処ç†ã‚’発生ã•ã›ã‚‹ã‚¤ãƒ™ãƒ³ãƒˆã‚’無効ã«ã™ã‚‹ã«ã¯ã€å…¨ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãƒ¼ã‚’削除ã—ã¦ç©º"
+"欄ã«ã—ã¾ã™ã€‚"
+
+msgid "Status"
+msgstr "ステータス"
+
+msgid "Suspend / Resume adblock"
+msgstr "Adblock ã®ä¸€æ™‚åœæ­¢/å†é–‹"
+
+msgid "Suspend adblock"
+msgstr "Adblock ã®ä¸€æ™‚åœæ­¢"
+
+msgid ""
+"This form allows you to modify the content of the adblock blacklist (%s)."
+"<br />"
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€Adblock ブラックリスト (%s) ã®å†…容を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾"
+"ã™ã€‚<br />"
+
+msgid ""
+"This form allows you to modify the content of the adblock whitelist (%s)."
+"<br />"
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€Adblock ホワイトリスト (%s) ã®å†…容を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾"
+"ã™ã€‚<br />"
+
+msgid ""
+"This form allows you to modify the content of the main adblock configuration "
+"file (/etc/config/adblock)."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ãƒ¡ã‚¤ãƒ³ã®Adblock 設定ファイル (/etc/config/adblock) ã®å†…容を"
+"変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"This form allows you to query active block lists for certain domains, e.g. "
+"for whitelisting."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ç¾åœ¨æœ‰åŠ¹ãªãƒªã‚¹ãƒˆå†…ã§ç‰¹å®šã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’検索ã™ã‚‹ã“ã¨ãŒã§ãã¾"
+"ã™ã€‚例: ホワイトリスト内"
+
+msgid ""
+"This form shows the syslog output, pre-filtered for adblock related messages "
+"only."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã«ã¯ã€ã‚·ã‚¹ãƒ†ãƒ ãƒ­ã‚°å†…ã® Adblock ã«é–¢é€£ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ã¿ãŒè¡¨ç¤ºã•ã‚Œ"
+"ã¾ã™ã€‚"
+
+msgid "Trigger delay"
+msgstr "トリガーé…延"
+
+msgid "View Logfile"
+msgstr "ログファイルを見る"
+
+msgid "Waiting for command to complete..."
+msgstr "コマンドã®å®Œäº†ã‚’ãŠå¾…ã¡ãã ã•ã„..."
+
+msgid "Yes"
+msgstr "ã¯ã„"
+
+msgid "active"
+msgstr "動作中"
+
+msgid "n/a"
+msgstr "利用ä¸å¯"
+
+msgid "no domains blocked"
+msgstr "ブロックã•ã‚ŒãŸãƒ‰ãƒ¡ã‚¤ãƒ³ã¯ã‚ã‚Šã¾ã›ã‚“"
+
+msgid "see online documentation"
+msgstr "オンライン ドキュメントを確èªã—ã¦ãã ã•ã„"
+
+msgid "suspended"
+msgstr "一時åœæ­¢ä¸­"
+
+#~ msgid "Backup options"
+#~ msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— オプション"
+
+#~ msgid "Restrict interface reload trigger to certain interface(s)"
+#~ msgstr "リロード トリガを特定ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«é™å®šã™ã‚‹"
+
+#~ msgid ""
+#~ "Space separated list of interfaces that trigger a reload action. To "
+#~ "disable reload trigger at all remove all entries."
+#~ msgstr ""
+#~ "リロードã®ãƒˆãƒªã‚¬ã¨ãªã‚‹ã€ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒªã‚¹ãƒˆã§ã™ã€‚"
+#~ "リロード トリガを無効ã«ã™ã‚‹ã«ã¯ã€å…¨ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãƒ¼ã‚’削除ã—ã¦ç©ºæ¬„ã«ã—ã¾ã™ã€‚"
+
+#~ msgid ""
+#~ "Space separated list of interfaces that trigger a reload action. To "
+#~ "disable reload trigger at all set it to 'false'."
+#~ msgstr ""
+#~ "リロードã®ãƒˆãƒªã‚¬ã¨ãªã‚‹ã€ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒªã‚¹ãƒˆã§"
+#~ "ã™ã€‚'false' ã«è¨­å®šã—ãŸå ´åˆã€å…¨ã¦ã®ãƒªãƒ­ãƒ¼ãƒ‰ トリガã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚"
+
+#~ msgid ""
+#~ "Please add only one domain per line. Comments introduced with '#' are "
+#~ "allowed - ip addresses, wildcards & regex are not."
+#~ msgstr ""
+#~ "一行ã«ä¸€ã¤ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’追加ã—ã¦ãã ã•ã„。'#' ã‹ã‚‰å§‹ã¾ã‚‹ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã§ãã¾"
+#~ "ã™ãŒã€IPアドレスやワイルドカードã€æ­£è¦è¡¨ç¾ã‚’設定値ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ã"
+#~ "ã¾ã›ã‚“。"
+
+#~ msgid ""
+#~ "). Note that list URLs and Shallalist category selections are not "
+#~ "configurable via Luci."
+#~ msgstr ""
+#~ ")。ã“れらã®ãƒªã‚¹ãƒˆã®URLãŠã‚ˆã³shallaリストã®é¸æŠžæ¸ˆã¿ã‚«ãƒ†ã‚´ãƒªãƒ¼ã¯ã€Luciを通"
+#~ "ã—ã¦è¨­å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。"
+
+#~ msgid "Available blocklist sources ("
+#~ msgstr "利用å¯èƒ½ãªãƒ–ロックリストæ供元ã§ã™ï¼ˆ"
+
+#~ msgid ""
+#~ "File with whitelisted hosts/domains that are allowed despite being on a "
+#~ "blocklist."
+#~ msgstr ""
+#~ "ホワイトリスト ファイル内ã®ãƒ›ã‚¹ãƒˆ/ドメインã¯ã€ãƒ–ロックリストã®ç™»éŒ²ã«é–¢ã‚ら"
+#~ "ãšè¨±å¯ã•ã‚Œã¾ã™ã€‚"
+
+#~ msgid "Global options"
+#~ msgstr "一般設定"
+
+#~ msgid "Restrict reload trigger to certain interface(s)"
+#~ msgstr "リロードトリガを特定ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«é™å®šã™ã‚‹"
+
+#~ msgid ""
+#~ "Space separated list of wan interfaces that trigger reload action. To "
+#~ "disable reload trigger set it to 'false'. Default: empty"
+#~ msgstr ""
+#~ "リロード実行ã®ãƒˆãƒªã‚¬ã¨ãªã‚‹ã€ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸWANインターフェースã®ãƒªã‚¹"
+#~ "トã§ã™ã€‚リロードトリガを無効ã«ã™ã‚‹ã«ã¯ã€ false を設定ã—ã¾ã™ã€‚デフォルト:"
+#~ "(空)"
+
+#~ msgid "Whitelist file"
+#~ msgstr "ホワイトリスト ファイル"
+
+#~ msgid "see list details"
+#~ msgstr "リストã®è©³ç´°ã‚’見る"
+
+#~ msgid "Count"
+#~ msgstr "カウント"
+
+#~ msgid "Do not write status info to flash"
+#~ msgstr "ステータス情報をフラッシュã«æ›¸ãè¾¼ã¾ãªã„"
+
+#~ msgid "Last update of the blocklists"
+#~ msgstr "ブロックリストã®æœ€çµ‚更新日時"
+
+#~ msgid "List date/state"
+#~ msgstr "リスト日時/状態"
+
+#~ msgid "Name of the logical lan interface"
+#~ msgstr "è«–ç†LANインターフェースå"
+
+#~ msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+#~ msgstr "ブロック済ã¿ãƒ‘ケットã®å‰²åˆï¼ˆæœ€çµ‚更新以å‰ã€IPv4/IPv6)"
+
+#~ msgid "Port of the adblock uhttpd instance"
+#~ msgstr "adblock uhttpdインスタンスã®ãƒãƒ¼ãƒˆ"
+
+#~ msgid "Port of the adblock uhttpd instance for https links"
+#~ msgstr "httpsリンク用adblock uhttpdインスタンスã®ãƒãƒ¼ãƒˆ"
+
+#~ msgid "Redirect all DNS queries to the local resolver"
+#~ msgstr "å…¨ã¦ã®DNSクエリをローカルリゾルãƒã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆ"
+
+#~ msgid ""
+#~ "Skip writing update status information to the config file. Status fields "
+#~ "on this page will not be updated."
+#~ msgstr ""
+#~ "更新ステータス情報をコンフィグファイルã«æ›¸ãè¾¼ã¾ãšã€ã‚¹ã‚­ãƒƒãƒ—ã—ã¾ã™ã€‚ã“ã®"
+#~ "ページã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ç”»é¢ã¯æ›´æ–°ã•ã‚Œãªããªã‚Šã¾ã™ã€‚"
+
+#~ msgid "Statistics"
+#~ msgstr "ステータス"
+
+#~ msgid "Timeout for blocklist fetch (seconds)"
+#~ msgstr "ブロックリストå–å¾—ã®åˆ¶é™æ™‚間(秒)"
+
+#~ msgid "Total count of blocked domains"
+#~ msgstr "ブロック済ã¿ãƒ‰ãƒ¡ã‚¤ãƒ³ã®åˆè¨ˆ"
+
+#~ msgid ""
+#~ "When adblock is active, all DNS queries are redirected to the local "
+#~ "resolver in this server by default. You can disable that to allow queries "
+#~ "to external DNS servers."
+#~ msgstr ""
+#~ "adblockãŒã‚¢ã‚¯ãƒ†ã‚£ãƒ–ã§ã‚る時ã€å…¨ã¦ã®DNSクエリã¯æ—¢å®šã§ã“ã®ã‚µãƒ¼ãƒãƒ¼ä¸Šã®ãƒªã‚¾ãƒ«"
+#~ "ãƒã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã•ã‚Œã¾ã™ã€‚外部DNSサーãƒãƒ¼ã¸ã®ã‚¯ã‚¨ãƒªã‚’許å¯ã™ã‚‹å ´åˆã€ã“ã®è¨­"
+#~ "定を無効ã«ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚"
diff --git a/applications/luci-app-adblock/po/pt-br/adblock.po b/applications/luci-app-adblock/po/pt-br/adblock.po
new file mode 100644
index 000000000..05002b7d6
--- /dev/null
+++ b/applications/luci-app-adblock/po/pt-br/adblock.po
@@ -0,0 +1,268 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "."
+msgstr ""
+
+msgid "Adblock"
+msgstr "Adblock"
+
+msgid "Adblock Domain Query"
+msgstr ""
+
+msgid "Adblock Logfile"
+msgstr ""
+
+msgid "Adblock version"
+msgstr ""
+
+msgid "Additional trigger delay in seconds before adblock processing begins."
+msgstr ""
+
+msgid "Advanced"
+msgstr ""
+
+msgid "Available blocklist sources."
+msgstr ""
+
+msgid "Backup directory"
+msgstr "Diretório da cópia de segurança"
+
+msgid "Blocked domains (overall)"
+msgstr ""
+
+msgid "Blocklist sources"
+msgstr "Fontes de listas de bloqueio"
+
+msgid "Collecting data..."
+msgstr ""
+
+msgid ""
+"Configuration of the adblock package to block ad/abuse domains by using DNS."
+msgstr ""
+"Configuração do pacote adblock para bloquear, usando o DNS, domínios que "
+"distribuem propagandas abusivas."
+
+msgid "DNS backend"
+msgstr ""
+
+msgid "Description"
+msgstr "Descrição"
+
+msgid "Download Utility (SSL Library)"
+msgstr ""
+
+msgid "Edit Blacklist"
+msgstr ""
+
+msgid "Edit Configuration"
+msgstr ""
+
+msgid "Edit Whitelist"
+msgstr ""
+
+msgid "Enable adblock"
+msgstr "Habilitar adblock"
+
+msgid "Enable blocklist backup"
+msgstr "Habilitar cópia de segurança da lista de bloqueio"
+
+msgid ""
+"Enable memory intense overall sort / duplicate removal on low memory devices "
+"(&lt; 64 MB RAM)"
+msgstr ""
+
+msgid "Enable verbose debug logging"
+msgstr "Habilite registros detalhados para depuração"
+
+msgid "Enabled"
+msgstr "Habilitado"
+
+msgid "Extra options"
+msgstr "Opções adicionais"
+
+msgid ""
+"For SSL protected blocklist sources you need a suitable SSL library, e.g. "
+"'libustream-ssl' or the wget 'built-in'."
+msgstr ""
+
+msgid "For further information"
+msgstr ""
+
+msgid "Force Overall Sort"
+msgstr ""
+
+msgid "Force local DNS"
+msgstr ""
+
+msgid "Input file not found, please check your configuration."
+msgstr ""
+
+msgid "Invalid domain specified!"
+msgstr ""
+
+msgid "Last rundate"
+msgstr ""
+
+msgid "Loading"
+msgstr ""
+
+msgid "No"
+msgstr ""
+
+msgid ""
+"Note that list URLs and Shallalist category selections are configurable in "
+"the 'Advanced' section."
+msgstr ""
+
+msgid ""
+"Options for further tweaking in case the defaults are not suitable for you."
+msgstr ""
+"Opções para aprimoramentos adicionais caso as opções padrão não sejam "
+"suficientes para você."
+
+msgid "Overview"
+msgstr ""
+
+msgid ""
+"Please add only one domain per line. Comments introduced with '#' are "
+"allowed - ip addresses, wildcards and regex are not."
+msgstr ""
+
+msgid "Query"
+msgstr ""
+
+msgid "Query domains"
+msgstr ""
+
+msgid "Redirect all DNS queries to the local resolver."
+msgstr ""
+
+msgid "Restrict interface trigger to certain interface(s)"
+msgstr ""
+
+msgid "Resume adblock"
+msgstr ""
+
+msgid "Runtime information"
+msgstr ""
+
+msgid "SSL req."
+msgstr ""
+
+msgid ""
+"Space separated list of interfaces that trigger adblock processing. To "
+"disable event driven (re-)starts remove all entries."
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Suspend / Resume adblock"
+msgstr ""
+
+msgid "Suspend adblock"
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the adblock blacklist (%s)."
+"<br />"
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the adblock whitelist (%s)."
+"<br />"
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the main adblock configuration "
+"file (/etc/config/adblock)."
+msgstr ""
+
+msgid ""
+"This form allows you to query active block lists for certain domains, e.g. "
+"for whitelisting."
+msgstr ""
+
+msgid ""
+"This form shows the syslog output, pre-filtered for adblock related messages "
+"only."
+msgstr ""
+
+msgid "Trigger delay"
+msgstr ""
+
+msgid "View Logfile"
+msgstr ""
+
+msgid "Waiting for command to complete..."
+msgstr ""
+
+msgid "Yes"
+msgstr ""
+
+msgid "active"
+msgstr ""
+
+msgid "n/a"
+msgstr ""
+
+msgid "no domains blocked"
+msgstr ""
+
+msgid "see online documentation"
+msgstr ""
+
+msgid "suspended"
+msgstr ""
+
+#~ msgid "Backup options"
+#~ msgstr "Opções da cópia de segurança"
+
+#~ msgid ""
+#~ "). Note that list URLs and Shallalist category selections are not "
+#~ "configurable via Luci."
+#~ msgstr ""
+#~ "). Note que a lista de URL e as seleções de categoria da Shallalist não "
+#~ "são configuráveis pelo Luci."
+
+#~ msgid "Available blocklist sources ("
+#~ msgstr "Fontes de listas de bloqueio disponíveis ("
+
+#~ msgid ""
+#~ "File with whitelisted hosts/domains that are allowed despite being on a "
+#~ "blocklist."
+#~ msgstr ""
+#~ "Arquivo com a lista branca dos equipamentos/domínios que serão "
+#~ "autorizados mesmo estando na lista de bloqueio."
+
+#~ msgid "Global options"
+#~ msgstr "Opções Globais"
+
+#~ msgid "Restrict reload trigger to certain interface(s)"
+#~ msgstr "Restringir o gatilho de recarga para somente alguma(s) interface(s)"
+
+#~ msgid ""
+#~ "Space separated list of wan interfaces that trigger reload action. To "
+#~ "disable reload trigger set it to 'false'. Default: empty"
+#~ msgstr ""
+#~ "Lista das interfaces WAN, separadas por espaço, que podem disparar uma "
+#~ "ação de recarga. Para desabilitar este gatilho, defina-o como 'false'. "
+#~ "Padrão: em branco"
+
+#~ msgid "Whitelist file"
+#~ msgstr "Arquivo da lista branca"
+
+#~ msgid "see list details"
+#~ msgstr "veja os detalhes da lista"
diff --git a/applications/luci-app-adblock/po/sv/adblock.po b/applications/luci-app-adblock/po/sv/adblock.po
index 9c0ca21f1..7a19f872f 100644
--- a/applications/luci-app-adblock/po/sv/adblock.po
+++ b/applications/luci-app-adblock/po/sv/adblock.po
@@ -1,47 +1,79 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8\n"
-msgid ""
-"). Note that list URLs and Shallalist category selections are not "
-"configurable via Luci."
-msgstr ""
+msgid "."
+msgstr "."
msgid "Adblock"
-msgstr "Blockering av annonser"
+msgstr "Adblock"
+
+msgid "Adblock Domain Query"
+msgstr ""
+
+msgid "Adblock Logfile"
+msgstr "Adblock's loggfil"
+
+msgid "Adblock version"
+msgstr "Version för Adblock"
+
+msgid "Additional trigger delay in seconds before adblock processing begins."
+msgstr ""
-msgid "Available blocklist sources ("
-msgstr "Tillgängliga källor för blockeringslistor ("
+msgid "Advanced"
+msgstr "Avancerat"
+
+msgid "Available blocklist sources."
+msgstr "Tillgängliga källor för blockeringslistor"
msgid "Backup directory"
msgstr "Säkerhetskopiera mapp"
-msgid "Backup options"
-msgstr "Alternativ för säkerhetskopiering"
+msgid "Blocked domains (overall)"
+msgstr "Blockerade domäner (övergripande)"
msgid "Blocklist sources"
msgstr "Källor för blockeringslistor"
+msgid "Collecting data..."
+msgstr "Samlar in data..."
+
msgid ""
"Configuration of the adblock package to block ad/abuse domains by using DNS."
msgstr ""
-"Konfiguration av paket adblock för att blockera annons/otillåtna domäner "
-"genom att användning DNS."
+"Konfiguration av paketet adblock för att blockera annons/otillåtna domäner genom att använda DNS."
-msgid "Count"
-msgstr "Räkna"
+msgid "DNS backend"
+msgstr "Bakände för DNS"
msgid "Description"
msgstr "Beskrivning"
-msgid "Do not write status info to flash"
-msgstr "Skriv inte status info till flash"
+msgid "Download Utility (SSL Library)"
+msgstr "Nerladdningsprogram (SSL-bibliotek)"
+
+msgid "Edit Blacklist"
+msgstr "Redigera svartlista"
+
+msgid "Edit Configuration"
+msgstr Redigerar konfigurationen""
+
+msgid "Edit Whitelist"
+msgstr "Redigera vitlista"
msgid "Enable adblock"
-msgstr "Aktivera abblock"
+msgstr "Aktivera adblock"
msgid "Enable blocklist backup"
msgstr "Aktivera säkerhetskopiering av blockeringslistan"
+msgid ""
+"Enable memory intense overall sort / duplicate removal on low memory devices "
+"(&lt; 64 MB RAM)"
+msgstr ""
+
+msgid "Enable verbose debug logging"
+msgstr ""
+
msgid "Enabled"
msgstr "Aktiverad"
@@ -49,66 +81,158 @@ msgid "Extra options"
msgstr "Extra alternativ"
msgid ""
-"File with whitelisted hosts/domains that are allowed despite being on a "
-"blocklist."
+"For SSL protected blocklist sources you need a suitable SSL library, e.g. "
+"'libustream-ssl' or the wget 'built-in'."
msgstr ""
-msgid "Global options"
-msgstr "Globala alternativ"
+msgid "For further information"
+msgstr "För mer information"
-msgid "IPv4 blackhole ip address"
+msgid "Force Overall Sort"
msgstr ""
-msgid "IPv6 blackhole ip address"
-msgstr ""
+msgid "Force local DNS"
+msgstr "Tvinga lokal DNS"
-msgid "Last update of the blocklists"
-msgstr ""
+msgid "Input file not found, please check your configuration."
+msgstr "Inmatningsfilen hittades inte, var vänlig och kontrollera din konfiguration."
+
+msgid "Invalid domain specified!"
+msgstr "Ogiltig domän angiven!"
-msgid "List date/state"
+msgid "Last rundate"
msgstr ""
-msgid "Name of the logical lan interface"
+msgid "Loading"
+msgstr "Laddar"
+
+msgid "No"
+msgstr "Nej"
+
+msgid ""
+"Note that list URLs and Shallalist category selections are configurable in "
+"the 'Advanced' section."
msgstr ""
msgid ""
"Options for further tweaking in case the defaults are not suitable for you."
msgstr ""
-msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+msgid "Overview"
+msgstr "Översikt"
+
+msgid ""
+"Please add only one domain per line. Comments introduced with '#' are "
+"allowed - ip addresses, wildcards and regex are not."
+msgstr ""
+
+msgid "Query"
+msgstr ""
+
+msgid "Query domains"
msgstr ""
-msgid "Port of the adblock uhttpd instance"
+msgid "Redirect all DNS queries to the local resolver."
msgstr ""
-msgid "Port of the adblock uhttpd instance for https links"
+msgid "Restrict interface trigger to certain interface(s)"
msgstr ""
-msgid "Redirect all DNS queries to the local resolver"
-msgstr "Dirigera om alla DNS-förfrågning till den lokala resolvern"
+msgid "Resume adblock"
+msgstr "Ã…teruppta adblock"
+
+msgid "Runtime information"
+msgstr "Information om kör-tid"
+
+msgid "SSL req."
+msgstr ""
msgid ""
-"Skip writing update status information to the config file. Status fields on "
-"this page will not be updated."
+"Space separated list of interfaces that trigger adblock processing. To "
+"disable event driven (re-)starts remove all entries."
msgstr ""
-msgid "Statistics"
+msgid "Status"
+msgstr "Status"
+
+msgid "Suspend / Resume adblock"
+msgstr "Upphäv / Återuppta adblock"
+
+msgid "Suspend adblock"
+msgstr "Upphäv adblock"
+
+msgid ""
+"This form allows you to modify the content of the adblock blacklist (%s)."
+"<br />"
msgstr ""
-msgid "Timeout for blocklist fetch (seconds)"
+msgid ""
+"This form allows you to modify the content of the adblock whitelist (%s)."
+"<br />"
msgstr ""
-msgid "Total count of blocked domains"
+msgid ""
+"This form allows you to modify the content of the main adblock configuration "
+"file (/etc/config/adblock)."
+msgstr ""
+
+msgid ""
+"This form allows you to query active block lists for certain domains, e.g. "
+"for whitelisting."
msgstr ""
msgid ""
-"When adblock is active, all DNS queries are redirected to the local resolver "
-"in this server by default. You can disable that to allow queries to external "
-"DNS servers."
+"This form shows the syslog output, pre-filtered for adblock related messages "
+"only."
msgstr ""
-msgid "Whitelist file"
-msgstr "Vitlista fil"
+msgid "Trigger delay"
+msgstr ""
+
+msgid "View Logfile"
+msgstr "Visa loggfil"
+
+msgid "Waiting for command to complete..."
+msgstr "Väntar på att kommandot ska slutföras..."
+
+msgid "Yes"
+msgstr "Ja"
+
+msgid "active"
+msgstr "aktiv"
+
+msgid "n/a"
+msgstr "n/a"
+
+msgid "no domains blocked"
+msgstr "inga domäner blockerades"
+
+msgid "see online documentation"
+msgstr ""
+
+msgid "suspended"
+msgstr "upphävd"
+
+#~ msgid "Backup options"
+#~ msgstr "Alternativ för säkerhetskopiering"
+
+#~ msgid "Available blocklist sources ("
+#~ msgstr "Tillgängliga källor för blockeringslistor ("
+
+#~ msgid "Global options"
+#~ msgstr "Globala alternativ"
+
+#~ msgid "Whitelist file"
+#~ msgstr "Vitlista fil"
+
+#~ msgid "see list details"
+#~ msgstr "se listans detaljer"
+
+#~ msgid "Count"
+#~ msgstr "Räkna"
+
+#~ msgid "Do not write status info to flash"
+#~ msgstr "Skriv inte status info till flash"
-msgid "see list details"
-msgstr "se listans detaljer"
+#~ msgid "Redirect all DNS queries to the local resolver"
+#~ msgstr "Dirigera om alla DNS-förfrågning till den lokala resolvern"
diff --git a/applications/luci-app-adblock/po/templates/adblock.pot b/applications/luci-app-adblock/po/templates/adblock.pot
index eeb0d975b..c75544616 100644
--- a/applications/luci-app-adblock/po/templates/adblock.pot
+++ b/applications/luci-app-adblock/po/templates/adblock.pot
@@ -1,37 +1,62 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
-msgid ""
-"). Note that list URLs and Shallalist category selections are not "
-"configurable via Luci."
+msgid "."
msgstr ""
msgid "Adblock"
msgstr ""
-msgid "Available blocklist sources ("
+msgid "Adblock Domain Query"
+msgstr ""
+
+msgid "Adblock Logfile"
+msgstr ""
+
+msgid "Adblock version"
+msgstr ""
+
+msgid "Additional trigger delay in seconds before adblock processing begins."
+msgstr ""
+
+msgid "Advanced"
+msgstr ""
+
+msgid "Available blocklist sources."
msgstr ""
msgid "Backup directory"
msgstr ""
-msgid "Backup options"
+msgid "Blocked domains (overall)"
msgstr ""
msgid "Blocklist sources"
msgstr ""
+msgid "Collecting data..."
+msgstr ""
+
msgid ""
"Configuration of the adblock package to block ad/abuse domains by using DNS."
msgstr ""
-msgid "Count"
+msgid "DNS backend"
msgstr ""
msgid "Description"
msgstr ""
-msgid "Do not write status info to flash"
+msgid "Download Utility (SSL Library)"
+msgstr ""
+
+msgid "Edit Blacklist"
+msgstr ""
+
+msgid "Edit Configuration"
+msgstr ""
+
+msgid "Edit Whitelist"
msgstr ""
msgid "Enable adblock"
@@ -40,6 +65,14 @@ msgstr ""
msgid "Enable blocklist backup"
msgstr ""
+msgid ""
+"Enable memory intense overall sort / duplicate removal on low memory devices "
+"(&lt; 64 MB RAM)"
+msgstr ""
+
+msgid "Enable verbose debug logging"
+msgstr ""
+
msgid "Enabled"
msgstr ""
@@ -47,66 +80,134 @@ msgid "Extra options"
msgstr ""
msgid ""
-"File with whitelisted hosts/domains that are allowed despite being on a "
-"blocklist."
+"For SSL protected blocklist sources you need a suitable SSL library, e.g. "
+"'libustream-ssl' or the wget 'built-in'."
+msgstr ""
+
+msgid "For further information"
msgstr ""
-msgid "Global options"
+msgid "Force Overall Sort"
msgstr ""
-msgid "IPv4 blackhole ip address"
+msgid "Force local DNS"
msgstr ""
-msgid "IPv6 blackhole ip address"
+msgid "Input file not found, please check your configuration."
msgstr ""
-msgid "Last update of the blocklists"
+msgid "Invalid domain specified!"
msgstr ""
-msgid "List date/state"
+msgid "Last rundate"
msgstr ""
-msgid "Name of the logical lan interface"
+msgid "Loading"
+msgstr ""
+
+msgid "No"
+msgstr ""
+
+msgid ""
+"Note that list URLs and Shallalist category selections are configurable in "
+"the 'Advanced' section."
msgstr ""
msgid ""
"Options for further tweaking in case the defaults are not suitable for you."
msgstr ""
-msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+msgid "Overview"
+msgstr ""
+
+msgid ""
+"Please add only one domain per line. Comments introduced with '#' are "
+"allowed - ip addresses, wildcards and regex are not."
+msgstr ""
+
+msgid "Query"
+msgstr ""
+
+msgid "Query domains"
+msgstr ""
+
+msgid "Redirect all DNS queries to the local resolver."
+msgstr ""
+
+msgid "Restrict interface trigger to certain interface(s)"
+msgstr ""
+
+msgid "Resume adblock"
+msgstr ""
+
+msgid "Runtime information"
+msgstr ""
+
+msgid "SSL req."
+msgstr ""
+
+msgid ""
+"Space separated list of interfaces that trigger adblock processing. To "
+"disable event driven (re-)starts remove all entries."
msgstr ""
-msgid "Port of the adblock uhttpd instance"
+msgid "Status"
msgstr ""
-msgid "Port of the adblock uhttpd instance for https links"
+msgid "Suspend / Resume adblock"
msgstr ""
-msgid "Redirect all DNS queries to the local resolver"
+msgid "Suspend adblock"
msgstr ""
msgid ""
-"Skip writing update status information to the config file. Status fields on "
-"this page will not be updated."
+"This form allows you to modify the content of the adblock blacklist (%s)."
+"<br />"
msgstr ""
-msgid "Statistics"
+msgid ""
+"This form allows you to modify the content of the adblock whitelist (%s)."
+"<br />"
msgstr ""
-msgid "Timeout for blocklist fetch (seconds)"
+msgid ""
+"This form allows you to modify the content of the main adblock configuration "
+"file (/etc/config/adblock)."
msgstr ""
-msgid "Total count of blocked domains"
+msgid ""
+"This form allows you to query active block lists for certain domains, e.g. "
+"for whitelisting."
msgstr ""
msgid ""
-"When adblock is active, all DNS queries are redirected to the local resolver "
-"in this server by default. You can disable that to allow queries to external "
-"DNS servers."
+"This form shows the syslog output, pre-filtered for adblock related messages "
+"only."
+msgstr ""
+
+msgid "Trigger delay"
+msgstr ""
+
+msgid "View Logfile"
+msgstr ""
+
+msgid "Waiting for command to complete..."
+msgstr ""
+
+msgid "Yes"
+msgstr ""
+
+msgid "active"
+msgstr ""
+
+msgid "n/a"
+msgstr ""
+
+msgid "no domains blocked"
msgstr ""
-msgid "Whitelist file"
+msgid "see online documentation"
msgstr ""
-msgid "see list details"
+msgid "suspended"
msgstr ""
diff --git a/applications/luci-app-adblock/po/zh-cn/adblock.po b/applications/luci-app-adblock/po/zh-cn/adblock.po
index e57921daa..7ef853b07 100644
--- a/applications/luci-app-adblock/po/zh-cn/adblock.po
+++ b/applications/luci-app-adblock/po/zh-cn/adblock.po
@@ -1,56 +1,90 @@
+# liushuyu <liushuyu_011@163.com>, 2017.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: kuoruan@gmail.com\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2017-04-15 21:35-0600\n"
+"Last-Translator: liushuyu <liushuyu011@gmail.com>\n"
+"Language-Team: Chinese <kde-i18n-doc@kde.org>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.8.5\n"
+"X-Generator: Poedit 2.0.1\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-msgid ""
-"). Note that list URLs and Shallalist category selections are not "
-"configurable via Luci."
-msgstr ")。需è¦æ³¨æ„的是列表URL和列表类别选项无法通过Luci设置。"
+msgid "."
+msgstr "."
msgid "Adblock"
msgstr "Adblock"
-msgid "Available blocklist sources ("
-msgstr "å¯ç”¨æ‹¦æˆªåˆ—表æ¥æºï¼ˆ"
+msgid "Adblock Domain Query"
+msgstr ""
+
+msgid "Adblock Logfile"
+msgstr "Adblock 日志文件"
+
+msgid "Adblock version"
+msgstr "Adblock 版本"
+
+msgid "Additional trigger delay in seconds before adblock processing begins."
+msgstr ""
+
+msgid "Advanced"
+msgstr "高级"
+
+msgid "Available blocklist sources."
+msgstr "å¯ç”¨çš„ blocklist æ¥æº"
msgid "Backup directory"
msgstr "备份目录"
-msgid "Backup options"
-msgstr "备份选项"
+msgid "Blocked domains (overall)"
+msgstr ""
msgid "Blocklist sources"
msgstr "拦截列表æ¥æº"
+msgid "Collecting data..."
+msgstr "正在收集数æ®..."
+
msgid ""
"Configuration of the adblock package to block ad/abuse domains by using DNS."
msgstr "Adblock é…置工具,通过 DNS æ¥æ‹¦æˆªå¹¿å‘Šå’Œé˜»æ­¢åŸŸå。"
-msgid "Count"
-msgstr "æ•°é‡"
+msgid "DNS backend"
+msgstr "DNS åŽç«¯"
msgid "Description"
msgstr "æè¿°"
-msgid "Do not write status info to flash"
+msgid "Download Utility (SSL Library)"
msgstr ""
+msgid "Edit Blacklist"
+msgstr "编辑黑åå•"
+
+msgid "Edit Configuration"
+msgstr "编辑设置"
+
+msgid "Edit Whitelist"
+msgstr "编辑白åå•"
+
msgid "Enable adblock"
msgstr "å¯ç”¨Adblock"
msgid "Enable blocklist backup"
msgstr "å¯ç”¨æ‹¦æˆªè§„则备份"
+msgid ""
+"Enable memory intense overall sort / duplicate removal on low memory devices "
+"(&lt; 64 MB RAM)"
+msgstr ""
+
+msgid "Enable verbose debug logging"
+msgstr "å¯ç”¨è¯¦ç»†è°ƒè¯•è¾“出"
+
msgid "Enabled"
msgstr "å¯ç”¨"
@@ -58,68 +92,194 @@ msgid "Extra options"
msgstr "é¢å¤–选项"
msgid ""
-"File with whitelisted hosts/domains that are allowed despite being on a "
-"blocklist."
-msgstr "å…许的主机/域å列表"
+"For SSL protected blocklist sources you need a suitable SSL library, e.g. "
+"'libustream-ssl' or the wget 'built-in'."
+msgstr ""
-msgid "Global options"
-msgstr "全局选项"
+msgid "For further information"
+msgstr "更多信æ¯"
-msgid "IPv4 blackhole ip address"
-msgstr "IPv4ç¦æ­¢åˆ—表"
+msgid "Force Overall Sort"
+msgstr ""
+
+msgid "Force local DNS"
+msgstr ""
+
+msgid "Input file not found, please check your configuration."
+msgstr ""
-msgid "IPv6 blackhole ip address"
-msgstr "IPv6ç¦æ­¢åˆ—表"
+msgid "Invalid domain specified!"
+msgstr "无效域åï¼"
-msgid "Last update of the blocklists"
+msgid "Last rundate"
msgstr ""
-msgid "List date/state"
-msgstr "列表日期/状æ€"
+msgid "Loading"
+msgstr "加载中"
-msgid "Name of the logical lan interface"
-msgstr "LAN接å£å称"
+msgid "No"
+msgstr "å¦"
+
+msgid ""
+"Note that list URLs and Shallalist category selections are configurable in "
+"the 'Advanced' section."
+msgstr ""
msgid ""
"Options for further tweaking in case the defaults are not suitable for you."
msgstr "在默认设置并ä¸é€‚åˆä½ æ—¶çš„é¢å¤–选项。"
-msgid "Percentage of blocked packets (before last update, IPv4/IPv6)"
+msgid "Overview"
+msgstr "总览"
+
+msgid ""
+"Please add only one domain per line. Comments introduced with '#' are "
+"allowed - ip addresses, wildcards and regex are not."
msgstr ""
-msgid "Port of the adblock uhttpd instance"
-msgstr "Adblock uhttpd端å£"
+msgid "Query"
+msgstr "查询"
+
+msgid "Query domains"
+msgstr ""
+
+msgid "Redirect all DNS queries to the local resolver."
+msgstr ""
-msgid "Port of the adblock uhttpd instance for https links"
+msgid "Restrict interface trigger to certain interface(s)"
msgstr ""
-msgid "Redirect all DNS queries to the local resolver"
-msgstr "将所有DNS查询都é‡å®šå‘到本地解æžå™¨"
+msgid "Resume adblock"
+msgstr "æ¢å¤ Adblock"
+
+msgid "Runtime information"
+msgstr "è¿è¡Œä¿¡æ¯"
+
+msgid "SSL req."
+msgstr ""
msgid ""
-"Skip writing update status information to the config file. Status fields on "
-"this page will not be updated."
+"Space separated list of interfaces that trigger adblock processing. To "
+"disable event driven (re-)starts remove all entries."
msgstr ""
-msgid "Statistics"
+msgid "Status"
+msgstr "状æ€"
+
+msgid "Suspend / Resume adblock"
+msgstr "æš‚åœ/æ¢å¤ Adblock"
+
+msgid "Suspend adblock"
+msgstr "æš‚åœ Adblock"
+
+msgid ""
+"This form allows you to modify the content of the adblock blacklist (%s)."
+"<br />"
msgstr ""
-msgid "Timeout for blocklist fetch (seconds)"
-msgstr "列表查询超时时间(秒)"
+msgid ""
+"This form allows you to modify the content of the adblock whitelist (%s)."
+"<br />"
+msgstr ""
-msgid "Total count of blocked domains"
-msgstr "阻止域å总数"
+msgid ""
+"This form allows you to modify the content of the main adblock configuration "
+"file (/etc/config/adblock)."
+msgstr ""
+
+msgid ""
+"This form allows you to query active block lists for certain domains, e.g. "
+"for whitelisting."
+msgstr ""
msgid ""
-"When adblock is active, all DNS queries are redirected to the local resolver "
-"in this server by default. You can disable that to allow queries to external "
-"DNS servers."
+"This form shows the syslog output, pre-filtered for adblock related messages "
+"only."
msgstr ""
-"当Adblock处于活动状æ€æ—¶ï¼Œé»˜è®¤æƒ…况下会将所有的DNS查询é‡å®šå‘到此æœåŠ¡å™¨çš„本地解"
-"æžå™¨ã€‚您å¯ä»¥ç¦ç”¨ä»¥å…许查询外部DNSæœåŠ¡å™¨ã€‚"
-msgid "Whitelist file"
-msgstr "白åå•æ–‡ä»¶"
+msgid "Trigger delay"
+msgstr "触å‘延迟"
+
+msgid "View Logfile"
+msgstr "查看日志文件"
+
+msgid "Waiting for command to complete..."
+msgstr "正在执行命令..."
+
+msgid "Yes"
+msgstr "是"
+
+msgid "active"
+msgstr "å·²å¯ç”¨"
+
+msgid "n/a"
+msgstr ""
+
+msgid "no domains blocked"
+msgstr "没有被拦截的域å"
+
+msgid "see online documentation"
+msgstr "查看在线文档"
+
+msgid "suspended"
+msgstr "已暂åœ"
+
+#~ msgid "Backup options"
+#~ msgstr "备份选项"
+
+#~ msgid ""
+#~ "). Note that list URLs and Shallalist category selections are not "
+#~ "configurable via Luci."
+#~ msgstr ")。需è¦æ³¨æ„的是列表URL和列表类别选项无法通过Luci设置。"
+
+#~ msgid "Available blocklist sources ("
+#~ msgstr "å¯ç”¨æ‹¦æˆªåˆ—表æ¥æºï¼ˆ"
+
+#~ msgid ""
+#~ "File with whitelisted hosts/domains that are allowed despite being on a "
+#~ "blocklist."
+#~ msgstr "å…许的主机/域å列表"
+
+#~ msgid "Global options"
+#~ msgstr "全局选项"
+
+#~ msgid "Whitelist file"
+#~ msgstr "白åå•æ–‡ä»¶"
+
+#~ msgid "see list details"
+#~ msgstr "查看列表详情"
+
+#~ msgid "Count"
+#~ msgstr "æ•°é‡"
+
+#~ msgid "IPv4 blackhole ip address"
+#~ msgstr "IPv4ç¦æ­¢åˆ—表"
+
+#~ msgid "IPv6 blackhole ip address"
+#~ msgstr "IPv6ç¦æ­¢åˆ—表"
+
+#~ msgid "List date/state"
+#~ msgstr "列表日期/状æ€"
+
+#~ msgid "Name of the logical lan interface"
+#~ msgstr "LAN接å£å称"
+
+#~ msgid "Port of the adblock uhttpd instance"
+#~ msgstr "Adblock uhttpd端å£"
+
+#~ msgid "Redirect all DNS queries to the local resolver"
+#~ msgstr "将所有DNS查询都é‡å®šå‘到本地解æžå™¨"
+
+#~ msgid "Timeout for blocklist fetch (seconds)"
+#~ msgstr "列表查询超时时间(秒)"
+
+#~ msgid "Total count of blocked domains"
+#~ msgstr "阻止域å总数"
-msgid "see list details"
-msgstr "查看列表详情"
+#~ msgid ""
+#~ "When adblock is active, all DNS queries are redirected to the local "
+#~ "resolver in this server by default. You can disable that to allow queries "
+#~ "to external DNS servers."
+#~ msgstr ""
+#~ "当Adblock处于活动状æ€æ—¶ï¼Œé»˜è®¤æƒ…况下会将所有的DNS查询é‡å®šå‘到此æœåŠ¡å™¨çš„本地"
+#~ "解æžå™¨ã€‚您å¯ä»¥ç¦ç”¨ä»¥å…许查询外部DNSæœåŠ¡å™¨ã€‚"
diff --git a/applications/luci-app-ahcp/po/pt-br/ahcp.po b/applications/luci-app-ahcp/po/pt-br/ahcp.po
index 55ec29cdc..741c14572 100644
--- a/applications/luci-app-ahcp/po/pt-br/ahcp.po
+++ b/applications/luci-app-ahcp/po/pt-br/ahcp.po
@@ -1,20 +1,20 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2014-03-29 23:07+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
+"Project-Id-Version: \n"
+"PO-Revision-Date: 2017-02-17 17:07-0200\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language-Team: none\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"POT-Creation-Date: \n"
msgid "AHCP Server"
msgstr "Servidor AHCP"
-#, fuzzy
msgid ""
"AHCP is an autoconfiguration protocol for IPv6 and dual-stack IPv6/IPv4 "
"networks designed to be used in place of router discovery or DHCP on "
diff --git a/applications/luci-app-aria2/po/pt-br/aria2.po b/applications/luci-app-aria2/po/pt-br/aria2.po
new file mode 100644
index 000000000..1bb413744
--- /dev/null
+++ b/applications/luci-app-aria2/po/pt-br/aria2.po
@@ -0,0 +1,236 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "\"Falloc\" is not available in all cases."
+msgstr "\"Falloc\" não está disponível em todas as classes."
+
+msgid "<abbr title=\"Distributed Hash Table\">DHT</abbr> enabled"
+msgstr ""
+"<abbr title=\"Distributed Hash Table/Tabla de disperção distribuída\">DHT</"
+"abbr> habilitado"
+
+msgid "<abbr title=\"Local Peer Discovery\">LPD</abbr> enabled"
+msgstr ""
+"<abbr title=\"Local Peer Discovery/Descoberta de Parceiros Locais\">LPD</"
+"abbr> habilitado"
+
+msgid "Additional Bt tracker enabled"
+msgstr "Rastreadores BitTorrent adicionais habilitado"
+
+msgid "Aria2"
+msgstr "Aria2"
+
+msgid "Aria2 Settings"
+msgstr "Configurações do Aria2"
+
+msgid "Aria2 Status"
+msgstr "Estado do Aria2"
+
+msgid ""
+"Aria2 is a multi-protocol &amp; multi-source download utility, here you can "
+"configure the settings."
+msgstr ""
+"Aria2 é um utilitário de transferência multi-protocolo de múltiplas fontes, "
+"aqui você pode configurá-lo."
+
+msgid "Autosave session interval"
+msgstr "Intervalo para autossalvamento da sessão"
+
+msgid "BitTorrent Settings"
+msgstr "Configurações do BitTorrent"
+
+msgid "BitTorrent listen port"
+msgstr "Porta de escuta do BitTorrent"
+
+msgid "Collecting data..."
+msgstr "Coletando dados..."
+
+msgid "Config file directory"
+msgstr "Diretório dos arquivos de configuração"
+
+msgid "Debug"
+msgstr "Depuração"
+
+msgid "Default download directory"
+msgstr "Diretório padrão de arquivos baixados"
+
+msgid "Disk cache"
+msgstr "Cache em Disco"
+
+msgid "Enable log"
+msgstr "Habilitar registros"
+
+msgid "Enabled"
+msgstr "Habilitado"
+
+msgid "Error"
+msgstr "Erro"
+
+msgid "Extra Settings"
+msgstr "Configurações Adicionais"
+
+msgid "Falloc"
+msgstr "Falloc"
+
+msgid "Files and Locations"
+msgstr "Arquivos e Locais"
+
+msgid "Follow torrent"
+msgstr "Seguir torrent"
+
+msgid "General Settings"
+msgstr "Configurações Gerais"
+
+msgid "Generate Randomly"
+msgstr "Gerar aleatoriamente"
+
+msgid "Info"
+msgstr "Informações"
+
+msgid "List of additional Bt tracker"
+msgstr "Lista de rastreadores BitTorrent adicionais"
+
+msgid "List of extra settings"
+msgstr "Lista de configurações adicionais"
+
+msgid "Log file is in the config file dir."
+msgstr ""
+"Arquivo de registro (log) está no diretório do arquivo de configuração."
+
+msgid "Log level"
+msgstr "Nível do registro"
+
+msgid "Max concurrent downloads"
+msgstr "Número máximo de transferencias simultâneas"
+
+msgid "Max connection per server"
+msgstr "Numero máximo de conexões por servidor"
+
+msgid "Max number of peers per torrent"
+msgstr "Numero máximo de parceiros por torrent"
+
+msgid "Max number of split"
+msgstr "Numero máximo de divisões"
+
+msgid "Min split size"
+msgstr "Tamanho mínimo da divisão"
+
+msgid "No Authentication"
+msgstr "Sem Autenticação"
+
+msgid "Notice"
+msgstr "Aviso"
+
+msgid "Off"
+msgstr "Desligado"
+
+msgid "Open WebUI-Aria2"
+msgstr "Abrir WebUI-Aria2"
+
+msgid "Open YAAW"
+msgstr "Abrir YAAW"
+
+msgid "Overall download limit"
+msgstr "Limite global para baixar"
+
+msgid "Overall speed limit enabled"
+msgstr "Limite da taxa de transferência global habilitado"
+
+msgid "Overall upload limit"
+msgstr "Limite global para subir"
+
+msgid "Per task download limit"
+msgstr "Limite por tarefa para baixar"
+
+msgid "Per task speed limit enabled"
+msgstr "Limite da taxa de transferência por tarefa habilitado"
+
+msgid "Per task upload limit"
+msgstr "Limite por tarefa para subir"
+
+msgid "Prealloc"
+msgstr "Pré-alocação"
+
+msgid "Preallocation"
+msgstr "Pré-alocação"
+
+msgid "Prefix of peer ID"
+msgstr "Prefixo da identificação do paceiro"
+
+msgid "RPC Token"
+msgstr ""
+"Chave eletrônica do <abbr title=\"Remote Procedure Call/Chamada de "
+"Procedimento Remoto\">RPC</abbr>"
+
+msgid "RPC authentication method"
+msgstr ""
+"Método de autenticação do <abbr title=\"Remote Procedure Call/Chamada de "
+"Procedimento Remoto\">RPC</abbr>"
+
+msgid "RPC password"
+msgstr ""
+"Senha do <abbr title=\"Remote Procedure Call/Chamada de Procedimento Remoto"
+"\">RPC</abbr>"
+
+msgid "RPC port"
+msgstr ""
+"Porta do <abbr title=\"Remote Procedure Call/Chamada de Procedimento Remoto"
+"\">RPC</abbr>"
+
+msgid "RPC username"
+msgstr ""
+"Nome do usuario do <abbr title=\"Remote Procedure Call/Chamada de "
+"Procedimento Remoto\">RPC</abbr>"
+
+msgid "Run daemon as user"
+msgstr "Executar serviço como usuário"
+
+msgid "Sec"
+msgstr "Segurança"
+
+msgid "Task Settings"
+msgstr "Configurações das tarefas"
+
+msgid "The Aria2 service is not running."
+msgstr "O serviço Aria2 está parado."
+
+msgid "The Aria2 service is running."
+msgstr "O serviço Aria2 está em execução."
+
+msgid "Token"
+msgstr "Chave eletrônica"
+
+msgid "Trunc"
+msgstr "Truncar"
+
+msgid "Use WebSocket"
+msgstr "Use WebSockets"
+
+msgid "User agent value"
+msgstr "Valor da identificação do agente do usuário"
+
+msgid "Username & Password"
+msgstr "Usuário & Senha"
+
+msgid "View Json-RPC URL"
+msgstr "Visualizar URL do JSON-RPC"
+
+msgid "Warn"
+msgstr "Atenção"
+
+msgid "in bytes, You can append K or M."
+msgstr "em bytes. Você pode sufixar com K (quilo) ou M (mega)."
+
+msgid "in bytes/sec, You can append K or M."
+msgstr "em bytes por segundo. Você pode sufixar com K (quilo) ou M (mega)."
diff --git a/applications/luci-app-bcp38/Makefile b/applications/luci-app-bcp38/Makefile
new file mode 100644
index 000000000..9ab5a6701
--- /dev/null
+++ b/applications/luci-app-bcp38/Makefile
@@ -0,0 +1,18 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=BCP38 LuCI interface
+LUCI_DEPENDS:=+luci-mod-admin-full +bcp38
+
+PKG_MAINTAINER:=Toke Høiland-Jørgensen <toke@toke.dk>
+PKG_LICENSE:=Apache-2.0
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-bcp38/luasrc/controller/bcp38.lua b/applications/luci-app-bcp38/luasrc/controller/bcp38.lua
new file mode 100644
index 000000000..7ea22835d
--- /dev/null
+++ b/applications/luci-app-bcp38/luasrc/controller/bcp38.lua
@@ -0,0 +1,7 @@
+module("luci.controller.bcp38", package.seeall)
+
+function index()
+ entry({"admin", "network", "firewall", "bcp38"},
+ cbi("bcp38"),
+ _("BCP38"), 50).dependent = false
+end
diff --git a/applications/luci-app-bcp38/luasrc/model/cbi/bcp38.lua b/applications/luci-app-bcp38/luasrc/model/cbi/bcp38.lua
new file mode 100644
index 000000000..632074a56
--- /dev/null
+++ b/applications/luci-app-bcp38/luasrc/model/cbi/bcp38.lua
@@ -0,0 +1,60 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2014 Toke Høiland-Jørgensen <toke@toke.dk>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+]]--
+
+local wa = require "luci.tools.webadmin"
+local net = require "luci.model.network".init()
+local ifaces = net:get_interfaces()
+
+m = Map("bcp38", translate("BCP38"),
+ translate("This function blocks packets with private address destinations " ..
+ "from going out onto the internet as per " ..
+ "<a href=\"http://tools.ietf.org/html/bcp38\">BCP 38</a>. " ..
+ "For IPv6, only source specific default routes are installed, so " ..
+ "no BCP38 firewall routes are needed."))
+
+s = m:section(TypedSection, "bcp38", translate("BCP38 config"))
+s.anonymous = true
+-- BASIC
+e = s:option(Flag, "enabled", translate("Enable"))
+e.rmempty = false
+
+a = s:option(Flag, "detect_upstream", translate("Auto-detect upstream IP"),
+ translate("Attempt to automatically detect if the upstream IP " ..
+ "will be blocked by the configuration, and add an exception if it will. " ..
+ "If this does not work correctly, you can add exceptions manually below."))
+a.rmempty = false
+
+n = s:option(ListValue, "interface", translate("Interface name"), translate("Interface to apply the blocking to " ..
+ "(should be the upstream WAN interface)."))
+for _, iface in ipairs(ifaces) do
+ if iface:is_up() then
+ n:value(iface:name())
+ end
+end
+n.rmempty = false
+
+ma = s:option(DynamicList, "match",
+ translate("Blocked IP ranges"))
+
+ma.datatype = "ip4addr"
+
+nm = s:option(DynamicList, "nomatch",
+ translate("Allowed IP ranges"), translate("Takes precedence over blocked ranges. "..
+ "Use to whitelist your upstream network if you're behind a double NAT " ..
+ "and the auto-detection doesn't work."))
+
+nm.datatype = "ip4addr"
+
+
+return m
diff --git a/applications/luci-app-bcp38/root/etc/uci-defaults/60_luci-bcp38 b/applications/luci-app-bcp38/root/etc/uci-defaults/60_luci-bcp38
new file mode 100755
index 000000000..c204236e3
--- /dev/null
+++ b/applications/luci-app-bcp38/root/etc/uci-defaults/60_luci-bcp38
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+uci -q batch <<-EOF >/dev/null
+ delete ucitrack.@bcp38[-1]
+ add ucitrack bcp38
+ add_list ucitrack.@bcp38[0].affects=firewall
+ commit ucitrack
+EOF
+
+rm -f /tmp/luci-indexcache
+exit 0
diff --git a/applications/luci-app-clamav/Makefile b/applications/luci-app-clamav/Makefile
new file mode 100644
index 000000000..f91e692af
--- /dev/null
+++ b/applications/luci-app-clamav/Makefile
@@ -0,0 +1,18 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=ClamAV LuCI interface
+LUCI_DEPENDS:=+luci-mod-admin-full +clamav
+
+PKG_MAINTAINER:=Marko Ratkaj <marko.ratkaj@sartura.hr>
+PKG_LICENSE:=Apache-2.0
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-clamav/luasrc/controller/clamav.lua b/applications/luci-app-clamav/luasrc/controller/clamav.lua
new file mode 100644
index 000000000..02f3bfc4b
--- /dev/null
+++ b/applications/luci-app-clamav/luasrc/controller/clamav.lua
@@ -0,0 +1,22 @@
+--[[
+
+LuCI ClamAV module
+
+Copyright (C) 2015, Itus Networks, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Marko Ratkaj <marko.ratkaj@sartura.hr>
+ Luka Perkov <luka.perkov@sartura.hr>
+
+]]--
+
+module("luci.controller.clamav", package.seeall)
+
+function index()
+ entry({"admin", "services", "clamav"}, cbi("clamav"), _("ClamAV"))
+end
diff --git a/applications/luci-app-clamav/luasrc/model/cbi/clamav.lua b/applications/luci-app-clamav/luasrc/model/cbi/clamav.lua
new file mode 100644
index 000000000..ff98139d4
--- /dev/null
+++ b/applications/luci-app-clamav/luasrc/model/cbi/clamav.lua
@@ -0,0 +1,178 @@
+--[[
+
+LuCI ClamAV module
+
+Copyright (C) 2015, Itus Networks, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Marko Ratkaj <marko.ratkaj@sartura.hr>
+ Luka Perkov <luka.perkov@sartura.hr>
+
+]]--
+
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
+require "ubus"
+
+m = Map("clamav", translate("ClamAV"))
+m.on_after_commit = function() luci.sys.call("/etc/init.d/clamav restart") end
+
+s = m:section(TypedSection, "clamav")
+s.anonymous = true
+s.addremove = false
+
+s:tab("tab_advanced", translate("Settings"))
+s:tab("tab_logs", translate("Log"))
+
+--------------- Settings --------------
+
+LogFileMaxSize = s:taboption("tab_advanced", Value, "LogFileMaxSize", translate("Max size of log file"))
+LogFileMaxSize:value("512K", translate("512K"))
+LogFileMaxSize:value("1M", translate("1M"))
+LogFileMaxSize:value("2M", translate("2M"))
+LogFileMaxSize.default = "1M"
+
+LogTime = s:taboption("tab_advanced", ListValue, "LogTime", translate("Log time with each message"))
+LogTime:value("no", translate("No"))
+LogTime:value("yes", translate("Yes"))
+LogTime.default = "no"
+
+LogVerbose = s:taboption("tab_advanced", ListValue, "LogVerbose", translate("Enable verbose logging"))
+LogVerbose:value("no", translate("No"))
+LogVerbose:value("yes", translate("Yes"))
+LogVerbose.default = "no"
+
+ExtendedDetectionInfo = s:taboption("tab_advanced", ListValue, "ExtendedDetectionInfo", translate("Log additional infection info"))
+ExtendedDetectionInfo:value("no", translate("No"))
+ExtendedDetectionInfo:value("yes", translate("Yes"))
+ExtendedDetectionInfo.default = "no"
+
+dummy3 = s:taboption("tab_advanced", DummyValue, "")
+dummy4 = s:taboption("tab_advanced", DummyValue, "")
+
+MaxDirectoryRecursion = s:taboption("tab_advanced", Value, "MaxDirectoryRecursion", translate("Max directory scan depth"))
+MaxDirectoryRecursion:value("15", translate("15"))
+MaxDirectoryRecursion:value("20", translate("20"))
+MaxDirectoryRecursion.default = "15"
+
+FollowDirectorySymlink = s:taboption("tab_advanced", ListValue, "FollowDirectorySymlink", translate("Follow directory symlinks"))
+FollowDirectorySymlink:value("no", translate("No"))
+FollowDirectorySymlink:value("yes", translate("Yes"))
+FollowDirectorySymlink.default = "no"
+
+FollowFileSymlinks = s:taboption("tab_advanced", ListValue, "FollowFileSymlinks", translate("Follow file symlinks"))
+FollowFileSymlinks:value("no", translate("No"))
+FollowFileSymlinks:value("yes", translate("Yes"))
+FollowFileSymlinks.default = "no"
+
+DetectPUA = s:taboption("tab_advanced", ListValue, "DetectPUA", translate("Detect possibly unwanted apps"))
+DetectPUA:value("no", translate("No"))
+DetectPUA:value("yes", translate("Yes"))
+DetectPUA.default = "no"
+
+ScanPE = s:taboption("tab_advanced", ListValue, "ScanPE", translate("Scan portable executables"))
+ScanPE:value("no", translate("No"))
+ScanPE:value("yes", translate("Yes"))
+ScanPE.default = "yes"
+
+ScanELF = s:taboption("tab_advanced", ListValue, "ScanELF", translate("Scan ELF files"))
+ScanELF:value("no", translate("No"))
+ScanELF:value("yes", translate("Yes"))
+ScanELF.default = "yes"
+
+DetectBrokenExecutables = s:taboption("tab_advanced", ListValue, "DetectBrokenExecutables", translate("Detect broken executables"))
+DetectBrokenExecutables:value("no", translate("No"))
+DetectBrokenExecutables:value("yes", translate("Yes"))
+DetectBrokenExecutables.default = "no"
+
+ScanOLE2 = s:taboption("tab_advanced", ListValue, "ScanOLE2", translate("Scan MS Office and .msi files"))
+ScanOLE2:value("no", translate("No"))
+ScanOLE2:value("yes", translate("Yes"))
+ScanOLE2.default = "yes"
+
+ScanPDF = s:taboption("tab_advanced", ListValue, "ScanPDF", translate("Scan pdf files"))
+ScanPDF:value("no", translate("No"))
+ScanPDF:value("yes", translate("Yes"))
+ScanPDF.default = "yes"
+
+ScanSWF = s:taboption("tab_advanced", ListValue, "ScanSWF", translate("Scan swf files"))
+ScanSWF:value("no", translate("No"))
+ScanSWF:value("yes", translate("Yes"))
+ScanSWF.default = "yes"
+
+ScanMail = s:taboption("tab_advanced", ListValue, "ScanMail", translate("Scan emails"))
+ScanMail:value("no", translate("No"))
+ScanMail:value("yes", translate("Yes"))
+ScanMail.default = "yes"
+
+ScanPartialMessages = s:taboption("tab_advanced", ListValue, "ScanPartialMessages", translate("Scan RFC1341 messages split over many emails"))
+ScanPartialMessages:value("no", translate("No"))
+ScanPartialMessages:value("yes", translate("Yes"))
+ScanPartialMessages.default = "no"
+
+ScanArchive = s:taboption("tab_advanced", ListValue, "ScanArchive", translate("Scan archives"))
+ScanArchive:value("no", translate("No"))
+ScanArchive:value("yes", translate("Yes"))
+ScanArchive.default = "yes"
+
+ArchiveBlockEncrypted = s:taboption("tab_advanced", ListValue, "ArchiveBlockEncrypted", translate("Block encrypted archives"))
+ArchiveBlockEncrypted:value("no", translate("No"))
+ArchiveBlockEncrypted:value("yes", translate("Yes"))
+ArchiveBlockEncrypted.default = "no"
+
+dummy5 = s:taboption("tab_advanced", DummyValue, "")
+dummy6 = s:taboption("tab_advanced", DummyValue, "")
+
+StreamMinPort = s:taboption("tab_advanced", Value, "StreamMinPort", translate("Port range, lowest port"))
+StreamMinPort.datatype = "portrange"
+StreamMinPort:value("1024",translate("1024"))
+StreamMinPort.default = "1024"
+
+StreamMaxPort = s:taboption("tab_advanced", Value, "StreamMaxPort", translate("Port range, highest port"))
+StreamMaxPort.datatype = "portrange"
+StreamMaxPort:value("2048",translate("2048"))
+StreamMaxPort.default = "2048"
+
+MaxThreads = s:taboption("tab_advanced", Value, "MaxThreads", translate("Max number of threads"))
+MaxThreads.datatype = "and(uinteger,min(1))"
+MaxThreads:value("10",translate("10"))
+MaxThreads:value("20",translate("20"))
+MaxThreads.default = "10"
+
+SelfCheck = s:taboption("tab_advanced", Value, "SelfCheck", translate("Database check every N sec"))
+SelfCheck.datatype = "and(uinteger,min(1))"
+SelfCheck:value("600",translate("600"))
+SelfCheck.default = "600"
+
+MaxFileSize = s:taboption("tab_advanced", Value, "MaxFileSize", translate("Max size of scanned file"))
+MaxFileSize.datatype = "string"
+MaxFileSize:value("150M",translate("150M"))
+MaxFileSize:value("50M",translate("50M"))
+MaxFileSize.default = "150M"
+
+------------------ Log --------------------
+
+clamav_logfile = s:taboption("tab_logs", TextValue, "lines", "")
+clamav_logfile.wrap = "off"
+clamav_logfile.rows = 25
+clamav_logfile.rmempty = true
+
+function clamav_logfile.cfgvalue()
+ local uci = require "luci.model.uci".cursor_state()
+ local file = "/tmp/clamd.log"
+ if file then
+ return fs.readfile(file) or ""
+ else
+ return ""
+ end
+end
+
+function clamav_logfile.write()
+end
+
+return m
diff --git a/applications/luci-app-clamav/po/ja/clamav.po b/applications/luci-app-clamav/po/ja/clamav.po
new file mode 100644
index 000000000..c54c7b18a
--- /dev/null
+++ b/applications/luci-app-clamav/po/ja/clamav.po
@@ -0,0 +1,130 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.12\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: ja\n"
+
+msgid "10"
+msgstr "10"
+
+msgid "1024"
+msgstr "1024"
+
+msgid "15"
+msgstr "15"
+
+msgid "150M"
+msgstr "150M"
+
+msgid "1M"
+msgstr "1M"
+
+msgid "20"
+msgstr "20"
+
+msgid "2048"
+msgstr "2048"
+
+msgid "2M"
+msgstr "2M"
+
+msgid "50M"
+msgstr "50M"
+
+msgid "512K"
+msgstr "512K"
+
+msgid "600"
+msgstr "600"
+
+msgid "Block encrypted archives"
+msgstr "æš—å·åŒ–ã•ã‚ŒãŸã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®ãƒ–ロック"
+
+msgid "ClamAV"
+msgstr "ClamAV"
+
+msgid "Database check every N sec"
+msgstr "データベース ãƒã‚§ãƒƒã‚¯é–“隔(秒)"
+
+msgid "Detect broken executables"
+msgstr "ç ´æã—ãŸå®Ÿè¡Œãƒ•ã‚¡ã‚¤ãƒ«ã®æ¤œå‡º"
+
+msgid "Detect possibly unwanted apps"
+msgstr "ä¸å¿…è¦ã¨æ€ã‚れるアプリケーションã®æ¤œå‡º"
+
+msgid "Enable verbose logging"
+msgstr "詳細ãªãƒ­ã‚°ã®æœ‰åŠ¹åŒ–"
+
+msgid "Follow directory symlinks"
+msgstr "ディレクトリ シンボリックリンクã«å¾“ã†"
+
+msgid "Follow file symlinks"
+msgstr "ファイル シンボリックリンクã«å¾“ã†"
+
+msgid "Log"
+msgstr "ログ"
+
+msgid "Log additional infection info"
+msgstr "追加ã®æ„ŸæŸ“情報ログ"
+
+msgid "Log time with each message"
+msgstr "ログ メッセージ毎ã«æ™‚刻を付加"
+
+msgid "Max directory scan depth"
+msgstr "ディレクトリ スキャンã®æœ€å¤§æ·±åº¦"
+
+msgid "Max number of threads"
+msgstr "スレッドã®æœ€å¤§æ•°"
+
+msgid "Max size of log file"
+msgstr "ログã®æœ€å¤§ã‚µã‚¤ã‚º"
+
+msgid "Max size of scanned file"
+msgstr ""
+
+msgid "No"
+msgstr "ã„ã„ãˆ"
+
+msgid "Port range, highest port"
+msgstr "ãƒãƒ¼ãƒˆç¯„囲(上é™ï¼‰"
+
+msgid "Port range, lowest port"
+msgstr "ãƒãƒ¼ãƒˆç¯„囲(下é™ï¼‰"
+
+msgid "Scan ELF files"
+msgstr "ELF ファイルã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Scan MS Office and .msi files"
+msgstr "MS Office 㨠.msi ファイルã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Scan RFC1341 messages split over many emails"
+msgstr ""
+
+msgid "Scan archives"
+msgstr "アーカイブã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Scan emails"
+msgstr "E-mailã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Scan pdf files"
+msgstr "PDF ファイルã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Scan portable executables"
+msgstr "ãƒãƒ¼ã‚¿ãƒ–ル 実行ファイルã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Scan swf files"
+msgstr "SWF ファイルã®ã‚¹ã‚­ãƒ£ãƒ³"
+
+msgid "Settings"
+msgstr "設定"
+
+msgid "Yes"
+msgstr "ã¯ã„"
diff --git a/applications/luci-app-clamav/po/templates/clamav.pot b/applications/luci-app-clamav/po/templates/clamav.pot
new file mode 100644
index 000000000..768f73093
--- /dev/null
+++ b/applications/luci-app-clamav/po/templates/clamav.pot
@@ -0,0 +1,119 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "10"
+msgstr ""
+
+msgid "1024"
+msgstr ""
+
+msgid "15"
+msgstr ""
+
+msgid "150M"
+msgstr ""
+
+msgid "1M"
+msgstr ""
+
+msgid "20"
+msgstr ""
+
+msgid "2048"
+msgstr ""
+
+msgid "2M"
+msgstr ""
+
+msgid "50M"
+msgstr ""
+
+msgid "512K"
+msgstr ""
+
+msgid "600"
+msgstr ""
+
+msgid "Block encrypted archives"
+msgstr ""
+
+msgid "ClamAV"
+msgstr ""
+
+msgid "Database check every N sec"
+msgstr ""
+
+msgid "Detect broken executables"
+msgstr ""
+
+msgid "Detect possibly unwanted apps"
+msgstr ""
+
+msgid "Enable verbose logging"
+msgstr ""
+
+msgid "Follow directory symlinks"
+msgstr ""
+
+msgid "Follow file symlinks"
+msgstr ""
+
+msgid "Log"
+msgstr ""
+
+msgid "Log additional infection info"
+msgstr ""
+
+msgid "Log time with each message"
+msgstr ""
+
+msgid "Max directory scan depth"
+msgstr ""
+
+msgid "Max number of threads"
+msgstr ""
+
+msgid "Max size of log file"
+msgstr ""
+
+msgid "Max size of scanned file"
+msgstr ""
+
+msgid "No"
+msgstr ""
+
+msgid "Port range, highest port"
+msgstr ""
+
+msgid "Port range, lowest port"
+msgstr ""
+
+msgid "Scan ELF files"
+msgstr ""
+
+msgid "Scan MS Office and .msi files"
+msgstr ""
+
+msgid "Scan RFC1341 messages split over many emails"
+msgstr ""
+
+msgid "Scan archives"
+msgstr ""
+
+msgid "Scan emails"
+msgstr ""
+
+msgid "Scan pdf files"
+msgstr ""
+
+msgid "Scan portable executables"
+msgstr ""
+
+msgid "Scan swf files"
+msgstr ""
+
+msgid "Settings"
+msgstr ""
+
+msgid "Yes"
+msgstr ""
diff --git a/applications/luci-app-clamav/po/zh-cn/clamav.po b/applications/luci-app-clamav/po/zh-cn/clamav.po
new file mode 100644
index 000000000..6a2c5dfd5
--- /dev/null
+++ b/applications/luci-app-clamav/po/zh-cn/clamav.po
@@ -0,0 +1,131 @@
+# liushuyu <liushuyu_011@163.com>, 2017.
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2017-04-15 21:37-0600\n"
+"Language-Team: Chinese <kde-i18n-doc@kde.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.0.1\n"
+"Last-Translator: liushuyu <liushuyu011@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: zh_CN\n"
+
+msgid "10"
+msgstr "10"
+
+msgid "1024"
+msgstr "1024"
+
+msgid "15"
+msgstr "15"
+
+msgid "150M"
+msgstr "150M"
+
+msgid "1M"
+msgstr "1M"
+
+msgid "20"
+msgstr "20"
+
+msgid "2048"
+msgstr "2048"
+
+msgid "2M"
+msgstr "2M"
+
+msgid "50M"
+msgstr "50M"
+
+msgid "512K"
+msgstr "512K"
+
+msgid "600"
+msgstr "600"
+
+msgid "Block encrypted archives"
+msgstr "拦截加密的归档文件"
+
+msgid "ClamAV"
+msgstr "ClamAV"
+
+msgid "Database check every N sec"
+msgstr "æ¯ N 秒检测一次数æ®åº“"
+
+msgid "Detect broken executables"
+msgstr "检测破æŸçš„å¯æ‰§è¡Œæ–‡ä»¶"
+
+msgid "Detect possibly unwanted apps"
+msgstr "检测ä¸å—欢迎的软件"
+
+msgid "Enable verbose logging"
+msgstr "å¯ç”¨è¯¦ç»†æ—¥å¿—输出"
+
+msgid "Follow directory symlinks"
+msgstr "è·Ÿéšç›®å½•ç¬¦å·é“¾æŽ¥"
+
+msgid "Follow file symlinks"
+msgstr "è·Ÿéšæ–‡ä»¶ç¬¦å·é“¾æŽ¥"
+
+msgid "Log"
+msgstr "日志"
+
+msgid "Log additional infection info"
+msgstr "记录详细的感染信æ¯"
+
+msgid "Log time with each message"
+msgstr "记录消æ¯æ—¶é—´æˆ³"
+
+msgid "Max directory scan depth"
+msgstr "最大扫æ深度"
+
+msgid "Max number of threads"
+msgstr "最大线程数"
+
+msgid "Max size of log file"
+msgstr "最大日志大å°"
+
+msgid "Max size of scanned file"
+msgstr "最大å¯æ‰«æ的文件大å°"
+
+msgid "No"
+msgstr "å¦"
+
+msgid "Port range, highest port"
+msgstr "端å£èŒƒå›´ï¼Œæœ€å¤§ç«¯å£"
+
+msgid "Port range, lowest port"
+msgstr "端å£èŒƒå›´ï¼Œæœ€å°ç«¯å£"
+
+msgid "Scan ELF files"
+msgstr "扫æ ELF 文件"
+
+msgid "Scan MS Office and .msi files"
+msgstr "扫æ MS Office 文档和 .msi 安装包文件"
+
+msgid "Scan RFC1341 messages split over many emails"
+msgstr "扫æç¬¦åˆ RFC1341 邮件分离规范的邮件"
+
+msgid "Scan archives"
+msgstr "扫æ归档文件"
+
+msgid "Scan emails"
+msgstr "扫æ电å­é‚®ä»¶"
+
+msgid "Scan pdf files"
+msgstr "扫æ PDF 文件"
+
+msgid "Scan portable executables"
+msgstr "扫æ PE (Windows) å¯æ‰§è¡Œæ–‡ä»¶"
+
+msgid "Scan swf files"
+msgstr "扫æ SWF 文件"
+
+msgid "Settings"
+msgstr "设置"
+
+msgid "Yes"
+msgstr "是"
diff --git a/applications/luci-app-commands/luasrc/controller/commands.lua b/applications/luci-app-commands/luasrc/controller/commands.lua
index 16528d117..ca91813b1 100644
--- a/applications/luci-app-commands/luasrc/controller/commands.lua
+++ b/applications/luci-app-commands/luasrc/controller/commands.lua
@@ -153,8 +153,8 @@ local function parse_cmdline(cmdid, args)
end
end
-function action_run(...)
- local fs = require "nixio.fs"
+function execute_command(callback, ...)
+ local fs = require "nixio.fs"
local argv = parse_cmdline(...)
if argv then
local outfile = os.tmpname()
@@ -169,8 +169,8 @@ function action_run(...)
local binary = not not (stdout:match("[%z\1-\8\14-\31]"))
- luci.http.prepare_content("application/json")
- luci.http.write_json({
+ callback({
+ ok = true,
command = table.concat(argv, " "),
stdout = not binary and stdout,
stderr = stderr,
@@ -178,10 +178,41 @@ function action_run(...)
binary = binary
})
else
- luci.http.status(404, "No such command")
+ callback({
+ ok = false,
+ code = 404,
+ reason = "No such command"
+ })
+ end
+end
+
+function return_json(result)
+ if result.ok then
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(result)
+ else
+ luci.http.status(result.code, result.reason)
end
end
+function action_run(...)
+ execute_command(return_json, ...)
+end
+
+function return_html(result)
+ if result.ok then
+ require("luci.template")
+ luci.template.render("commands_public", {
+ exitcode = result.exitcode,
+ stdout = result.stdout,
+ stderr = result.stderr
+ })
+ else
+ luci.http.status(result.code, result.reason)
+ end
+
+end
+
function action_download(...)
local fs = require "nixio.fs"
local argv = parse_cmdline(...)
@@ -192,11 +223,11 @@ function action_download(...)
local name
if chunk:match("[%z\1-\8\14-\31]") then
luci.http.header("Content-Disposition", "attachment; filename=%s"
- % fs.basename(argv[1]):gsub("%W+", ".") .. ".bin")
+ % fs.basename(argv[1]):gsub("%W+", ".") .. ".bin")
luci.http.prepare_content("application/octet-stream")
else
luci.http.header("Content-Disposition", "attachment; filename=%s"
- % fs.basename(argv[1]):gsub("%W+", ".") .. ".txt")
+ % fs.basename(argv[1]):gsub("%W+", ".") .. ".txt")
luci.http.prepare_content("text/plain")
end
@@ -214,14 +245,24 @@ function action_download(...)
end
end
+
function action_public(cmdid, args)
+ local disp = false
+ if string.sub(cmdid, -1) == "s" then
+ disp = true
+ cmdid = string.sub(cmdid, 1, -2)
+ end
local uci = require "luci.model.uci".cursor()
if cmdid and
- uci:get("luci", cmdid) == "command" and
- uci:get("luci", cmdid, "public") == "1"
- then
- action_download(cmdid, args)
- else
- luci.http.status(403, "Access to command denied")
+ uci:get("luci", cmdid) == "command" and
+ uci:get("luci", cmdid, "public") == "1"
+ then
+ if disp then
+ execute_command(return_html, cmdid, args)
+ else
+ action_download(cmdid, args)
+ end
+ else
+ luci.http.status(403, "Access to command denied")
+ end
end
-end
diff --git a/applications/luci-app-commands/luasrc/view/commands.htm b/applications/luci-app-commands/luasrc/view/commands.htm
index 73b9e6a2c..f094e186d 100644
--- a/applications/luci-app-commands/luasrc/view/commands.htm
+++ b/applications/luci-app-commands/luasrc/view/commands.htm
@@ -108,16 +108,19 @@
if (legend && output)
{
- var link = location.protocol + '//' + location.hostname +
+ var prefix = location.protocol + '//' + location.hostname +
(location.port ? ':' + location.port : '') +
- location.pathname.split(';')[0] + 'command/' +
- id + (args ? '/' + args : '');
-
+ location.pathname.split(';')[0] + 'command/';
+ var suffix = (args ? '/' + args : '');
+
+ var link = prefix + id + suffix;
+ var link_nodownload = prefix + id + "s" + suffix;
+
legend.style.display = 'none';
output.parentNode.style.display = 'block';
output.innerHTML = String.format(
- '<div class="alert-message"><%:Access command with%> <a href="%s">%s</a></div>',
- link, link
+ '<div class="alert-message"><p><%:Download execution result%> <a href="%s">%s</a></p><p><%:Or display result%> <a href="%s">%s</a></p></div>',
+ link, link, link_nodownload, link_nodownload
);
location.hash = '#output';
diff --git a/applications/luci-app-commands/luasrc/view/commands_public.htm b/applications/luci-app-commands/luasrc/view/commands_public.htm
new file mode 100644
index 000000000..f20799d40
--- /dev/null
+++ b/applications/luci-app-commands/luasrc/view/commands_public.htm
@@ -0,0 +1,50 @@
+<%#
+ Copyright 2016 t123yh <t123yh@outlook.com>
+ Licensed to the public under the Apache License 2.0.
+-%>
+
+<% css = [[
+.alert-success {
+ color: #3c763d;
+ background-color: #dff0d8;
+ border-color: #d6e9c6;
+}
+
+.alert {
+ padding: 15px;
+ margin-bottom: 20px;
+ border: 1px solid transparent;
+ border-radius: 4px;
+}
+
+.alert-warning {
+ color: #8a6d3b;
+ background-color: #fcf8e3;
+ border-color: #faebcc;
+}
+]] -%>
+
+<%+header%>
+
+<% if exitcode == 0 then %>
+ <div class="alert alert-success" role="alert"> <%:Command executed successfully.%> </div>
+<% else %>
+ <div class="alert alert-warning" role="alert"> <%:Command exited with status code %> <%= exitcode %> </div>
+<% end %>
+
+<% if stdout ~= "" then %>
+ <h3><%:Standard Output%></h3>
+ <pre><%= stdout %></pre>
+<% end %>
+
+<% if stderr ~= "" then %>
+ <h3><%:Standard Error%></h3>
+ <pre><%= stderr %></pre>
+<% end %>
+
+<script>
+ <%# Display top bar on mobile devices -%>
+ document.getElementsByClassName('brand')[0].style.setProperty("display", "block", "important");
+</script>
+
+<%+footer%> \ No newline at end of file
diff --git a/applications/luci-app-commands/po/ca/commands.po b/applications/luci-app-commands/po/ca/commands.po
index 9dc23b2f4..11ea8960d 100644
--- a/applications/luci-app-commands/po/ca/commands.po
+++ b/applications/luci-app-commands/po/ca/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Una breva descripció textual de l'ordre configurat"
-msgid "Access command with"
-msgstr "Accedeix l'ordre amb"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -42,6 +39,12 @@ msgstr "Recollint dades..."
msgid "Command"
msgstr "Ordre"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "L'ordre ha fallat"
@@ -72,6 +75,9 @@ msgstr "Descripció"
msgid "Download"
msgstr "Baixa"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "L'execució de l'ordre ha fallat!"
@@ -81,12 +87,21 @@ msgstr "Enllaç"
msgid "Loading"
msgstr "Carregant"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Accés públic"
msgid "Run"
msgstr "Executa"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -96,3 +111,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Esperant que l'ordre acabi..."
+
+#~ msgid "Access command with"
+#~ msgstr "Accedeix l'ordre amb"
diff --git a/applications/luci-app-commands/po/cs/commands.po b/applications/luci-app-commands/po/cs/commands.po
index 64949bdef..f6aa3cc44 100644
--- a/applications/luci-app-commands/po/cs/commands.po
+++ b/applications/luci-app-commands/po/cs/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Krátky popis nastaveného příkazu"
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -40,6 +37,12 @@ msgstr "Sbírání dat..."
msgid "Command"
msgstr "Příkaz"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Příkaz selhal"
@@ -70,6 +73,9 @@ msgstr "Popis"
msgid "Download"
msgstr "Stáhnout"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Chyba při zpracování příkazu!"
@@ -79,12 +85,21 @@ msgstr "Odkaz"
msgid "Loading"
msgstr "Nahrávám"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Veřejný přístup"
msgid "Run"
msgstr "Spustit"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/de/commands.po b/applications/luci-app-commands/po/de/commands.po
index 2b7c631ac..e67404afa 100644
--- a/applications/luci-app-commands/po/de/commands.po
+++ b/applications/luci-app-commands/po/de/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Kurze Beschreibung des abgespeicherten Kommandos"
-msgid "Access command with"
-msgstr "Kommando aufrufen mit"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -42,6 +39,12 @@ msgstr "Sammle Daten..."
msgid "Command"
msgstr "Kommando"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Kommando fehlgeschlagen"
@@ -72,6 +75,9 @@ msgstr "Beschreibung"
msgid "Download"
msgstr "Herunterladen"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Kommando konnte nicht ausgeführt werden!"
@@ -81,12 +87,21 @@ msgstr "Link"
msgid "Loading"
msgstr "Lade"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Öffentlicher Zugriff"
msgid "Run"
msgstr "Ausführen"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -96,3 +111,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Warte auf die Ausführung des Kommandos..."
+
+#~ msgid "Access command with"
+#~ msgstr "Kommando aufrufen mit"
diff --git a/applications/luci-app-commands/po/el/commands.po b/applications/luci-app-commands/po/el/commands.po
index 0e9e65d26..48b18366f 100644
--- a/applications/luci-app-commands/po/el/commands.po
+++ b/applications/luci-app-commands/po/el/commands.po
@@ -11,9 +11,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -37,6 +34,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -67,6 +70,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -76,12 +82,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/en/commands.po b/applications/luci-app-commands/po/en/commands.po
index 754a229c1..ec192e4c1 100644
--- a/applications/luci-app-commands/po/en/commands.po
+++ b/applications/luci-app-commands/po/en/commands.po
@@ -1,19 +1,20 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Last-Translator: Automatically generated\n"
+"Project-Id-Version: \n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language: en\n"
+"X-Generator: Poedit 1.8.11\n"
msgid "A short textual description of the configured command"
msgstr "A short textual description of the configured command"
-msgid "Access command with"
-msgstr "Access command with"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -39,6 +40,12 @@ msgstr "Collecting data..."
msgid "Command"
msgstr "Command"
+msgid "Command executed successfully."
+msgstr "Command executed successfully."
+
+msgid "Command exited with status code"
+msgstr "Command exited with status code"
+
msgid "Command failed"
msgstr "Command failed"
@@ -69,6 +76,9 @@ msgstr "Description"
msgid "Download"
msgstr "Download"
+msgid "Download execution result"
+msgstr "Download execution result"
+
msgid "Failed to execute command!"
msgstr "Failed to execute command!"
@@ -78,12 +88,21 @@ msgstr "Link"
msgid "Loading"
msgstr "Loading"
+msgid "Or display result"
+msgstr "Or display result"
+
msgid "Public access"
msgstr "Public access"
msgid "Run"
msgstr "Run"
+msgid "Standard Error"
+msgstr "Standard Error"
+
+msgid "Standard Output"
+msgstr "Standard Output"
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -93,3 +112,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Waiting for command to complete..."
+
+#~ msgid "Command exited with status code "
+#~ msgstr "Command exited with status code "
diff --git a/applications/luci-app-commands/po/es/commands.po b/applications/luci-app-commands/po/es/commands.po
index 80524529b..b9029b904 100644
--- a/applications/luci-app-commands/po/es/commands.po
+++ b/applications/luci-app-commands/po/es/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Descripción breve del comando a configurar"
-msgid "Access command with"
-msgstr "Acceder al comando con"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -41,6 +38,12 @@ msgstr "Recuperando datos..."
msgid "Command"
msgstr "Comando"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Falló"
@@ -71,6 +74,9 @@ msgstr "Descripción"
msgid "Download"
msgstr "Descarga"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "¡Error al ejecutar el comando!"
@@ -80,12 +86,21 @@ msgstr "Enlace"
msgid "Loading"
msgstr "Cargando"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Acceso público"
msgid "Run"
msgstr "Ejecutar"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -95,3 +110,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Esperando a que termine el comando..."
+
+#~ msgid "Access command with"
+#~ msgstr "Acceder al comando con"
diff --git a/applications/luci-app-commands/po/fr/commands.po b/applications/luci-app-commands/po/fr/commands.po
index fac1aff9c..f348326a0 100644
--- a/applications/luci-app-commands/po/fr/commands.po
+++ b/applications/luci-app-commands/po/fr/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Une courte description de la commande configurée"
-msgid "Access command with"
-msgstr "Accéder à la commande par"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -44,6 +41,12 @@ msgstr "Récupération des données ..."
msgid "Command"
msgstr "Commande"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Echec de la commande"
@@ -74,6 +77,9 @@ msgstr "Description"
msgid "Download"
msgstr "Télécharger"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Echec de l'exécution de la commande ! "
@@ -83,12 +89,21 @@ msgstr "Lien"
msgid "Loading"
msgstr "Chargement"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Accès public"
msgid "Run"
msgstr "Exécuter"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -98,3 +113,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "En attente de la commande pour finir..."
+
+#~ msgid "Access command with"
+#~ msgstr "Accéder à la commande par"
diff --git a/applications/luci-app-commands/po/he/commands.po b/applications/luci-app-commands/po/he/commands.po
index 0e9e65d26..48b18366f 100644
--- a/applications/luci-app-commands/po/he/commands.po
+++ b/applications/luci-app-commands/po/he/commands.po
@@ -11,9 +11,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -37,6 +34,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -67,6 +70,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -76,12 +82,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/hu/commands.po b/applications/luci-app-commands/po/hu/commands.po
index 5cd0ec743..a9c759b9a 100644
--- a/applications/luci-app-commands/po/hu/commands.po
+++ b/applications/luci-app-commands/po/hu/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "A beállított parancs rövid szöveges leírása"
-msgid "Access command with"
-msgstr "Parancs hozzáférése"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -42,6 +39,12 @@ msgstr "Adatgyűjtés..."
msgid "Command"
msgstr "Paracs"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Parancs végrehajtás sikertelen"
@@ -72,6 +75,9 @@ msgstr "Leírás"
msgid "Download"
msgstr "Letöltés"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Parancs végrehajtása sikertelen!"
@@ -81,12 +87,21 @@ msgstr "Link"
msgid "Loading"
msgstr "Betöltés"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Nyilvános hozzáférés"
msgid "Run"
msgstr "Futtatás"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -96,3 +111,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Várakozás a parancs befejezésére..."
+
+#~ msgid "Access command with"
+#~ msgstr "Parancs hozzáférése"
diff --git a/applications/luci-app-commands/po/it/commands.po b/applications/luci-app-commands/po/it/commands.po
index c14b910fc..8155a07ef 100644
--- a/applications/luci-app-commands/po/it/commands.po
+++ b/applications/luci-app-commands/po/it/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Una breve descrizione testuale del comando configurato"
-msgid "Access command with"
-msgstr "Accesso comando con"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -43,6 +40,12 @@ msgstr "Raccolta dei dati..."
msgid "Command"
msgstr "Comando"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Comando fallito"
@@ -73,6 +76,9 @@ msgstr "Descrizione"
msgid "Download"
msgstr "Download"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Impossibile eseguire il comando!"
@@ -82,12 +88,21 @@ msgstr "Collegamento"
msgid "Loading"
msgstr "Caricamento"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Accesso Pubblico"
msgid "Run"
msgstr "Esegui"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -97,3 +112,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "In attesa del comando da completare..."
+
+#~ msgid "Access command with"
+#~ msgstr "Accesso comando con"
diff --git a/applications/luci-app-commands/po/ja/commands.po b/applications/luci-app-commands/po/ja/commands.po
index 3b01a35cf..307951c9c 100644
--- a/applications/luci-app-commands/po/ja/commands.po
+++ b/applications/luci-app-commands/po/ja/commands.po
@@ -1,26 +1,24 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2013-10-05 17:15+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
+"Project-Id-Version: \n"
+"PO-Revision-Date: 2017-01-21 18:09+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language-Team: none\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"POT-Creation-Date: \n"
msgid "A short textual description of the configured command"
msgstr "設定ã—ãŸã‚³ãƒžãƒ³ãƒ‰ã®ç°¡å˜ãªèª¬æ˜Žæ–‡ã‚’記載ã—ã¾ã™"
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
-msgstr ""
+msgstr "事å‰èªè¨¼ç„¡ã—ã§ã®ã‚³ãƒžãƒ³ãƒ‰ã®å®Ÿè¡Œã¨ã€çµæžœå‡ºåŠ›ã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã‚’許å¯ã—ã¾ã™ã€‚"
msgid "Allow the user to provide additional command line arguments"
msgstr "コマンドラインã«å¯¾ã™ã‚‹å¼•æ•°ã®è¿½è¨˜ã‚’許å¯ã™ã‚‹ã‹è¨­å®šã—ã¾ã™"
@@ -40,6 +38,12 @@ msgstr "データåŽé›†ä¸­ã§ã™..."
msgid "Command"
msgstr "コマンド"
+msgid "Command executed successfully."
+msgstr "コマンドã®å®Ÿè¡Œã«æˆåŠŸã—ã¾ã—ãŸã€‚"
+
+msgid "Command exited with status code"
+msgstr "コマンドã¯æ¬¡ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ コードã§çµ‚了ã—ã¾ã—ãŸ:"
+
msgid "Command failed"
msgstr "コマンド失敗"
@@ -70,6 +74,9 @@ msgstr "説明"
msgid "Download"
msgstr "ダウンロード"
+msgid "Download execution result"
+msgstr "実行çµæžœã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰:"
+
msgid "Failed to execute command!"
msgstr "コマンドã®å®Ÿè¡Œã«å¤±æ•—ã—ã¾ã—ãŸ!"
@@ -79,16 +86,30 @@ msgstr "リンク"
msgid "Loading"
msgstr "読ã¿è¾¼ã¿ä¸­"
+msgid "Or display result"
+msgstr "ã¾ãŸã¯çµæžœã®è¡¨ç¤º:"
+
msgid "Public access"
msgstr "パブリック・アクセス"
msgid "Run"
msgstr "実行"
+msgid "Standard Error"
+msgstr "標準エラー"
+
+msgid "Standard Output"
+msgstr "標準出力"
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
-msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã§ã¯ã€ã‚¦ã‚§ãƒ–インターフェースã‹ã‚‰ç°¡å˜ã«ã‚·ã‚§ãƒ«ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+msgstr ""
+"ã“ã®ãƒšãƒ¼ã‚¸ã§ã¯ã€ã‚¦ã‚§ãƒ–インターフェースã‹ã‚‰ç°¡å˜ã«ã‚·ã‚§ãƒ«ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã“"
+"ã¨ãŒã§ãã¾ã™ã€‚"
msgid "Waiting for command to complete..."
msgstr "コマンド実行中ã§ã™..."
+
+#~ msgid "Access command with"
+#~ msgstr "コマンドã¸ã®ã‚¢ã‚¯ã‚»ã‚¹"
diff --git a/applications/luci-app-commands/po/ms/commands.po b/applications/luci-app-commands/po/ms/commands.po
index 6fbb9834e..ad2f1518a 100644
--- a/applications/luci-app-commands/po/ms/commands.po
+++ b/applications/luci-app-commands/po/ms/commands.po
@@ -10,9 +10,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -36,6 +33,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -66,6 +69,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -75,12 +81,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/no/commands.po b/applications/luci-app-commands/po/no/commands.po
index 29b76e5a2..593c9764f 100644
--- a/applications/luci-app-commands/po/no/commands.po
+++ b/applications/luci-app-commands/po/no/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "En kort tekstlig beskrivelse av den konfigurerte kommandoen"
-msgid "Access command with"
-msgstr "Ã…pne kommandoen med"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -42,6 +39,12 @@ msgstr "Henter data..."
msgid "Command"
msgstr "Kommando"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Kommando feilet"
@@ -72,6 +75,9 @@ msgstr "Beskrivelse"
msgid "Download"
msgstr "Nedlasting"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Kunne ikke utføre kommandoen!"
@@ -81,12 +87,21 @@ msgstr "Link"
msgid "Loading"
msgstr "Laster"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Tilgjengelig for alle"
msgid "Run"
msgstr "Kjør"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -96,3 +111,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Venter på at kommandoen fullføres..."
+
+#~ msgid "Access command with"
+#~ msgstr "Ã…pne kommandoen med"
diff --git a/applications/luci-app-commands/po/pl/commands.po b/applications/luci-app-commands/po/pl/commands.po
index 6f660ba12..7c62eb05c 100644
--- a/applications/luci-app-commands/po/pl/commands.po
+++ b/applications/luci-app-commands/po/pl/commands.po
@@ -15,9 +15,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Krótki opis konfigurowanej komendy"
-msgid "Access command with"
-msgstr "Dostęp do komendy przez"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -43,6 +40,12 @@ msgstr "Zbieram dane:"
msgid "Command"
msgstr "Komenda"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "ZÅ‚a komenda"
@@ -73,6 +76,9 @@ msgstr "Opis"
msgid "Download"
msgstr "Download"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Nie można wykonać komendy!"
@@ -82,12 +88,21 @@ msgstr "ÅÄ…cze"
msgid "Loading"
msgstr "Åadowanie"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Publiczny dostęp"
msgid "Run"
msgstr "Uruchom"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -97,3 +112,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Czekanie na wykonanie komendy..."
+
+#~ msgid "Access command with"
+#~ msgstr "Dostęp do komendy przez"
diff --git a/applications/luci-app-commands/po/pt-br/commands.po b/applications/luci-app-commands/po/pt-br/commands.po
index 83c7bd5db..4d04bffbc 100644
--- a/applications/luci-app-commands/po/pt-br/commands.po
+++ b/applications/luci-app-commands/po/pt-br/commands.po
@@ -1,22 +1,20 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2014-03-15 22:02+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
+"Project-Id-Version: \n"
+"PO-Revision-Date: 2017-02-20 17:39-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language-Team: none\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"POT-Creation-Date: \n"
msgid "A short textual description of the configured command"
msgstr "Uma pequena descrição textual do comando configurado"
-msgid "Access command with"
-msgstr "Acessar o comando com"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -42,6 +40,12 @@ msgstr "Adquirindo dados..."
msgid "Command"
msgstr "Comando"
+msgid "Command executed successfully."
+msgstr "O comando executou com sucesso."
+
+msgid "Command exited with status code"
+msgstr "O comando encerrou com um estado de erro"
+
msgid "Command failed"
msgstr "O comando falhou"
@@ -72,6 +76,9 @@ msgstr "Descrição"
msgid "Download"
msgstr "Baixar"
+msgid "Download execution result"
+msgstr "Baixar os resultados da execução"
+
msgid "Failed to execute command!"
msgstr "Falha ao executar comando!"
@@ -81,12 +88,21 @@ msgstr "Endereço"
msgid "Loading"
msgstr "Carregando"
+msgid "Or display result"
+msgstr "Ou mostre o resultado"
+
msgid "Public access"
msgstr "Acesso público"
msgid "Run"
msgstr "Executar"
+msgid "Standard Error"
+msgstr "Saída de Erro"
+
+msgid "Standard Output"
+msgstr "Saída Padrão"
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -96,3 +112,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Aguardando a conclusão do comando..."
+
+#~ msgid "Access command with"
+#~ msgstr "Acessar o comando com"
diff --git a/applications/luci-app-commands/po/pt/commands.po b/applications/luci-app-commands/po/pt/commands.po
index a46b7d21b..b2ad0ae44 100644
--- a/applications/luci-app-commands/po/pt/commands.po
+++ b/applications/luci-app-commands/po/pt/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Uma pequena descrição textual do comando configurado"
-msgid "Access command with"
-msgstr "Aceder ao comando com"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -43,6 +40,12 @@ msgstr "A obter dados..."
msgid "Command"
msgstr "Comando"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "O comando falhou"
@@ -73,6 +76,9 @@ msgstr "Descrição"
msgid "Download"
msgstr "Descarregar"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Falha ao executar comando!"
@@ -82,12 +88,21 @@ msgstr "Link"
msgid "Loading"
msgstr "A carregar"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Acesso público"
msgid "Run"
msgstr "Executar"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -97,3 +112,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "A aguardar que o comando termine..."
+
+#~ msgid "Access command with"
+#~ msgstr "Aceder ao comando com"
diff --git a/applications/luci-app-commands/po/ro/commands.po b/applications/luci-app-commands/po/ro/commands.po
index 05c4574b9..57d1f7bb2 100644
--- a/applications/luci-app-commands/po/ro/commands.po
+++ b/applications/luci-app-commands/po/ro/commands.po
@@ -15,9 +15,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "O scurta descriere textuala a comenzii configurate"
-msgid "Access command with"
-msgstr "Acces la comanda cu"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -43,6 +40,12 @@ msgstr "Colectare date..."
msgid "Command"
msgstr "Comandă"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Comandă eşuată"
@@ -73,6 +76,9 @@ msgstr "Descriere"
msgid "Download"
msgstr "Descarca"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "S-a esuat executarea comenzii!!"
@@ -82,12 +88,21 @@ msgstr "Link"
msgid "Loading"
msgstr "Se incarca"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Access public"
msgid "Run"
msgstr "Ruleaza"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -97,3 +112,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Astept finalizarea comenzii..."
+
+#~ msgid "Access command with"
+#~ msgstr "Acces la comanda cu"
diff --git a/applications/luci-app-commands/po/ru/commands.po b/applications/luci-app-commands/po/ru/commands.po
index 6197231c1..0c035ab73 100644
--- a/applications/luci-app-commands/po/ru/commands.po
+++ b/applications/luci-app-commands/po/ru/commands.po
@@ -15,9 +15,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Короткое текÑтовое опиÑание команды"
-msgid "Access command with"
-msgstr "ДоÑтуп к команде через"
-
#, fuzzy
msgid ""
"Allow executing the command and downloading its output without prior "
@@ -46,6 +43,12 @@ msgstr "Сбор данных..."
msgid "Command"
msgstr "Команда"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Команда не выполнена"
@@ -76,6 +79,9 @@ msgstr "ОпиÑание"
msgid "Download"
msgstr "Скачать"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "Ошибка Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹!"
@@ -85,12 +91,21 @@ msgstr "СÑылка"
msgid "Loading"
msgstr "Загрузка"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Публичный доÑтуп"
msgid "Run"
msgstr "ЗапуÑк"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -100,3 +115,6 @@ msgstr ""
msgid "Waiting for command to complete..."
msgstr "Ожидание Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹..."
+
+#~ msgid "Access command with"
+#~ msgstr "ДоÑтуп к команде через"
diff --git a/applications/luci-app-commands/po/sk/commands.po b/applications/luci-app-commands/po/sk/commands.po
index 4133dfb2d..17bed402d 100644
--- a/applications/luci-app-commands/po/sk/commands.po
+++ b/applications/luci-app-commands/po/sk/commands.po
@@ -11,9 +11,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -37,6 +34,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -67,6 +70,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -76,12 +82,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/sv/commands.po b/applications/luci-app-commands/po/sv/commands.po
index 9fbe0afee..5a4c255e4 100644
--- a/applications/luci-app-commands/po/sv/commands.po
+++ b/applications/luci-app-commands/po/sv/commands.po
@@ -12,9 +12,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -38,6 +35,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -68,6 +71,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -77,12 +83,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/templates/commands.pot b/applications/luci-app-commands/po/templates/commands.pot
index 5d2ffae6d..31df11dc1 100644
--- a/applications/luci-app-commands/po/templates/commands.pot
+++ b/applications/luci-app-commands/po/templates/commands.pot
@@ -4,9 +4,6 @@ msgstr "Content-Type: text/plain; charset=UTF-8"
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -30,6 +27,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -60,6 +63,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -69,12 +75,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/tr/commands.po b/applications/luci-app-commands/po/tr/commands.po
index 413227402..587bc2b84 100644
--- a/applications/luci-app-commands/po/tr/commands.po
+++ b/applications/luci-app-commands/po/tr/commands.po
@@ -11,9 +11,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -37,6 +34,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -67,6 +70,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -76,12 +82,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/uk/commands.po b/applications/luci-app-commands/po/uk/commands.po
index 74a19f374..f72fc9354 100644
--- a/applications/luci-app-commands/po/uk/commands.po
+++ b/applications/luci-app-commands/po/uk/commands.po
@@ -16,9 +16,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "Короткий Ð¾Ð¿Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ налаштуваннÑ"
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -43,6 +40,12 @@ msgstr "Ð—Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…..."
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "Команда не виконана"
@@ -74,6 +77,9 @@ msgstr "ОпиÑ"
msgid "Download"
msgstr "Завантажити"
+msgid "Download execution result"
+msgstr ""
+
#, fuzzy
msgid "Failed to execute command!"
msgstr "Помилка під Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку команди!"
@@ -84,12 +90,21 @@ msgstr ""
msgid "Loading"
msgstr "Триває завантаженнÑ"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "Відкритий доÑтуп"
msgid "Run"
msgstr "ЗапуÑтити"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
#, fuzzy
msgid ""
"This page allows you to configure custom shell commands which can be easily "
diff --git a/applications/luci-app-commands/po/vi/commands.po b/applications/luci-app-commands/po/vi/commands.po
index 413227402..587bc2b84 100644
--- a/applications/luci-app-commands/po/vi/commands.po
+++ b/applications/luci-app-commands/po/vi/commands.po
@@ -11,9 +11,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr ""
-msgid "Access command with"
-msgstr ""
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -37,6 +34,12 @@ msgstr ""
msgid "Command"
msgstr ""
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr ""
@@ -67,6 +70,9 @@ msgstr ""
msgid "Download"
msgstr ""
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr ""
@@ -76,12 +82,21 @@ msgstr ""
msgid "Loading"
msgstr ""
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr ""
msgid "Run"
msgstr ""
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
diff --git a/applications/luci-app-commands/po/zh-cn/commands.po b/applications/luci-app-commands/po/zh-cn/commands.po
index 8b2b032b6..90f1dbed2 100644
--- a/applications/luci-app-commands/po/zh-cn/commands.po
+++ b/applications/luci-app-commands/po/zh-cn/commands.po
@@ -1,22 +1,20 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2013-10-08 15:47+0200\n"
-"Last-Translator: Tanyingyu <Tanyingyu@163.com>\n"
+"Project-Id-Version: \n"
+"PO-Revision-Date: 2017-01-21 09:34+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language-Team: none\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"POT-Creation-Date: \n"
msgid "A short textual description of the configured command"
msgstr "简短æ述命令用途"
-msgid "Access command with"
-msgstr "访问命令"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -40,6 +38,12 @@ msgstr "收集数æ®ï¼š"
msgid "Command"
msgstr "命令"
+msgid "Command executed successfully."
+msgstr "命令æˆåŠŸæ‰§è¡Œã€‚"
+
+msgid "Command exited with status code"
+msgstr "命令退出,状æ€ç ï¼š"
+
msgid "Command failed"
msgstr "执行命令失败"
@@ -70,6 +74,9 @@ msgstr "æè¿°"
msgid "Download"
msgstr "下载"
+msgid "Download execution result"
+msgstr "下载执行结果"
+
msgid "Failed to execute command!"
msgstr "执行命令失败ï¼"
@@ -79,12 +86,21 @@ msgstr "连接"
msgid "Loading"
msgstr "加载中"
+msgid "Or display result"
+msgstr "显示执行结果"
+
msgid "Public access"
msgstr "公共访问"
msgid "Run"
msgstr "è¿è¡Œ"
+msgid "Standard Error"
+msgstr "标准错误æµ"
+
+msgid "Standard Output"
+msgstr "标准输出æµ"
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -92,3 +108,6 @@ msgstr "此页é¢å…许您é…置自定义Shell命令,并å¯ä»¥ä»ŽWebç•Œé¢è°ƒç
msgid "Waiting for command to complete..."
msgstr "等待命令执行完æˆ... ..."
+
+#~ msgid "Command exited with status code "
+#~ msgstr "命令退出,状æ€ç ï¼š"
diff --git a/applications/luci-app-commands/po/zh-tw/commands.po b/applications/luci-app-commands/po/zh-tw/commands.po
index 4377ead46..f1f452518 100644
--- a/applications/luci-app-commands/po/zh-tw/commands.po
+++ b/applications/luci-app-commands/po/zh-tw/commands.po
@@ -14,9 +14,6 @@ msgstr ""
msgid "A short textual description of the configured command"
msgstr "以短文æ述設定指令"
-msgid "Access command with"
-msgstr "å­˜å–指令"
-
msgid ""
"Allow executing the command and downloading its output without prior "
"authentication"
@@ -40,6 +37,12 @@ msgstr "收集資料中..."
msgid "Command"
msgstr "指令"
+msgid "Command executed successfully."
+msgstr ""
+
+msgid "Command exited with status code"
+msgstr ""
+
msgid "Command failed"
msgstr "命令失敗"
@@ -70,6 +73,9 @@ msgstr "æè¿°"
msgid "Download"
msgstr "下載"
+msgid "Download execution result"
+msgstr ""
+
msgid "Failed to execute command!"
msgstr "執行指令失敗!"
@@ -79,12 +85,21 @@ msgstr "連çµ"
msgid "Loading"
msgstr "掛載"
+msgid "Or display result"
+msgstr ""
+
msgid "Public access"
msgstr "公用存å–"
msgid "Run"
msgstr "執行"
+msgid "Standard Error"
+msgstr ""
+
+msgid "Standard Output"
+msgstr ""
+
msgid ""
"This page allows you to configure custom shell commands which can be easily "
"invoked from the web interface."
@@ -92,3 +107,6 @@ msgstr "åªè¦å¯ä»¥å¾žweb介輕易調用, 這é é¢å…許你自定shell指令."
msgid "Waiting for command to complete..."
msgstr "等待完整命令中..."
+
+#~ msgid "Access command with"
+#~ msgstr "å­˜å–指令"
diff --git a/applications/luci-app-cshark/Makefile b/applications/luci-app-cshark/Makefile
new file mode 100644
index 000000000..40b0e9fb7
--- /dev/null
+++ b/applications/luci-app-cshark/Makefile
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2017 Dan Luedtke <mail@danrl.com>
+#
+# This is free software, licensed under the Apache License, Version 2.0 .
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=Cloudshark capture tool Web UI
+LUCI_DEPENDS:=+cshark
+LUCI_PKGARCH:=all
+
+PKG_MAINTAINER:=Luka Perkov <luka@openwrt.org>
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-cshark/luasrc/controller/cshark.lua b/applications/luci-app-cshark/luasrc/controller/cshark.lua
new file mode 100644
index 000000000..4d9bbba29
--- /dev/null
+++ b/applications/luci-app-cshark/luasrc/controller/cshark.lua
@@ -0,0 +1,125 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright (C) 2014, QA Cafe, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+]]--
+
+module("luci.controller.cshark", package.seeall)
+
+function index()
+ page = node("admin", "network", "cloudshark")
+ page.target = cbi("admin_network/cshark")
+ page.title = _("CloudShark")
+ page.order = 70
+
+ page = entry({"admin", "network", "cshark_iface_dump_start"}, call("cshark_iface_dump_start"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "network", "cshark_iface_dump_stop"}, call("cshark_iface_dump_stop"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "network", "cshark_check_status"}, call("cshark_check_status"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "network", "cshark_link_list_get"}, call("cshark_link_list_get"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "network", "cshark_link_list_clear"}, call("cshark_link_list_clear"), nil)
+ page.leaf = true
+end
+
+function cshark_iface_dump_start(ifname, value, flag, filter)
+ if ifname == nil or ifname == '' then
+ ifname = 'any'
+ end
+ if tonumber(value) == nil
+ then
+ value = '0'
+ end
+ if filter == nil or filter == '' then
+ filter = ''
+ end
+
+ if flag == nil or flag == '' then
+ filter = 'T'
+ end
+
+ luci.http.prepare_content("text/plain")
+
+ local res = os.execute("(/sbin/cshark -i " .. ifname .. " -" .. flag .. " " .. value .. " -p /tmp/cshark-luci.pid " .. filter .. " > /tmp/cshark-luci.out 2>&1) &")
+ luci.http.write(tostring(res))
+end
+
+function cshark_iface_dump_stop()
+ luci.http.prepare_content("text/plain")
+
+ local f = io.open("/tmp/cshark-luci.pid", "rb")
+ local pid = f:read("*all")
+ io.close(f)
+
+ local res = os.execute("kill -TERM " .. pid)
+ luci.http.write(tostring(res))
+end
+
+function cshark_check_status()
+
+ local msg = "";
+ local status;
+ local f = io.open("/tmp/cshark-luci.pid","r")
+ if f ~= nil then
+ status = 1;
+ io.close(f)
+ else
+ status = 0;
+ end
+
+ f = io.open("/tmp/cshark-luci.out","r")
+ if f ~= nil then
+ msg = f:read("*all")
+ io.close(f)
+ if msg ~= '' then
+ os.remove('/tmp/cshark-luci.out')
+ end
+ end
+
+ luci.http.prepare_content("application/json")
+
+ local res = {}
+ res["status"] = status;
+ res["msg"] = msg;
+
+ luci.http.write_json(res)
+end
+
+function cshark_link_list_get()
+ local uci = require("uci").cursor()
+
+ luci.http.prepare_content("application/json")
+
+ luci.http.write("[")
+
+ local t = uci:get("cshark", "cshark", "entry")
+ if (t ~= nil) then
+ for i = #t, 1, -1 do
+ luci.http.write("[\"" .. t[i] .. "\"],")
+ end
+ end
+
+ luci.http.write("[]]")
+end
+
+function cshark_link_list_clear()
+ local uci = require("uci").cursor()
+
+ uci:delete("cshark", "cshark", "entry")
+ uci:commit("cshark");
+
+ luci.http.status(200, "OK")
+end
diff --git a/applications/luci-app-cshark/luasrc/model/cbi/admin_network/cshark.lua b/applications/luci-app-cshark/luasrc/model/cbi/admin_network/cshark.lua
new file mode 100644
index 000000000..8db95596f
--- /dev/null
+++ b/applications/luci-app-cshark/luasrc/model/cbi/admin_network/cshark.lua
@@ -0,0 +1,30 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright (C) 2014, QA Cafe, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+]]--
+
+local fs = require "nixio.fs"
+
+m = Map("cshark", translate("CloudShark"))
+
+if fs.access("/etc/config/cshark") then
+ m:section(SimpleSection).template = "cshark"
+
+ s = m:section(TypedSection, "cshark", translate("Options"))
+ s.anonymous = true
+ s.addremove = false
+
+ s:option(Value, "url", translate("CloudShark URL"))
+ s:option(Value, "token", translate("CloudShark API token"))
+end
+
+return m
diff --git a/applications/luci-app-cshark/luasrc/view/cshark.htm b/applications/luci-app-cshark/luasrc/view/cshark.htm
new file mode 100644
index 000000000..bc67f806c
--- /dev/null
+++ b/applications/luci-app-cshark/luasrc/view/cshark.htm
@@ -0,0 +1,291 @@
+<%#
+LuCI - Lua Configuration Interface
+
+Copyright (C) 2014, QA Cafe, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+
+-%>
+
+<fieldset class="cbi-section">
+ <legend><%:Start network capture%></legend>
+ <div class="cbi-section-node">
+ <table class="cbi-section-table">
+ <tr>
+ <th><%:Interface%></th>
+ <th colspan='2'><%:seconds, packets, bytes%></th>
+ <th><%:Filter%></th>
+ <th><%:Actions%></th>
+ </tr>
+ <tr>
+ <td>
+ <select title="<%:Interface%>" style="width:auto" id="s_interfaces">
+ <%
+ local nixio = require "nixio"
+ for k, v in ipairs(nixio.getifaddrs()) do
+ if v.family == "packet" then
+ %>
+ <option value="<%=v.name%>"><%=v.name%> </option>
+ <%
+ end
+ end
+ %>
+ <option value="any"><%:any%></option>
+ </select>
+ </td>
+ <td colspan='2'>
+ <input id="tx_value" type="text" value="0" />
+ <select title="<%:timeout, bytes, seconds%>" id="s_value_type" style="width:auto">
+ <option value="T"><%:seconds%></option>
+ <option value="P"><%:packets%></option>
+ <option value="S"><%:bytes%></option>
+ </select>
+ </td>
+ <td>
+ <input style="margin: 5px 0" type="text" title="<%:Filter%>" placeholder="filter" id="i_filter" />
+ </td>
+ <td>
+ <input type="button" id="bt_action" data-action="start" value="<%:Start capture%>" class="cbi-button" />
+ </td>
+ </tr>
+ </table>
+ </div>
+</fieldset>
+
+<fieldset class="cbi-section">
+ <span id="cshark-rc-output"></span>
+</fieldset>
+
+<hr/>
+
+<fieldset class="cbi-section">
+ <legend><%:Capture links%></legend>
+ <div class="cbi-section-node">
+ <table id="t_link_list" class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:Capture URL%></th>
+ <th class="cbi-section-table-cell"><%:Capture time%></th>
+ </tr>
+ </table>
+ </div>
+</fieldset>
+
+<fieldset class="cbi-section">
+ <a href="https://support.cloudshark.org/openwrt/openwrt-cloudshark.html" target="_blank">Visit support.cloudshark.org for help.</a>
+</fieldset>
+
+<hr/>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+
+ var capture_running = 0;
+ var pid_file = 0;
+ var bt_action = document.getElementById('bt_action');
+ var a_clear_links = document.getElementById('a_clear_links');
+ var output = document.getElementById('cshark-rc-output');
+ var loader = '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" width="16" height="16" style="vertical-align:middle" /> ';
+ var msg = { 'start' : '<%:Waiting for capture to complete...%>', 'stop' : '<%:Waiting for upload to complete...%>' };
+ var status_msg = msg['start'];
+
+ function get_date(timestamp)
+ {
+ function pad_str(str)
+ {
+ return (str < 10) ? "0" + str : str;
+ }
+
+ var current_date = new Date(timestamp * 1000);
+ return current_date.getFullYear() + "-" +
+ pad_str(current_date.getMonth() + 1) + "-" +
+ pad_str(current_date.getDate()) + " " +
+ pad_str(current_date.getHours()) + ":" +
+ pad_str(current_date.getMinutes()) + ":" +
+ pad_str(current_date.getSeconds());
+ }
+
+ bt_action.onclick = function()
+ {
+ var action = this.getAttribute("data-action");
+ var csxhr = new XHR();
+
+ if (action == "stop")
+ {
+ update_status(action);
+
+ bt_action.disabled = true;
+
+ csxhr.get('<%=luci.dispatcher.build_url("admin", "network")%>/cshark_iface_dump_stop', null,
+ function(x)
+ {
+ if (!x || x.responseText.trim() != "0")
+ {
+ update_status("failed", "Invalid response on stop.");
+ }
+ });
+
+ }
+ else if (action == "start")
+ {
+
+ var s_interfaces = document.getElementById('s_interfaces');
+ var s_value_type = document.getElementById('s_value_type');
+ var i_filter = document.getElementById('i_filter');
+
+ var if_n = s_interfaces.selectedIndex;
+ var t_n = s_value_type.selectedIndex;
+ var ifname = s_interfaces.options[if_n].value.trim();
+ var filter_val = i_filter.value.trim();
+ var tx_val = document.getElementById('tx_value').value.trim();
+ var type_val = s_value_type.options[t_n].value.trim();
+
+ if (type_val != 'P' && type_val != 'T' && type_val != 'S') type_val = 'T';
+
+ if (!ifname || !type_val) return;
+
+ if (isNaN(tx_val)) return alert("<%:value for [seconds, packets, bytes] must be Integer%>");
+
+ update_status(action);
+
+ csxhr.get('<%=luci.dispatcher.build_url("admin", "network")%>/cshark_iface_dump_start/' + ifname + '/' + tx_val + '/' + type_val + '/'+ filter_val, null,
+ function(x)
+ {
+ if (!x)
+ update_status("failed", "Invalid response on start.");
+ else
+ update_status("running");
+ });
+ }
+ }
+
+ function update_status(status, message)
+ {
+ switch (status)
+ {
+ case 'start':
+ case 'stop':
+ status_msg = msg[status];
+ output.innerHTML = loader + status_msg;
+ break
+
+ case 'running':
+ if (capture_running) break;;
+
+ output.innerHTML = loader + status_msg;
+
+ bt_action.value = '<%:Stop capture%>';
+ bt_action.setAttribute('data-action', 'stop');
+ capture_running = 1;
+ break;
+
+ case 'completed':
+ case 'failed':
+ if (!capture_running) break;
+
+ if (status == "completed")
+ {
+ link_list_update();
+ }
+
+ output.innerHTML = "<pre>" + message + "</pre>";
+ bt_action.value = '<%:Start capture%>';
+ bt_action.setAttribute('data-action', 'start');
+ bt_action.disabled = false;
+ capture_running = 0;
+ break;
+ }
+ }
+
+
+ function check_status()
+ {
+
+ XHR.poll(3, '<%=luci.dispatcher.build_url("admin", "network")%>/cshark_check_status', null,
+ function(x, data)
+ {
+ if (!x)
+ {
+ if (capture_running)
+ update_status("failed", "Invalid response when fetching status.");
+
+ return;
+ }
+ console.log(data)
+
+ update_status( (data.status == 1) && "running" || "completed", data.msg);
+ })
+ }
+
+ function link_list_clear()
+ {
+ var csxhr_del = new XHR();
+ csxhr_del.get('<%=luci.dispatcher.build_url("admin", "network")%>/cshark_link_list_clear', null,
+ function(x)
+ {
+ if (!x)
+ return false;
+
+ link_list_update();
+ });
+ }
+
+
+ function link_list_update()
+ {
+ var t_link = document.getElementById("t_link_list");
+ if (!t_link) return;
+
+ var row_count = t_link.rows.length;
+ while(--row_count) t_link.deleteRow(row_count);
+
+ var cell = t_link.insertRow(-1).insertCell(0);
+ cell.colSpan = 2;
+ cell.innerHTML = loader;
+
+ var csxhr_link = new XHR();
+ csxhr_link.get('<%=luci.dispatcher.build_url("admin", "network")%>/cshark_link_list_get', null,
+ function(x, entries)
+ {
+ var row = t_link.deleteRow(1);
+
+ if (!x) return;
+
+ if (!entries || !entries.length)
+ {
+ var cell = t_link.insertRow(-1).insertCell(0);
+ cell.colSpan = 2;
+ cell.innerHTML = '<em><br />There are no captures available yet.</em>';
+
+ return;
+ }
+
+ for (var i = 0, len = entries.length; i < len ; i++)
+ {
+ var entry = entries[i][0];
+ if (!entry) continue;
+
+ var data = entry.split(",");
+ var url = data[0];
+ var timestamp = data[1];
+
+ var row = t_link.insertRow(-1);
+ row.insertCell(0).innerHTML = '<a href="'+url+'" target="_blank">'+url+'</a>';
+ row.insertCell(1).innerHTML = get_date(timestamp);
+ }
+
+ var cell = t_link.insertRow(-1).insertCell(0);
+ cell.colSpan = 2;
+ cell.style.textAlign="center";
+ cell.innerHTML = '<input type="button" onclick="link_list_clear()" class="cbi-button" value ="<%:Clear list%>" />';
+ })
+ }
+
+ check_status();
+ link_list_update();
+//]]></script>
diff --git a/applications/luci-app-ddns/Makefile b/applications/luci-app-ddns/Makefile
index 88c905a41..69f9880d4 100644
--- a/applications/luci-app-ddns/Makefile
+++ b/applications/luci-app-ddns/Makefile
@@ -2,7 +2,7 @@
# Copyright 2008 Steven Barth <steven@midlink.org>
# Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
# Copyright 2013 Manuel Munz <freifunk at somakoma dot de>
-# Copyright 2014-2016 Christian Schoenebeck <christian dot schoenebeck at gmail dot com>
+# Copyright 2014-2017 Christian Schoenebeck <christian dot schoenebeck at gmail dot com>
#
# This is free software, licensed under the Apache License, Version 2.0
@@ -16,7 +16,7 @@ PKG_VERSION:=2.4.8
# Release == build
# increase on changes of translation files
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_LICENSE:=Apache-2.0
PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>
diff --git a/applications/luci-app-ddns/luasrc/controller/ddns.lua b/applications/luci-app-ddns/luasrc/controller/ddns.lua
index 63bb8bf4b..1dfa62554 100755
--- a/applications/luci-app-ddns/luasrc/controller/ddns.lua
+++ b/applications/luci-app-ddns/luasrc/controller/ddns.lua
@@ -1,7 +1,7 @@
-- Copyright 2008 Steven Barth <steven@midlink.org>
-- Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
-- Copyright 2013 Manuel Munz <freifunk at somakoma dot de>
--- Copyright 2014-2016 Christian Schoenebeck <christian dot schoenebeck at gmail dot com>
+-- Copyright 2014-2017 Christian Schoenebeck <christian dot schoenebeck at gmail dot com>
-- Licensed to the public under the Apache License 2.0.
module("luci.controller.ddns", package.seeall)
@@ -24,7 +24,7 @@ local srv_ver_min = "2.7.6" -- minimum version of service required
local srv_ver_cmd = luci_helper .. [[ -V | awk {'print $2'}]]
local app_name = "luci-app-ddns"
local app_title = "Dynamic DNS"
-local app_version = "2.4.8-1"
+local app_version = "2.4.8-2"
function index()
local nxfs = require "nixio.fs" -- global definitions not available
@@ -180,12 +180,10 @@ local function _get_status()
end
-- get/set monitored interface and IP version
- local iface = s["interface"] or "_nonet_"
+ local iface = s["interface"] or "wan"
local use_ipv6 = tonumber(s["use_ipv6"]) or 0
- if iface ~= "_nonet_" then
- local ipv = (use_ipv6 == 1) and "IPv6" or "IPv4"
- iface = ipv .. " / " .. iface
- end
+ local ipv = (use_ipv6 == 1) and "IPv6" or "IPv4"
+ iface = ipv .. " / " .. iface
-- try to get registered IP
local lookup_host = s["lookup_host"] or "_nolookup_"
diff --git a/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm b/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm
index 0bcfd4428..b69d780ea 100644
--- a/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm
+++ b/applications/luci-app-ddns/luasrc/view/ddns/detail_lvalue.htm
@@ -14,6 +14,7 @@
c = c + 1
%>
<input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)" type="radio"<%= attr("id", cbid..c) .. attr("name", cbid) .. attr("value", key) .. ifattr((self:cfgvalue(section) or self.default) == key, "checked", "checked") %> />
+ <label<%= attr("for", cbid..c) %>></label>
<label<%= attr("for", cbid..c) %>><%=self.vallist[i]%></label>
<% if c == self.size then c = 0 %><% if self.orientation == "horizontal" then %>&#160;<% else %><br /><% end %>
<% end end %>
diff --git a/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm b/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm
index 64b3dae45..2efc125fc 100644
--- a/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm
+++ b/applications/luci-app-ddns/luasrc/view/ddns/overview_enabled.htm
@@ -10,6 +10,7 @@
attr("id", cbid) .. attr("name", cbid) .. attr("value", self.enabled or 1) ..
ifattr((self:cfgvalue(section) or self.default) == self.enabled, "checked", "checked")
%> />
+<label<%= attr("for", cbid)%>></label>
<%+cbi/valuefooter%>
<!-- ++ END ++ Dynamic DNS ++ overview_enabled.htm ++ -->
diff --git a/applications/luci-app-ddns/po/pt-br/ddns.po b/applications/luci-app-ddns/po/pt-br/ddns.po
index 497084651..ab22837b2 100644
--- a/applications/luci-app-ddns/po/pt-br/ddns.po
+++ b/applications/luci-app-ddns/po/pt-br/ddns.po
@@ -2,15 +2,15 @@ msgid ""
msgstr ""
"Project-Id-Version: luci-app-ddns 2.4.0-1\n"
"POT-Creation-Date: 2016-01-30 11:07+0100\n"
-"PO-Revision-Date: 2016-07-01 22:40-0300\n"
-"Last-Translator: Matheus Dal Mago <matheusdalmago10@gmail.com>\n"
+"PO-Revision-Date: 2017-02-20 17:41-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 1.8.8\n"
+"X-Generator: Poedit 1.8.11\n"
msgid "&"
msgstr "&"
@@ -228,7 +228,7 @@ msgid "Error Retry Interval"
msgstr "Intervalo de tentativas em Erro"
msgid "Event Network"
-msgstr ""
+msgstr "Rede de Evento"
msgid "File"
msgstr "Arquivo"
@@ -438,16 +438,16 @@ msgid "No certificates found"
msgstr "Nenhum certificado encontrado"
msgid "No data"
-msgstr ""
+msgstr "Sem dados"
msgid "No logging"
-msgstr ""
+msgstr "Sem registros"
msgid "Non-public and by default blocked IP's"
msgstr "IPs não públicos e bloqueados por padrão"
msgid "Notice"
-msgstr ""
+msgstr "Aviso"
msgid "Number of last lines stored in log files"
msgstr "Número das últimas linhas salvas nos arquivos de log"
@@ -475,7 +475,7 @@ msgstr ""
"Em Erro, o script irá para a execução após um número definido de tentativas"
msgid "OpenWrt Wiki"
-msgstr ""
+msgstr "Wiki do OpenWRT"
msgid "Optional Encoded Parameter"
msgstr "Parâmetro Opcionalmente Codificado"
@@ -490,7 +490,7 @@ msgid "Optional: Replaces [PARAMOPT] in Update-URL (NOT URL-encoded)"
msgstr "Opcional: Substitui [PARAMOPT] na URL de atualização"
msgid "Overview"
-msgstr ""
+msgstr "Visão Geral"
msgid "PROXY-Server"
msgstr "servidor PROXY"
@@ -575,7 +575,7 @@ msgid "There is no service configured."
msgstr "Não há serviço configurado"
msgid "Timer Settings"
-msgstr ""
+msgstr "Configurações do Controlador de Tempo"
msgid "To change global settings click here"
msgstr "Clique aqui para mudar configurações globais"
diff --git a/applications/luci-app-diag-devinfo/Makefile b/applications/luci-app-diag-devinfo/Makefile
index 0424fffa0..1505b6212 100644
--- a/applications/luci-app-diag-devinfo/Makefile
+++ b/applications/luci-app-diag-devinfo/Makefile
@@ -9,6 +9,10 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Diagnostics Tools (Device Info)
LUCI_DEPENDS:=+luci-app-diag-core +smap +netdiscover +mac-to-devinfo +httping +smap-to-devinfo +netdiscover-to-devinfo @BROKEN
+define Package/luci-app-diag-devinfo/conffiles
+/etc/config/luci_devinfo
+endef
+
include ../../luci.mk
# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-dynapoint/Makefile b/applications/luci-app-dynapoint/Makefile
new file mode 100644
index 000000000..83512dba5
--- /dev/null
+++ b/applications/luci-app-dynapoint/Makefile
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2016 The LuCI Team <luci@lists.subsignal.org>
+#
+# This is free software, licensed under the GNU General Public License v3.
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=LuCI Support for DynaPoint
+LUCI_DEPENDS:=+dynapoint
+
+PKG_LICENSE:=GPL-3.0+
+PKG_MAINTAINER:=Tobias Ilte <tobias.ilte@campus.tu-berlin.de>
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
+
diff --git a/applications/luci-app-dynapoint/luasrc/controller/dynapoint.lua b/applications/luci-app-dynapoint/luasrc/controller/dynapoint.lua
new file mode 100644
index 000000000..65348632e
--- /dev/null
+++ b/applications/luci-app-dynapoint/luasrc/controller/dynapoint.lua
@@ -0,0 +1,9 @@
+module("luci.controller.dynapoint", package.seeall)
+
+function index()
+ if not nixio.fs.access("/etc/config/dynapoint") then
+ return
+ end
+ entry({"admin", "services", "dynapoint"}, cbi("dynapoint"), _("DynaPoint"))
+end
+
diff --git a/applications/luci-app-dynapoint/luasrc/model/cbi/dynapoint.lua b/applications/luci-app-dynapoint/luasrc/model/cbi/dynapoint.lua
new file mode 100644
index 000000000..e6871a5bc
--- /dev/null
+++ b/applications/luci-app-dynapoint/luasrc/model/cbi/dynapoint.lua
@@ -0,0 +1,99 @@
+local uci = require "luci.model.uci".cursor()
+local a = require "luci.model.ipkg"
+local DISP = require "luci.dispatcher"
+
+local wlcursor = luci.model.uci.cursor_state()
+local wireless = wlcursor:get_all("wireless")
+local ifaces = {}
+
+for k, v in pairs(wireless) do
+ if v[".type"] == "wifi-iface" then
+ table.insert(ifaces, v)
+ end
+end
+
+m = Map("dynapoint")
+m:chain("wireless")
+
+s = m:section(NamedSection, "internet", "rule", translate("Configuration"), translate("Check Internet connectivity via HTTP header download"))
+
+hosts = s:option(DynamicList, "hosts", translate("List of host addresses"), translate("List of host addresses (url or IP) to track and request http headers from"))
+hosts.datatype = "string"
+
+interval = s:option(Value, "interval", translate("Test-run interval"), translate("Time interval in seconds to re-start a new test run"))
+interval.datatype = "uinteger"
+interval.default = "30"
+
+offline_treshold = s:option(Value, "offline_threshold", translate("Switch_to_offline threshold"), translate("Failure counter after how many failed download attempts, the state is considered as offline"))
+offline_treshold.datatype = "uinteger"
+offline_treshold.default = "1"
+
+add_hostname_to_ssid = s:option(Flag, "add_hostname_to_ssid", translate("Append hostname to ssid"), translate("Append the router's hostname to the SSID when connectivity check fails"))
+add_hostname_to_ssid.rmempty = false
+
+
+if (a.installed("curl") == true) then
+ use_curl = s:option(Flag, "use_curl", translate("Use curl"), translate("Use curl instead of wget for testing the connectivity."))
+ use_curl.rmempty = false
+
+ curl_interface = s:option(Value, "curl_interface", translate("Used interface"), translate("Which interface should curl use. (Use ifconfig to find out)"))
+ curl_interface.datatype = "string"
+ curl_interface:depends("use_curl","1")
+ curl_interface.placeholder = "eth0"
+else
+ use_curl = s:option(Flag, "use_curl", translate("Use curl instead of wget"), translate("Curl is currently not installed.")
+ .." Please install the package in the "
+ ..[[<a href="]] .. DISP.build_url("admin", "system", "packages")
+ .. "?display=available&query=curl"..[[">]]
+ .. "Software Section" .. [[</a>]]
+ .. "."
+ )
+ use_curl.rmempty = false
+ use_curl.template = "dynapoint/cbi_checkbox"
+end
+
+m1 = Map("wireless", "DynaPoint", translate("Dynamic Access Point Manager"))
+
+aps = m1:section(TypedSection, "wifi-iface", translate("List of Wireless Virtual Interfaces (wVIF)"))
+aps.addremove = false
+aps.anonymous = true
+aps.template = "cbi/tblsection"
+
+status = aps:option(DummyValue, "disabled", translate("WiFi Status"))
+status.template = "dynapoint/cbi_color"
+
+function status.cfgvalue(self,section)
+ local val = m1:get(section, "disabled")
+ if val == "1" then return translate("Disabled") end
+ if (val == nil or val == "0") then return translate("Enabled") end
+ return val
+end
+
+device = aps:option(DummyValue, "device", translate("Device"))
+function device.cfgvalue(self,section)
+ local dev = m1:get(section, "device")
+ local val = m1:get(dev, "hwmode")
+ if val == "11a" then return dev .. " (5 GHz)" else
+ return dev .. " (2,4 GHz)"
+ end
+ return val
+end
+
+
+
+
+
+mode = aps:option(DummyValue, "mode", translate("Mode"))
+
+ssid = aps:option(DummyValue, "ssid", translate("SSID"))
+
+
+action = aps:option(ListValue, "dynapoint_rule", translate("Activate this wVIF if status is:"))
+action.widget="select"
+action:value("internet",translate("Online"))
+action:value("!internet",translate("Offline"))
+action:value("",translate("Not used by DynaPoint"))
+action.default = ""
+
+return m1,m
+
diff --git a/applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_checkbox.htm b/applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_checkbox.htm
new file mode 100644
index 000000000..5f8bcd5ee
--- /dev/null
+++ b/applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_checkbox.htm
@@ -0,0 +1,6 @@
+<%+cbi/valueheader%>
+
+<input class="cbi-input-checkbox" disabled data-update="click change" type="checkbox" id="cbid.dynapoint.internet.use_curl" name="cbid.dynapoint.internet.use_curl" value="1" />
+
+
+<%+cbi/valuefooter%>
diff --git a/applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_color.htm b/applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_color.htm
new file mode 100644
index 000000000..bfc710e23
--- /dev/null
+++ b/applications/luci-app-dynapoint/luasrc/view/dynapoint/cbi_color.htm
@@ -0,0 +1,18 @@
+<%+cbi/valueheader%>
+
+
+<%
+if (self:cfgvalue(section) == translate("Disabled")) then
+%>
+
+<span id="<%=cbid%>.disabled" style="background-color:red;"><%=self:cfgvalue(section)%></span>
+
+<%
+else
+%>
+<span id="<%=cbid%>.disabled" style="background-color:lime;"><%=self:cfgvalue(section)%></span>
+<%
+end
+%>
+
+<%+cbi/valuefooter%>
diff --git a/applications/luci-app-dynapoint/po/de/dynapoint.po b/applications/luci-app-dynapoint/po/de/dynapoint.po
new file mode 100644
index 000000000..e2507e493
--- /dev/null
+++ b/applications/luci-app-dynapoint/po/de/dynapoint.po
@@ -0,0 +1,106 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2016-08-31 15:51+0200\n"
+"Language-Team: German\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Activate this wVIF if status is:"
+msgstr "Aktiviere diese drahtlose Schnittstelle wenn:"
+
+msgid "Append hostname to ssid"
+msgstr "Anfügen des hostname zur SSID"
+
+msgid "Append the router's hostname to the SSID when connectivity check fails"
+msgstr ""
+"Fügt den hostname des routers zur SSID an, wenn die Verbindungsüberprüfung "
+"fehl schlägt"
+
+msgid "Check Internet connectivity via HTTP header download"
+msgstr "Testen der Internetverfügbarkeit via HTTP header download"
+
+msgid "Configuration"
+msgstr "Konfiguration"
+
+msgid "Curl is currently not installed."
+msgstr "Curl ist momentan nicht installiert."
+
+msgid "Device"
+msgstr "Gerät"
+
+msgid "Disabled"
+msgstr "Deaktiviert"
+
+msgid "DynaPoint"
+msgstr ""
+
+msgid "Dynamic Access Point Manager"
+msgstr ""
+
+msgid "Enabled"
+msgstr "Aktiviert"
+
+msgid ""
+"Failure counter after how many failed download attempts, the state is "
+"considered as offline"
+msgstr ""
+"Anzahl der fehlgeschlagenen Downloadversuche, nach denen die Verbindung als offline angesehen wird"
+
+msgid "List of Wireless Virtual Interfaces (wVIF)"
+msgstr "Liste der Drahtlosen virtuellen Schnittstellen"
+
+msgid "List of host addresses"
+msgstr "Liste der Zieladressen"
+
+msgid ""
+"List of host addresses (url or IP) to track and request http headers from"
+msgstr "Liste der Zieladressen (URL oder IP) für den HTTP header download"
+
+msgid "Mode"
+msgstr "Modus"
+
+msgid "Not used by DynaPoint"
+msgstr "Nicht von DynaPoint benutzt"
+
+msgid "Offline"
+msgstr "Offline"
+
+msgid "Online"
+msgstr "Online"
+
+msgid "SSID"
+msgstr ""
+
+msgid "Switch_to_offline threshold"
+msgstr "Offline-Schwelle"
+
+msgid "Test-run interval"
+msgstr "Testlaufintervall"
+
+msgid "Time interval in seconds to re-start a new test run"
+msgstr "Zeitintervall in Sekunden für einen Testlauf"
+
+msgid "Use curl"
+msgstr "Curl benutzen"
+
+msgid "Use curl instead of wget"
+msgstr "Curl anstatt wget benutzen"
+
+msgid "Use curl instead of wget for testing the connectivity."
+msgstr "Curl anstatt wget benutzen, um die Internetverbindung zu überprüfen."
+
+msgid "Used interface"
+msgstr "Benutztes interface"
+
+msgid "Which interface should curl use. (Use ifconfig to find out)"
+msgstr ""
+"Welches Interface von curl benutzt werden soll. (ifconfig benutzen, um das "
+"herauszufinden"
+
+msgid "WiFi Status"
+msgstr ""
+
diff --git a/applications/luci-app-dynapoint/po/ja/dynapoint.po b/applications/luci-app-dynapoint/po/ja/dynapoint.po
new file mode 100644
index 000000000..75031985f
--- /dev/null
+++ b/applications/luci-app-dynapoint/po/ja/dynapoint.po
@@ -0,0 +1,108 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: ja\n"
+
+msgid "Activate this wVIF if status is:"
+msgstr "wVIFを有効化ã™ã‚‹æŽ¥ç¶šã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹:"
+
+msgid "Append hostname to ssid"
+msgstr "ホストåã‚’SSIDã«è¿½åŠ ã™ã‚‹"
+
+msgid "Append the router's hostname to the SSID when connectivity check fails"
+msgstr "接続性ã®ãƒã‚§ãƒƒã‚¯ãŒå¤±æ•—ã—ãŸå ´åˆã€ãƒ«ãƒ¼ã‚¿ãƒ¼ã®ãƒ›ã‚¹ãƒˆåã‚’SSIDã«è¿½åŠ ã—ã¾ã™ã€‚"
+
+msgid "Check Internet connectivity via HTTP header download"
+msgstr ""
+"HTTP ヘッダーã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã‚’通ã—ã¦ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆã®æŽ¥ç¶šæ€§ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚"
+
+msgid "Configuration"
+msgstr "設定"
+
+msgid "Curl is currently not installed."
+msgstr "curl ã¯ç¾åœ¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
+
+msgid "Device"
+msgstr "デãƒã‚¤ã‚¹"
+
+msgid "Disabled"
+msgstr "無効"
+
+msgid "DynaPoint"
+msgstr "DynaPoint"
+
+msgid "Dynamic Access Point Manager"
+msgstr "ダイナミック アクセスãƒã‚¤ãƒ³ãƒˆ マãƒãƒ¼ã‚¸ãƒ£ãƒ¼"
+
+msgid "Enabled"
+msgstr "有効"
+
+msgid ""
+"Failure counter after how many failed download attempts, the state is "
+"considered as offline"
+msgstr "状態をオフラインã¨è¦‹ãªã™ã¾ã§ã®ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰è©¦è¡Œã®å¤±æ•—回数ã§ã™ã€‚"
+
+msgid "List of Wireless Virtual Interfaces (wVIF)"
+msgstr "無線仮想インターフェース (wVIF) ã®ãƒªã‚¹ãƒˆ"
+
+msgid "List of host addresses"
+msgstr "ホストアドレスã®ãƒªã‚¹ãƒˆ"
+
+msgid ""
+"List of host addresses (url or IP) to track and request http headers from"
+msgstr ""
+"HTTP ヘッダーã®è¿½è·¡ãŠã‚ˆã³ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’è¡Œã†ã€ãƒ›ã‚¹ãƒˆ アドレス(URLã¾ãŸã¯IP)ã®ãƒª"
+"ストã§ã™ã€‚"
+
+msgid "Mode"
+msgstr "モード"
+
+msgid "Not used by DynaPoint"
+msgstr "DynaPointã§ä½¿ç”¨ã—ãªã„"
+
+msgid "Offline"
+msgstr "オフライン"
+
+msgid "Online"
+msgstr "オンライン"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid "Switch_to_offline threshold"
+msgstr "オフライン化閾値"
+
+msgid "Test-run interval"
+msgstr "テスト実行間隔"
+
+msgid "Time interval in seconds to re-start a new test run"
+msgstr "接続性テストをå†å®Ÿè¡Œã™ã‚‹ã¾ã§ã®æ™‚間間隔(秒)ã§ã™ã€‚"
+
+msgid "Use curl"
+msgstr "curl を使用ã™ã‚‹"
+
+msgid "Use curl instead of wget"
+msgstr "wget ã®ä»£ã‚ã‚Šã« curl を使用ã™ã‚‹"
+
+msgid "Use curl instead of wget for testing the connectivity."
+msgstr "接続性ã®ãƒ†ã‚¹ãƒˆã®éš›ã€wget ã®ä»£ã‚ã‚Šã« curl を使用ã—ã¾ã™ã€‚"
+
+msgid "Used interface"
+msgstr "使用ã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
+
+msgid "Which interface should curl use. (Use ifconfig to find out)"
+msgstr ""
+"curl ãŒä½¿ç”¨ã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚ifconfigを使用ã—ã¦ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹åを確"
+"èªã—ã¾ã™ã€‚"
+
+msgid "WiFi Status"
+msgstr "無線ステータス"
diff --git a/applications/luci-app-dynapoint/po/pt-br/dynapoint.po b/applications/luci-app-dynapoint/po/pt-br/dynapoint.po
new file mode 100644
index 000000000..59b02629a
--- /dev/null
+++ b/applications/luci-app-dynapoint/po/pt-br/dynapoint.po
@@ -0,0 +1,107 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "Activate this wVIF if status is:"
+msgstr "Aivar este wVIF se o estado for:"
+
+msgid "Append hostname to ssid"
+msgstr "Sufixar o nome do equipamento ao SSID"
+
+msgid "Append the router's hostname to the SSID when connectivity check fails"
+msgstr ""
+"Sufixar o nome do roteador ao SSID quando a verificação da conectividade "
+"falhar"
+
+msgid "Check Internet connectivity via HTTP header download"
+msgstr "Cerifique a conectividade com a internet baixando o cabeçalho HTTP "
+
+msgid "Configuration"
+msgstr "Configuração"
+
+msgid "Curl is currently not installed."
+msgstr "O cURL não está instalado."
+
+msgid "Device"
+msgstr "Dispositivo"
+
+msgid "Disabled"
+msgstr "Desabilitado"
+
+msgid "DynaPoint"
+msgstr "DynaPoint"
+
+msgid "Dynamic Access Point Manager"
+msgstr "Gerenciamento do Ponto de Acesso Dinâmico"
+
+msgid "Enabled"
+msgstr "Habilitado"
+
+msgid ""
+"Failure counter after how many failed download attempts, the state is "
+"considered as offline"
+msgstr "Numero de falhar para considerar como inalcançável"
+
+msgid "List of Wireless Virtual Interfaces (wVIF)"
+msgstr "Lista de Interfaces Virtuais Wireless (wVIF)"
+
+msgid "List of host addresses"
+msgstr "Lista de endereços dos equipamentos"
+
+msgid ""
+"List of host addresses (url or IP) to track and request http headers from"
+msgstr ""
+"Lista de endereços dos equipamentos (URL ou endereço IP) para requisitar "
+"cabeçalhos HTTP"
+
+msgid "Mode"
+msgstr "Modo"
+
+msgid "Not used by DynaPoint"
+msgstr "Não usado pelo DynaPoint"
+
+msgid "Offline"
+msgstr "Desconectado"
+
+msgid "Online"
+msgstr "Conectado"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid "Switch_to_offline threshold"
+msgstr "Limiar para mudar para desconectado"
+
+msgid "Test-run interval"
+msgstr "Intervalo para execução do teste"
+
+msgid "Time interval in seconds to re-start a new test run"
+msgstr "Intervalo, em segundos, para reiniciar um nova execução do teste"
+
+msgid "Use curl"
+msgstr "Usar cURL"
+
+msgid "Use curl instead of wget"
+msgstr "Usar cURL ao invés do wget"
+
+msgid "Use curl instead of wget for testing the connectivity."
+msgstr "Usar cURL ao invés do wget para testar a conectividade."
+
+msgid "Used interface"
+msgstr "Dispositivos usadas"
+
+msgid "Which interface should curl use. (Use ifconfig to find out)"
+msgstr "Qual dispositivo o cURL deve usar. (Use ifconfig para listá-las)"
+
+msgid "WiFi Status"
+msgstr "Estado da WiFi"
diff --git a/applications/luci-app-dynapoint/po/templates/dynapoint.pot b/applications/luci-app-dynapoint/po/templates/dynapoint.pot
new file mode 100644
index 000000000..f352425be
--- /dev/null
+++ b/applications/luci-app-dynapoint/po/templates/dynapoint.pot
@@ -0,0 +1,92 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "Activate this wVIF if status is:"
+msgstr ""
+
+msgid "Append hostname to ssid"
+msgstr ""
+
+msgid "Append the router's hostname to the SSID when connectivity check fails"
+msgstr ""
+
+msgid "Check Internet connectivity via HTTP header download"
+msgstr ""
+
+msgid "Configuration"
+msgstr ""
+
+msgid "Curl is currently not installed."
+msgstr ""
+
+msgid "Device"
+msgstr ""
+
+msgid "Disabled"
+msgstr ""
+
+msgid "DynaPoint"
+msgstr ""
+
+msgid "Dynamic Access Point Manager"
+msgstr ""
+
+msgid "Enabled"
+msgstr ""
+
+msgid ""
+"Failure counter after how many failed download attempts, the state is "
+"considered as offline"
+msgstr ""
+
+msgid "List of Wireless Virtual Interfaces (wVIF)"
+msgstr ""
+
+msgid "List of host addresses"
+msgstr ""
+
+msgid ""
+"List of host addresses (url or IP) to track and request http headers from"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Not used by DynaPoint"
+msgstr ""
+
+msgid "Offline"
+msgstr ""
+
+msgid "Online"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid "Switch_to_offline threshold"
+msgstr ""
+
+msgid "Test-run interval"
+msgstr ""
+
+msgid "Time interval in seconds to re-start a new test run"
+msgstr ""
+
+msgid "Use curl"
+msgstr ""
+
+msgid "Use curl instead of wget"
+msgstr ""
+
+msgid "Use curl instead of wget for testing the connectivity."
+msgstr ""
+
+msgid "Used interface"
+msgstr ""
+
+msgid "Which interface should curl use. (Use ifconfig to find out)"
+msgstr ""
+
+msgid "WiFi Status"
+msgstr ""
diff --git a/applications/luci-app-dynapoint/root/etc/uci-defaults/40_luci-dynapoint b/applications/luci-app-dynapoint/root/etc/uci-defaults/40_luci-dynapoint
new file mode 100644
index 000000000..7287ccd42
--- /dev/null
+++ b/applications/luci-app-dynapoint/root/etc/uci-defaults/40_luci-dynapoint
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+# needed for "Save and Apply" to restart dynapoint
+uci -q batch <<-EOF >/dev/null
+ delete ucitrack.@dynapoint[-1]
+ add ucitrack dynapoint
+ set ucitrack.@dynapoint[-1].init="dynapoint"
+ commit dynapoint
+EOF
+
+rm -f /tmp/luci-indexcache
+exit 0
+
diff --git a/applications/luci-app-e2guardian/Makefile b/applications/luci-app-e2guardian/Makefile
new file mode 100644
index 000000000..c3ac02988
--- /dev/null
+++ b/applications/luci-app-e2guardian/Makefile
@@ -0,0 +1,18 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=E2Guardian LuCI Interface
+LUCI_DEPENDS:=+luci-mod-admin-full +e2guardian
+
+PKG_MAINTAINER:=Marko Ratkaj <marko.ratkaj@sartura.hr>
+PKG_LICENSE:=Apache-2.0
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-e2guardian/luasrc/controller/e2guardian.lua b/applications/luci-app-e2guardian/luasrc/controller/e2guardian.lua
new file mode 100644
index 000000000..dd545f50b
--- /dev/null
+++ b/applications/luci-app-e2guardian/luasrc/controller/e2guardian.lua
@@ -0,0 +1,22 @@
+--[[
+
+LuCI E2Guardian module
+
+Copyright (C) 2015, Itus Networks, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Marko Ratkaj <marko.ratkaj@sartura.hr>
+ Luka Perkov <luka.perkov@sartura.hr>
+
+]]--
+
+module("luci.controller.e2guardian", package.seeall)
+
+function index()
+ entry({"admin", "services", "e2guardian"}, cbi("e2guardian"), _("E2Guardian"))
+end
diff --git a/applications/luci-app-e2guardian/luasrc/model/cbi/e2guardian.lua b/applications/luci-app-e2guardian/luasrc/model/cbi/e2guardian.lua
new file mode 100644
index 000000000..b62132108
--- /dev/null
+++ b/applications/luci-app-e2guardian/luasrc/model/cbi/e2guardian.lua
@@ -0,0 +1,399 @@
+--[[
+
+LuCI E2Guardian module
+
+Copyright (C) 2015, Itus Networks, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Marko Ratkaj <marko.ratkaj@sartura.hr>
+ Luka Perkov <luka.perkov@sartura.hr>
+
+]]--
+
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
+
+m = Map("e2guardian", translate("E2Guardian"))
+m.on_after_commit = function() luci.sys.call("/etc/init.d/e2guardian restart") end
+
+s = m:section(TypedSection, "e2guardian")
+s.anonymous = true
+s.addremove = false
+
+s:tab("tab_general", translate("General Settings"))
+s:tab("tab_additional", translate("Additional Settings"))
+s:tab("tab_logs", translate("Logs"))
+
+
+----------------- General Settings Tab -----------------------
+
+filterip = s:taboption("tab_general", Value, "filterip", translate("IP that E2Guardian listens"))
+filterip.datatype = "ip4addr"
+
+filterports = s:taboption("tab_general", Value, "filterports", translate("Port that E2Guardian listens"))
+filterports.datatype = "portrange"
+filterports.placeholder = "0-65535"
+
+proxyip = s:taboption("tab_general", Value, "proxyip", translate("IP address of the proxy"))
+proxyip.datatype = "ip4addr"
+proxyip.default = "127.0.0.1"
+
+proxyport = s:taboption("tab_general", Value, "proxyport", translate("Port of the proxy"))
+proxyport.datatype = "portrange"
+proxyport.placeholder = "0-65535"
+
+languagedir = s:taboption("tab_general", Value, "languagedir", translate("Language dir"))
+languagedir.datatype = "string"
+languagedir.default = "/usr/share/e2guardian/languages"
+
+language = s:taboption("tab_general", Value, "language", translate("Language to use"))
+language.datatype = "string"
+language.default = "ukenglish"
+
+loglevel = s:taboption("tab_general", ListValue, "loglevel", translate("Logging Settings"))
+loglevel:value("0", translate("none"))
+loglevel:value("1", translate("just denied"))
+loglevel:value("2", translate("all text based"))
+loglevel:value("3", translate("all requests"))
+loglevel.default = "2"
+
+logexceptionhits = s:taboption("tab_general", ListValue, "logexceptionhits", translate("Log Exception Hits"))
+logexceptionhits:value("0", translate("never"))
+logexceptionhits:value("1", translate("log, but don't mark as exceptions"))
+logexceptionhits:value("2", translate("log and mark"))
+logexceptionhits.default = "2"
+
+logfileformat = s:taboption("tab_general", ListValue, "logfileformat", translate("Log File Format"))
+logfileformat:value("1", translate("DansgGuardian format, space delimited"))
+logfileformat:value("2", translate("CSV-style format"))
+logfileformat:value("3", translate("Squid Log File Format"))
+logfileformat:value("4", translate("Tab delimited"))
+logfileformat:value("5", translate("Protex format"))
+logfileformat:value("6", translate("Protex format with server field blanked"))
+logfileformat.default = "1"
+
+accessdeniedaddress = s:taboption("tab_general", Value, "accessdeniedaddress", translate("Access denied address"),
+translate("Server to which the cgi e2guardian reporting script was copied. Reporting levels 1 and 2 only"))
+accessdeniedaddress.datatype = "string"
+accessdeniedaddress.default = "http://YOURSERVER.YOURDOMAIN/cgi-bin/e2guardian.pl"
+
+usecustombannedimage = s:taboption("tab_general", ListValue, "usecustombannedimage", translate("Banned image replacement"))
+usecustombannedimage:value("on", translate("Yes"))
+usecustombannedimage:value("off", translate("No"))
+usecustombannedimage.default = "on"
+
+custombannedimagefile = s:taboption("tab_general", Value, "custombannedimagefile", translate("Custom banned image file"))
+custombannedimagefile.datatype = "string"
+custombannedimagefile.default = "/usr/share/e2guardian/transparent1x1.gif"
+
+usecustombannedflash = s:taboption("tab_general", ListValue, "usecustombannedflash", translate("Banned flash replacement"))
+usecustombannedflash:value("on", translate("Yes"))
+usecustombannedflash:value("off", translate("No"))
+usecustombannedflash.default = "on"
+
+custombannedflashfile = s:taboption("tab_general", Value, "custombannedflashfile", translate("Custom banned flash file"))
+custombannedflashfile.datatype = "string"
+custombannedflashfile.default = "/usr/share/e2guardian/blockedflash.swf"
+
+filtergroups = s:taboption("tab_general", Value, "filtergroups", translate("Number of filter groups"))
+filtergroups.datatype = "and(uinteger,min(1))"
+filtergroups.default = "1"
+
+filtergroupslist = s:taboption("tab_general", Value, "filtergroupslist", translate("List of filter groups"))
+filtergroupslist.datatype = "string"
+filtergroupslist.default = "/etc/e2guardian/lists/filtergroupslist"
+
+bannediplist = s:taboption("tab_general", Value, "bannediplist", translate("List of banned IPs"))
+bannediplist.datatype = "string"
+bannediplist.default = "/etc/e2guardian/lists/bannediplist"
+
+exceptioniplist = s:taboption("tab_general", Value, "exceptioniplist", translate("List of IP exceptions"))
+exceptioniplist.datatype = "string"
+exceptioniplist.default = "/etc/e2guardian/lists/exceptioniplist"
+
+perroomblockingdirectory = s:taboption("tab_general", Value, "perroomblockingdirectory", translate("Per-Room blocking definition directory"))
+perroomblockingdirectory.datatype = "string"
+perroomblockingdirectory.default = "/etc/e2guardian/lists/bannedrooms/"
+
+showweightedfound = s:taboption("tab_general", ListValue, "showweightedfound", translate("Show weighted phrases found"))
+showweightedfound:value("on", translate("Yes"))
+showweightedfound:value("off", translate("No"))
+showweightedfound.default = "on"
+
+weightedphrasemode = s:taboption("tab_general", ListValue, "weightedphrasemode", translate("Weighted phrase mode"))
+weightedphrasemode:value("0", translate("off"))
+weightedphrasemode:value("1", translate("on, normal operation"))
+weightedphrasemode:value("2", translate("on, phrase found only counts once on a page"))
+weightedphrasemode.default = "2"
+
+urlcachenumber = s:taboption("tab_general", Value, "urlcachenumber", translate("Clean result caching for URLs"))
+urlcachenumber.datatype = "and(uinteger,min(0))"
+urlcachenumber.default = "1000"
+
+urlcacheage = s:taboption("tab_general", Value, "urlcacheage", translate("Age before they should be ignored in seconds"))
+urlcacheage.datatype = "and(uinteger,min(0))"
+urlcacheage.default = "900"
+
+scancleancache = s:taboption("tab_general", ListValue, "scancleancache", translate("Cache for content (AV) scans as 'clean'"))
+scancleancache:value("on", translate("Yes"))
+scancleancache:value("off", translate("No"))
+scancleancache.default = "on"
+
+phrasefiltermode = s:taboption("tab_general", ListValue, "phrasefiltermode", translate("Filtering options"))
+phrasefiltermode:value("0", translate("raw"))
+phrasefiltermode:value("1", translate("smart"))
+phrasefiltermode:value("2", translate("both raw and smart"))
+phrasefiltermode:value("3", translate("meta/title"))
+phrasefiltermode.default = "2"
+
+preservecase = s:taboption("tab_general", ListValue, "perservecase", translate("Lower caseing options"))
+preservecase:value("0", translate("force lower case"))
+preservecase:value("1", translate("don't change"))
+preservecase:value("2", translate("scan fist in lower, then in original"))
+preservecase.default = "0"
+
+hexdecodecontent = s:taboption("tab_general", ListValue, "hexdecodecontent", translate("Hex decoding options"))
+hexdecodecontent:value("on", translate("Yes"))
+hexdecodecontent:value("off", translate("No"))
+hexdecodecontent.default = "off"
+
+forcequicksearch = s:taboption("tab_general", ListValue, "forcequicksearch", translate("Quick search"))
+forcequicksearch:value("on", translate("Yes"))
+forcequicksearch:value("off", translate("No"))
+forcequicksearch.default = "off"
+
+reverseaddresslookups= s:taboption("tab_general", ListValue, "reverseaddresslookups", translate("Reverse lookups for banned site and URLs"))
+reverseaddresslookups:value("on", translate("Yes"))
+reverseaddresslookups:value("off", translate("No"))
+reverseaddresslookups.default = "off"
+
+reverseclientiplookups = s:taboption("tab_general", ListValue, "reverseclientiplookups", translate("Reverse lookups for banned and exception IP lists"))
+reverseclientiplookups:value("on", translate("Yes"))
+reverseclientiplookups:value("off", translate("No"))
+reverseclientiplookups.default = "off"
+
+logclienthostnames = s:taboption("tab_general", ListValue, "logclienthostnames", translate("Perform reverse lookups on client IPs for successful requests"))
+logclienthostnames:value("on", translate("Yes"))
+logclienthostnames:value("off", translate("No"))
+logclienthostnames.default = "off"
+
+createlistcachefiles = s:taboption("tab_general", ListValue, "createlistcachefiles", translate("Build bannedsitelist and bannedurllist cache files"))
+createlistcachefiles:value("on",translate("Yes"))
+createlistcachefiles:value("off",translate("No"))
+createlistcachefiles.default = "on"
+
+prefercachedlists = s:taboption("tab_general", ListValue, "prefercachedlists", translate("Prefer cached list files"))
+prefercachedlists:value("on", translate("Yes"))
+prefercachedlists:value("off", translate("No"))
+prefercachedlists.default = "off"
+
+maxuploadsize = s:taboption("tab_general", Value, "maxuploadsize", translate("Max upload size (in Kbytes)"))
+maxuploadsize:value("-1", translate("no blocking"))
+maxuploadsize:value("0", translate("complete block"))
+maxuploadsize.default = "-1"
+
+maxcontentfiltersize = s:taboption("tab_general", Value, "maxcontentfiltersize", translate("Max content filter size"),
+translate("The value must not be higher than max content ram cache scan size or 0 to match it"))
+maxcontentfiltersize.datatype = "and(uinteger,min(0))"
+maxcontentfiltersize.default = "256"
+
+maxcontentramcachescansize = s:taboption("tab_general", Value, "maxcontentramcachescansize", translate("Max content ram cache scan size"),
+translate("This is the max size of file that DG will download and cache in RAM"))
+maxcontentramcachescansize.datatype = "and(uinteger,min(0))"
+maxcontentramcachescansize.default = "2000"
+
+maxcontentfilecachescansize = s:taboption("tab_general", Value, "maxcontentfilecachescansize", translate("Max content file cache scan size"))
+maxcontentfilecachescansize.datatype = "and(uinteger,min(0))"
+maxcontentfilecachescansize.default = "20000"
+
+proxytimeout = s:taboption("tab_general", Value, "proxytimeout", translate("Proxy timeout (5-100)"))
+proxytimeout.datatype = "range(5,100)"
+proxytimeout.default = "20"
+
+proxyexchange = s:taboption("tab_general", Value, "proxyexchange", translate("Proxy header excahnge (20-300)"))
+proxyexchange.datatype = "range(20,300)"
+proxyexchange.default = "20"
+
+pcontimeout = s:taboption("tab_general", Value, "pcontimeout", translate("Pconn timeout"),
+translate("How long a persistent connection will wait for other requests"))
+pcontimeout.datatype = "range(5,300)"
+pcontimeout.default = "55"
+
+filecachedir = s:taboption("tab_general", Value, "filecachedir", translate("File cache directory"))
+filecachedir.datatype = "string"
+filecachedir.default = "/tmp"
+
+deletedownloadedtempfiles = s:taboption("tab_general", ListValue, "deletedownloadedtempfiles", translate("Delete file cache after user completes download"))
+deletedownloadedtempfiles:value("on", translate("Yes"))
+deletedownloadedtempfiles:value("off", translate("No"))
+deletedownloadedtempfiles.default = "on"
+
+initialtrickledelay = s:taboption("tab_general", Value, "initialtrickledelay", translate("Initial Trickle delay"),
+translate("Number of seconds a browser connection is left waiting before first being sent *something* to keep it alive"))
+initialtrickledelay.datatype = "and(uinteger,min(0))"
+initialtrickledelay.default = "20"
+
+trickledelay = s:taboption("tab_general", Value, "trickledelay", translate("Trickle delay"),
+translate("Number of seconds a browser connection is left waiting before being sent more *something* to keep it alive"))
+trickledelay.datatype = "and(uinteger,min(0))"
+trickledelay.default = "10"
+
+downloadmanager = s:taboption("tab_general", Value, "downloadmanager", translate("Download manager"))
+downloadmanager.datatype = "string"
+downloadmanager.default = "/etc/e2guardian/downloadmanagers/default.conf"
+
+contentscannertimeout = s:taboption("tab_general", Value, "contentscannertimeout", translate("Content scanner timeout"))
+contentscannertimeout.datatype = "and(uinteger,min(0))"
+contentscannertimeout.default = "60"
+
+contentscanexceptions = s:taboption("tab_general", ListValue, "contentscanexceptions", translate("Content scan exceptions"))
+contentscanexceptions:value("on", translate("Yes"))
+contentscanexceptions:value("off", translate("No"))
+contentscanexceptions.default = "off"
+
+recheckreplacedurls = s:taboption("tab_general", ListValue, "recheckreplacedurls", translate("e-check replaced URLs"))
+recheckreplacedurls:value("on", translate("Yes"))
+recheckreplacedurls:value("off", translate("No"))
+recheckreplacedurls.default = "off"
+
+forwardedfor = s:taboption("tab_general", ListValue, "forwardedfor", translate("Misc setting: forwardedfor"),
+translate("If on, it may help solve some problem sites that need to know the source ip."))
+forwardedfor:value("on", translate("Yes"))
+forwardedfor:value("off", translate("No"))
+forwardedfor.default = "off"
+
+usexforwardedfor = s:taboption("tab_general", ListValue, "usexforwardedfor", translate("Misc setting: usexforwardedfor"),
+translate("This is for when you have squid between the clients and E2Guardian"))
+usexforwardedfor:value("on", translate("Yes"))
+usexforwardedfor:value("off", translate("No"))
+usexforwardedfor.default = "off"
+
+logconnectionhandlingerrors = s:taboption("tab_general", ListValue, "logconnectionhandlingerrors", translate("Log debug info about log()ing and accept()ing"))
+logconnectionhandlingerrors:value("on", translate("Yes"))
+logconnectionhandlingerrors:value("off", translate("No"))
+logconnectionhandlingerrors.default = "on"
+
+logchildprocesshandling = s:taboption("tab_general", ListValue, "logchildprocesshandling", translate("Log child process handling"))
+logchildprocesshandling:value("on", translate("Yes"))
+logchildprocesshandling:value("off", translate("No"))
+logchildprocesshandling.default = "off"
+
+maxchildren = s:taboption("tab_general", Value, "maxchildren", translate("Max number of processes to spawn"))
+maxchildren.datatype = "and(uinteger,min(0))"
+maxchildren.default = "180"
+
+minchildren = s:taboption("tab_general", Value, "minchildren", translate("Min number of processes to spawn"))
+minchildren.datatype = "and(uinteger,min(0))"
+minchildren.default = "20"
+
+minsparechildren = s:taboption("tab_general", Value, "minsparechildren", translate("Min number of processes to keep ready"))
+minsparechildren.datatype = "and(uinteger,min(0))"
+minsparechildren.default = "16"
+
+preforkchildren = s:taboption("tab_general", Value, "preforkchildren", translate("Sets minimum nuber of processes when it runs out"))
+preforkchildren.datatype = "and(uinteger,min(0))"
+preforkchildren.default = "10"
+
+maxsparechildren = s:taboption("tab_general", Value, "maxsparechildren", translate("Sets the maximum number of processes to have doing nothing"))
+maxsparechildren.datatype = "and(uinteger,min(0))"
+maxsparechildren.default = "32"
+
+maxagechildren = s:taboption("tab_general", Value, "maxagechildren", translate("Max age of child process"))
+maxagechildren.datatype = "and(uinteger,min(0))"
+maxagechildren.default = "500"
+
+maxips = s:taboption("tab_general", Value, "maxips", translate("Max number of clinets allowed to connect"))
+maxips:value("0", translate("no limit"))
+maxips.default = "0"
+
+ipipcfilename = s:taboption("tab_general", Value, "ipipcfilename", translate("IP list IPC server directory and filename"))
+ipipcfilename.datatype = "string"
+ipipcfilename.default = "/tmp/.dguardianipc"
+
+urlipcfilename = s:taboption("tab_general", Value, "urlipcfilename", translate("Defines URL list IPC server directory and filename used to communicate with the URL cache process"))
+urlipcfilename.datatype = "string"
+urlipcfilename.default = "/tmp/.dguardianurlipc"
+
+ipcfilename = s:taboption("tab_general", Value, "ipcfilename", translate("Defines URL list IPC server directory and filename used to communicate with the URL cache process"))
+ipcfilename.datatype = "string"
+ipcfilename.default = "/tmp/.dguardianipipc"
+
+nodeamon = s:taboption("tab_general", ListValue, "nodeamon", translate("Disable deamoning"))
+nodeamon:value("on", translate("Yes"))
+nodeamon:value("off", translate("No"))
+nodeamon.default = "off"
+
+nologger = s:taboption("tab_general", ListValue, "nologger", translate("Disable logger"))
+nologger:value("on", translate("Yes"))
+nologger:value("off", translate("No"))
+nologger.default = "off"
+
+logadblock = s:taboption("tab_general", ListValue, "logadblock", translate("Enable logging of ADs"))
+logadblock:value("on", translate("Yes"))
+logadblock:value("off", translate("No"))
+logadblock.default = "off"
+
+loguseragent = s:taboption("tab_general", ListValue, "loguseragent", translate("Enable logging of client user agent"))
+loguseragent:value("on", translate("Yes"))
+loguseragent:value("off", translate("No"))
+loguseragent.default = "off"
+
+softrestart = s:taboption("tab_general", ListValue, "softrestart", translate("Enable soft restart"))
+softrestart:value("on", translate("Yes"))
+softrestart:value("off", translate("No"))
+softrestart.default = "off"
+
+
+------------------------ Additional Settings Tab ----------------------------
+
+e2guardian_config_file = s:taboption("tab_additional", TextValue, "_data", "")
+e2guardian_config_file.wrap = "off"
+e2guardian_config_file.rows = 25
+e2guardian_config_file.rmempty = false
+
+function e2guardian_config_file.cfgvalue()
+ local uci = require "luci.model.uci".cursor_state()
+ file = "/etc/e2guardian/e2guardianf1.conf"
+ if file then
+ return fs.readfile(file) or ""
+ else
+ return ""
+ end
+end
+
+function e2guardian_config_file.write(self, section, value)
+ if value then
+ local uci = require "luci.model.uci".cursor_state()
+ file = "/etc/e2guardian/e2guardianf1.conf"
+ fs.writefile(file, value:gsub("\r\n", "\n"))
+ end
+end
+
+
+---------------------------- Logs Tab -----------------------------
+
+e2guardian_logfile = s:taboption("tab_logs", TextValue, "lines", "")
+e2guardian_logfile.wrap = "off"
+e2guardian_logfile.rows = 25
+e2guardian_logfile.rmempty = true
+
+function e2guardian_logfile.cfgvalue()
+ local uci = require "luci.model.uci".cursor_state()
+ file = "/tmp/e2guardian/access.log"
+ if file then
+ return fs.readfile(file) or ""
+ else
+ return "Can't read log file"
+ end
+end
+
+function e2guardian_logfile.write()
+ return ""
+end
+
+return m
diff --git a/applications/luci-app-firewall/luasrc/model/cbi/firewall/custom.lua b/applications/luci-app-firewall/luasrc/model/cbi/firewall/custom.lua
index 968ac3624..2b3cee328 100644
--- a/applications/luci-app-firewall/luasrc/model/cbi/firewall/custom.lua
+++ b/applications/luci-app-firewall/luasrc/model/cbi/firewall/custom.lua
@@ -22,6 +22,10 @@ end
function o.write(self, section, value)
value = value:gsub("\r\n?", "\n")
fs.writefile("/etc/firewall.user", value)
+ require("luci.sys").call("/etc/init.d/firewall restart >/dev/null 2<&1")
+ require("nixio").syslog('info', 'Restarting firewall on custom /etc/firewall.user change')
end
+f.submit = translate("Restart Firewall")
+
return f
diff --git a/applications/luci-app-firewall/luasrc/model/cbi/firewall/forward-details.lua b/applications/luci-app-firewall/luasrc/model/cbi/firewall/forward-details.lua
index 22f1c7716..17a49483d 100644
--- a/applications/luci-app-firewall/luasrc/model/cbi/firewall/forward-details.lua
+++ b/applications/luci-app-firewall/luasrc/model/cbi/firewall/forward-details.lua
@@ -73,7 +73,7 @@ o = s:option(Value, "src_ip",
translate("Source IP address"),
translate("Only match incoming traffic from this IP or range."))
o.rmempty = true
-o.datatype = "neg(ip4addr)"
+o.datatype = "neg(ipmask4)"
o.placeholder = translate("any")
luci.sys.net.ipv4_hints(function(ip, name)
@@ -99,7 +99,7 @@ end)
o.rmempty = true
-o.datatype = "neg(ip4addr)"
+o.datatype = "neg(ipmask4)"
o.placeholder = translate("any")
@@ -119,7 +119,7 @@ o.template = "cbi/firewall_zonelist"
o = s:option(Value, "dest_ip", translate("Internal IP address"),
translate("Redirect matched incoming traffic to the specified \
internal host"))
-o.datatype = "ip4addr"
+o.datatype = "ipmask4"
luci.sys.net.ipv4_hints(function(ip, name)
o:value(ip, "%s (%s)" %{ ip, name })
diff --git a/applications/luci-app-firewall/luasrc/model/cbi/firewall/rule-details.lua b/applications/luci-app-firewall/luasrc/model/cbi/firewall/rule-details.lua
index 97e93ae05..1c838888f 100644
--- a/applications/luci-app-firewall/luasrc/model/cbi/firewall/rule-details.lua
+++ b/applications/luci-app-firewall/luasrc/model/cbi/firewall/rule-details.lua
@@ -99,7 +99,7 @@ elseif rule_type == "redirect" then
o = s:option(Value, "src_ip", translate("Source IP address"))
o.rmempty = true
- o.datatype = "neg(ipaddr)"
+ o.datatype = "neg(ipmask4)"
o.placeholder = translate("any")
luci.sys.net.ipv4_hints(function(ip, name)
@@ -123,7 +123,7 @@ elseif rule_type == "redirect" then
o = s:option(Value, "dest_ip", translate("Destination IP address"))
- o.datatype = "neg(ip4addr)"
+ o.datatype = "neg(ipmask4)"
luci.sys.net.ipv4_hints(function(ip, name)
o:value(ip, "%s (%s)" %{ ip, name })
@@ -269,7 +269,7 @@ else
o = s:option(Value, "src_ip", translate("Source address"))
- o.datatype = "neg(ipaddr)"
+ o.datatype = "neg(ipmask)"
o.placeholder = translate("any")
luci.sys.net.ipv4_hints(function(ip, name)
@@ -290,7 +290,7 @@ else
o = s:option(Value, "dest_ip", translate("Destination address"))
- o.datatype = "neg(ipaddr)"
+ o.datatype = "neg(ipmask)"
o.placeholder = translate("any")
luci.sys.net.ipv4_hints(function(ip, name)
diff --git a/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua b/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua
index c8b8f22bd..500d1bf32 100644
--- a/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua
+++ b/applications/luci-app-firewall/luasrc/model/cbi/firewall/zone-details.lua
@@ -126,7 +126,7 @@ msrc = s:taboption("advanced", DynamicList, "masq_src",
translate("Restrict Masquerading to given source subnets"))
msrc.optional = true
-msrc.datatype = "list(neg(or(uciname,hostname,ip4addr)))"
+msrc.datatype = "list(neg(or(uciname,hostname,ipmask4)))"
msrc.placeholder = "0.0.0.0/0"
msrc:depends("family", "")
msrc:depends("family", "ipv4")
@@ -135,7 +135,7 @@ mdest = s:taboption("advanced", DynamicList, "masq_dest",
translate("Restrict Masquerading to given destination subnets"))
mdest.optional = true
-mdest.datatype = "list(neg(or(uciname,hostname,ip4addr)))"
+mdest.datatype = "list(neg(or(uciname,hostname,ipmask4)))"
mdest.placeholder = "0.0.0.0/0"
mdest:depends("family", "")
mdest:depends("family", "ipv4")
diff --git a/applications/luci-app-firewall/luasrc/model/cbi/firewall/zones.lua b/applications/luci-app-firewall/luasrc/model/cbi/firewall/zones.lua
index 694bbd872..500e5078f 100644
--- a/applications/luci-app-firewall/luasrc/model/cbi/firewall/zones.lua
+++ b/applications/luci-app-firewall/luasrc/model/cbi/firewall/zones.lua
@@ -19,7 +19,6 @@ s.addremove = false
s:option(Flag, "syn_flood", translate("Enable SYN-flood protection"))
o = s:option(Flag, "drop_invalid", translate("Drop invalid packets"))
-o.default = o.enabled
p = {
s:option(ListValue, "input", translate("Input")),
diff --git a/applications/luci-app-firewall/po/ca/firewall.po b/applications/luci-app-firewall/po/ca/firewall.po
index 5d62f0265..913fb759e 100644
--- a/applications/luci-app-firewall/po/ca/firewall.po
+++ b/applications/luci-app-firewall/po/ca/firewall.po
@@ -295,6 +295,9 @@ msgstr "Redirigeix trànsit entrant coincidit al port donat en el host intern"
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Redirigeix trànsit entrant coincidit al host intern especificat"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Restringeix la mascarada a les subxarxes de destí donades"
diff --git a/applications/luci-app-firewall/po/cs/firewall.po b/applications/luci-app-firewall/po/cs/firewall.po
index 2d4b251d3..1ab1360f5 100644
--- a/applications/luci-app-firewall/po/cs/firewall.po
+++ b/applications/luci-app-firewall/po/cs/firewall.po
@@ -292,6 +292,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Přesměrovat vybraný příchozí provoz na uvedeného vnitřního hostitele."
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Omezit maškarádování na uvedené cílové podsítě"
diff --git a/applications/luci-app-firewall/po/de/firewall.po b/applications/luci-app-firewall/po/de/firewall.po
index c9237d7d4..448f951fa 100644
--- a/applications/luci-app-firewall/po/de/firewall.po
+++ b/applications/luci-app-firewall/po/de/firewall.po
@@ -292,6 +292,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Gefilterte Verbindungen an den angegeben internen Host weiterleiten"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "NAT auf die angegebenen Ziel-Subnetze beschränken"
diff --git a/applications/luci-app-firewall/po/el/firewall.po b/applications/luci-app-firewall/po/el/firewall.po
index f54e3d617..2229bf09f 100644
--- a/applications/luci-app-firewall/po/el/firewall.po
+++ b/applications/luci-app-firewall/po/el/firewall.po
@@ -285,6 +285,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/en/firewall.po b/applications/luci-app-firewall/po/en/firewall.po
index 6e3b9eb5e..9dc277dbe 100644
--- a/applications/luci-app-firewall/po/en/firewall.po
+++ b/applications/luci-app-firewall/po/en/firewall.po
@@ -285,6 +285,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Redirect matched incoming traffic to the specified internal host"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/es/firewall.po b/applications/luci-app-firewall/po/es/firewall.po
index 4a3e18226..670b4db6f 100644
--- a/applications/luci-app-firewall/po/es/firewall.po
+++ b/applications/luci-app-firewall/po/es/firewall.po
@@ -294,6 +294,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Redirigir el tráfico de entrada que coincida a la máquina interna"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Restringir enmascaramiento a las subredes destino"
diff --git a/applications/luci-app-firewall/po/fr/firewall.po b/applications/luci-app-firewall/po/fr/firewall.po
index 6d3111a28..cdff28296 100644
--- a/applications/luci-app-firewall/po/fr/firewall.po
+++ b/applications/luci-app-firewall/po/fr/firewall.po
@@ -290,6 +290,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Rediriger le trafic entrant correspondant vers l'hôte interne spécifié"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
"Restreindre la substitution d'adresses (Masquerade) à ces sous-réseaux "
diff --git a/applications/luci-app-firewall/po/he/firewall.po b/applications/luci-app-firewall/po/he/firewall.po
index 54316ad11..ce0ad0405 100644
--- a/applications/luci-app-firewall/po/he/firewall.po
+++ b/applications/luci-app-firewall/po/he/firewall.po
@@ -275,6 +275,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/hu/firewall.po b/applications/luci-app-firewall/po/hu/firewall.po
index 78c4b2693..c201e3da8 100644
--- a/applications/luci-app-firewall/po/hu/firewall.po
+++ b/applications/luci-app-firewall/po/hu/firewall.po
@@ -296,6 +296,9 @@ msgstr "Ãtirányítja az egyezÅ‘ bejövÅ‘ forgalmat a belsÅ‘ gép megadott port
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Ãtirányítja az egyezÅ‘ bejövÅ‘ forgalmat a megadott belsÅ‘ géphez"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Ãlcázás korlátozása a megadott cél alhálózatokra"
diff --git a/applications/luci-app-firewall/po/it/firewall.po b/applications/luci-app-firewall/po/it/firewall.po
index 064f63d50..88535243b 100644
--- a/applications/luci-app-firewall/po/it/firewall.po
+++ b/applications/luci-app-firewall/po/it/firewall.po
@@ -272,8 +272,10 @@ msgstr ""
msgid ""
"Port forwarding allows remote computers on the Internet to connect to a "
"specific computer or service within the private LAN."
-msgstr "L'inoltro delle porte permette ai computer in remoto su Internet di"
-"connettersi a uno specifico computer o servizio presente nella tua LAN privata"
+msgstr ""
+"L'inoltro delle porte permette ai computer in remoto su Internet "
+"diconnettersi a uno specifico computer o servizio presente nella tua LAN "
+"privata"
msgid "Protocol"
msgstr "Protocollo"
@@ -285,6 +287,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
@@ -380,8 +385,9 @@ msgstr ""
msgid ""
"The firewall creates zones over your network interfaces to control network "
"traffic flow."
-msgstr "Il firewall crea delle zone nelle tue interfacce di rete per controllare"
-"il flusso del traffico."
+msgstr ""
+"Il firewall crea delle zone nelle tue interfacce di rete per controllareil "
+"flusso del traffico."
msgid ""
"The options below control the forwarding policies between this zone (%s) and "
diff --git a/applications/luci-app-firewall/po/ja/firewall.po b/applications/luci-app-firewall/po/ja/firewall.po
index 4e88189eb..0e8d71c6b 100644
--- a/applications/luci-app-firewall/po/ja/firewall.po
+++ b/applications/luci-app-firewall/po/ja/firewall.po
@@ -1,26 +1,26 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-30 17:00+0200\n"
-"PO-Revision-Date: 2012-11-14 17:32+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2016-12-24 02:55+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "%s in %s"
-msgstr ""
+msgstr "%s (%s)"
msgid "%s%s with %s"
msgstr "%s%s ,%s"
msgid "%s, %s in %s"
-msgstr ""
+msgstr "%s, %s (%s)"
msgid "(Unnamed Entry)"
msgstr "(åå‰è¨­å®šã®ç„¡ã„エントリー)"
@@ -142,10 +142,10 @@ msgid "Forward"
msgstr "転é€"
msgid "Forward to"
-msgstr ""
+msgstr "転é€å…ˆ"
msgid "Friday"
-msgstr ""
+msgstr "金曜日"
msgid "From %s in %s"
msgstr "é€ä¿¡å…ƒ %s (%s)"
@@ -199,7 +199,7 @@ msgid "Masquerading"
msgstr "マスカレード"
msgid "Match"
-msgstr ""
+msgstr "対象"
msgid "Match ICMP type"
msgstr "ICMPタイプã®ä¸€è‡´"
@@ -224,10 +224,10 @@ msgstr ""
"フィックã¨ä¸€è‡´ã—ãŸãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ãŒå¯¾è±¡ã«ãªã‚Šã¾ã™ã€‚"
msgid "Monday"
-msgstr ""
+msgstr "月曜日"
msgid "Month Days"
-msgstr ""
+msgstr "月間"
msgid "Name"
msgstr "åå‰"
@@ -301,6 +301,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "ルールã«ä¸€è‡´ã—ãŸå—信トラフィックをã€è¨­å®šã•ã‚ŒãŸå†…部ホストã¸è»¢é€ã—ã¾ã™"
+msgid "Restart Firewall"
+msgstr "ファイアウォールã®å†èµ·å‹•"
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "設定ã•ã‚ŒãŸå®›å…ˆã‚µãƒ–ãƒãƒƒãƒˆã¸ã®ãƒžã‚¹ã‚«ãƒ¬ãƒ¼ãƒ‰ã‚’制é™ã™ã‚‹"
@@ -334,7 +337,7 @@ msgid "SNAT port"
msgstr "SNAT ãƒãƒ¼ãƒˆ"
msgid "Saturday"
-msgstr ""
+msgstr "土曜日"
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Generated from applications/luci-fw/luasrc/model/cbi/luci_fw/rrule.lua #
@@ -394,19 +397,19 @@ msgid "Source zone"
msgstr "é€ä¿¡å…ƒã‚¾ãƒ¼ãƒ³"
msgid "Start Date (yyyy-mm-dd)"
-msgstr ""
+msgstr "開始日 (yyyy-mm-dd)"
msgid "Start Time (hh:mm:ss)"
-msgstr ""
+msgstr "開始時刻 (hh:mm:ss)"
msgid "Stop Date (yyyy-mm-dd)"
-msgstr ""
+msgstr "åœæ­¢æ—¥ (yyyy-mm-dd)"
msgid "Stop Time (hh:mm:ss)"
-msgstr ""
+msgstr "åœæ­¢æ™‚刻 (hh:mm:ss)"
msgid "Sunday"
-msgstr ""
+msgstr "日曜日"
msgid ""
"The firewall creates zones over your network interfaces to control network "
@@ -444,7 +447,6 @@ msgstr ""
"ã“ã®ãƒšãƒ¼ã‚¸ã§ã¯ã€å„トラフィックルールã®é€ä¿¡å…ƒãƒ»å®›å…ˆãƒ›ã‚¹ãƒˆã®è¨­å®šãªã©ã®è©³ç´°è¨­å®š"
"ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚"
-#, fuzzy
msgid ""
"This section defines common properties of %q. The <em>input</em> and "
"<em>output</em> options set the default policies for traffic entering and "
@@ -459,10 +461,10 @@ msgstr ""
"ã®ã‚¾ãƒ¼ãƒ³ã«å±žã™ã‚‹ã‹ã‚’設定ã—ã¾ã™ã€‚"
msgid "Thursday"
-msgstr ""
+msgstr "木曜日"
msgid "Time in UTC"
-msgstr ""
+msgstr "UTC時刻を使用"
msgid "To %s at %s on <var>this device</var>"
msgstr "宛先 %s, %s (<var>デãƒã‚¤ã‚¹</var>)"
@@ -495,19 +497,19 @@ msgstr ""
"設定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
msgid "Tuesday"
-msgstr ""
+msgstr "ç«æ›œæ—¥"
msgid "Via %s"
-msgstr ""
+msgstr "経由 %s"
msgid "Via %s at %s"
-msgstr ""
+msgstr "経由 %s , %s"
msgid "Wednesday"
-msgstr ""
+msgstr "水曜日"
msgid "Week Days"
-msgstr ""
+msgstr "曜日"
msgid ""
"You may specify multiple by selecting \"-- custom --\" and then entering "
@@ -550,4 +552,4 @@ msgid "reject"
msgstr "æ‹’å¦"
msgid "traffic"
-msgstr ""
+msgstr "トラフィック"
diff --git a/applications/luci-app-firewall/po/ko/firewall.po b/applications/luci-app-firewall/po/ko/firewall.po
new file mode 100644
index 000000000..f43fdc882
--- /dev/null
+++ b/applications/luci-app-firewall/po/ko/firewall.po
@@ -0,0 +1,505 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-30 17:00+0200\n"
+"PO-Revision-Date: 2012-11-14 17:32+0200\n"
+"Last-Translator: Weongyo Jeong <weongyo@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: ko\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "%s in %s"
+msgstr ""
+
+msgid "%s%s with %s"
+msgstr "%s%s ,%s"
+
+msgid "%s, %s in %s"
+msgstr ""
+
+msgid "(Unnamed Entry)"
+msgstr ""
+
+msgid "(Unnamed Rule)"
+msgstr ""
+
+msgid "(Unnamed SNAT)"
+msgstr ""
+
+msgid "<var>%d</var> pkts. per <var>%s</var>"
+msgstr ""
+
+msgid "<var>%d</var> pkts. per <var>%s</var>, burst <var>%d</var> pkts."
+msgstr ""
+
+msgid "<var>%s</var> and limit to %s"
+msgstr ""
+
+msgid "Action"
+msgstr ""
+
+msgid "Add"
+msgstr ""
+
+msgid "Add and edit..."
+msgstr "추가 후 수정..."
+
+msgid "Advanced Settings"
+msgstr ""
+
+msgid "Allow forward from <em>source zones</em>:"
+msgstr "<em>Source zone</em> ë¡œë¶€í„°ì˜ forward 허용:"
+
+msgid "Allow forward to <em>destination zones</em>:"
+msgstr "<em>Destination zone</em> 으로 forward 허용:"
+
+msgid "Any"
+msgstr ""
+
+msgid "Covered networks"
+msgstr ""
+
+msgid "Custom Rules"
+msgstr "Custom Rule"
+
+msgid ""
+"Custom rules allow you to execute arbritary iptables commands which are not "
+"otherwise covered by the firewall framework. The commands are executed after "
+"each firewall restart, right after the default ruleset has been loaded."
+msgstr ""
+"Custom rule ì€ ë°©í™”ë²½ UI ë¡œ í•´ê²°ì´ ë˜ì§€ 않는 ìž„ì˜ì˜ iptables ëª…ë ¹ì„ ì‹¤í–‰í•  "
+"수 있ë„ë¡ í•©ë‹ˆë‹¤. ìž…ë ¥ëœ ëª…ë ¹ì–´ë“¤ì€ ë§¤ 방화벽 재시작시 실행ë˜ëŠ”ë° default "
+"ruleset ì´ load ëœ í›„ ì‹œì ìž…니다."
+
+msgid "Destination IP address"
+msgstr "Destination IP 주소"
+
+msgid "Destination address"
+msgstr "Destination 주소"
+
+msgid "Destination port"
+msgstr ""
+
+msgid "Destination zone"
+msgstr ""
+
+msgid "Do not rewrite"
+msgstr ""
+
+msgid "Drop invalid packets"
+msgstr ""
+
+msgid "Enable"
+msgstr "활성화"
+
+msgid "Enable NAT Loopback"
+msgstr "NAT Loopback 활성화"
+
+msgid "Enable SYN-flood protection"
+msgstr "SYN-flood protection 활성화"
+
+msgid "Enable logging on this zone"
+msgstr "zone ì˜ logging 활성화"
+
+msgid "External IP address"
+msgstr "외부 IP 주소"
+
+msgid "External port"
+msgstr "외부 port"
+
+msgid "External zone"
+msgstr "외부 zone"
+
+msgid "Extra arguments"
+msgstr "추가 argument"
+
+msgid "Firewall"
+msgstr "방화벽"
+
+msgid "Firewall - Custom Rules"
+msgstr "방화벽 - Custom Rules"
+
+msgid "Firewall - Port Forwards"
+msgstr "방화벽 - Port Forwards"
+
+msgid "Firewall - Traffic Rules"
+msgstr "방화벽 - Traffic Rules"
+
+msgid "Firewall - Zone Settings"
+msgstr "방화벽 - Zone 설정"
+
+msgid "Force connection tracking"
+msgstr ""
+
+msgid "Forward"
+msgstr ""
+
+msgid "Forward to"
+msgstr ""
+
+msgid "Friday"
+msgstr "금요ì¼"
+
+msgid "From %s in %s"
+msgstr ""
+
+msgid "From %s in %s with source %s"
+msgstr ""
+
+msgid "From %s in %s with source %s and %s"
+msgstr ""
+
+msgid "General Settings"
+msgstr ""
+
+msgid "IPv4"
+msgstr ""
+
+msgid "IPv4 and IPv6"
+msgstr ""
+
+msgid "IPv4 only"
+msgstr ""
+
+msgid "IPv6"
+msgstr ""
+
+msgid "IPv6 only"
+msgstr ""
+
+msgid "Input"
+msgstr ""
+
+msgid "Inter-Zone Forwarding"
+msgstr ""
+
+msgid "Internal IP address"
+msgstr "내부 IP 주소"
+
+msgid "Internal port"
+msgstr "내부 port"
+
+msgid "Internal zone"
+msgstr "내부 zone"
+
+msgid "Limit log messages"
+msgstr ""
+
+msgid "MSS clamping"
+msgstr ""
+
+msgid "Masquerading"
+msgstr ""
+
+msgid "Match"
+msgstr ""
+
+msgid "Match ICMP type"
+msgstr ""
+
+msgid "Match forwarded traffic to the given destination port or port range."
+msgstr ""
+
+msgid ""
+"Match incoming traffic directed at the given destination port or port range "
+"on this host"
+msgstr ""
+
+msgid ""
+"Match incoming traffic originating from the given source port or port range "
+"on the client host."
+msgstr ""
+
+msgid "Monday"
+msgstr "월요ì¼"
+
+msgid "Month Days"
+msgstr ""
+
+msgid "Name"
+msgstr "ì´ë¦„"
+
+msgid "New SNAT rule"
+msgstr "새로운 SNAT rule"
+
+msgid "New forward rule"
+msgstr "새로운 forward rule"
+
+msgid "New input rule"
+msgstr "새로운 input rule"
+
+msgid "New port forward"
+msgstr "새로운 port forward"
+
+msgid "New source NAT"
+msgstr "새로운 source NAT"
+
+msgid "Only match incoming traffic directed at the given IP address."
+msgstr ""
+
+msgid "Only match incoming traffic from these MACs."
+msgstr ""
+
+msgid "Only match incoming traffic from this IP or range."
+msgstr ""
+
+msgid ""
+"Only match incoming traffic originating from the given source port or port "
+"range on the client host"
+msgstr ""
+
+msgid "Open ports on router"
+msgstr ""
+
+msgid "Other..."
+msgstr ""
+
+msgid "Output"
+msgstr ""
+
+msgid "Passes additional arguments to iptables. Use with care!"
+msgstr "iptables ëª…ë ¹ì— ì¶”ê°€ ì¸ìžë“¤ì„ ë”합니다. 조심해 사용하세요!"
+
+msgid "Port Forwards"
+msgstr "Port Forward"
+
+msgid ""
+"Port forwarding allows remote computers on the Internet to connect to a "
+"specific computer or service within the private LAN."
+msgstr ""
+"Port forwarding ê¸°ëŠ¥ì€ ì¸í„°ë„· ìƒì˜ ì›ê²© 컴퓨터가 내부 LAN ì— ì†í•œ 특정 컴퓨터"
+"나 ì„œë¹„ìŠ¤ì— ì ‘ì†í•  수 있ë„ë¡ í•©ë‹ˆë‹¤."
+
+msgid "Protocol"
+msgstr ""
+
+msgid ""
+"Redirect matched incoming traffic to the given port on the internal host"
+msgstr ""
+
+msgid "Redirect matched incoming traffic to the specified internal host"
+msgstr ""
+
+msgid "Restart Firewall"
+msgstr ""
+
+msgid "Restrict Masquerading to given destination subnets"
+msgstr "주어진 destination subnet 으로 Masquerading 제한"
+
+msgid "Restrict Masquerading to given source subnets"
+msgstr "주어진 source subnet 으로 Masquerading 제한"
+
+msgid "Restrict to address family"
+msgstr "Address family 제한"
+
+msgid "Rewrite matched traffic to the given address."
+msgstr ""
+
+msgid ""
+"Rewrite matched traffic to the given source port. May be left empty to only "
+"rewrite the IP address."
+msgstr ""
+
+msgid "Rewrite to source %s"
+msgstr ""
+
+msgid "Rewrite to source %s, %s"
+msgstr ""
+
+msgid "SNAT IP address"
+msgstr ""
+
+msgid "SNAT port"
+msgstr ""
+
+msgid "Saturday"
+msgstr "토요ì¼"
+
+msgid "Source IP address"
+msgstr "Source IP 주소"
+
+msgid "Source MAC address"
+msgstr "Source MAC 주소"
+
+msgid "Source NAT"
+msgstr ""
+
+msgid ""
+"Source NAT is a specific form of masquerading which allows fine grained "
+"control over the source IP used for outgoing traffic, for example to map "
+"multiple WAN addresses to internal subnets."
+msgstr ""
+"Source NAT ê¸°ëŠ¥ì€ masquerading ì˜ í•œ í˜•íƒœë¡œì¨ outgoing íŠ¸ëž˜í”½ì´ ì‚¬ìš©í•  "
+"source IP 를 세밀하게 제어할 수 있습니다. 예를 들어 ë‹¤ìˆ˜ì˜ WAN ì£¼ì†Œë“¤ì„ ë‚´"
+"부 subnet ì— ë§¤í•‘(mapping) í•  경우 사용ë©ë‹ˆë‹¤."
+
+msgid "Source address"
+msgstr "Source 주소"
+
+msgid "Source port"
+msgstr ""
+
+msgid "Source zone"
+msgstr ""
+
+msgid "Start Date (yyyy-mm-dd)"
+msgstr "시작 날짜 (yyyy-mm-dd)"
+
+msgid "Start Time (hh:mm:ss)"
+msgstr "시작 시간 (hh:mm:ss)"
+
+msgid "Stop Date (yyyy-mm-dd)"
+msgstr "종료 날짜 (yyyy-mm-dd)"
+
+msgid "Stop Time (hh:mm:ss)"
+msgstr "종료 시간 (hh:mm:ss)"
+
+msgid "Sunday"
+msgstr "ì¼ìš”ì¼"
+
+msgid ""
+"The firewall creates zones over your network interfaces to control network "
+"traffic flow."
+msgstr ""
+"방화벽 ê¸°ëŠ¥ì„ ì´ìš©í•˜ì—¬ ë„¤íŠ¸ì›Œí¬ ì¸í„°íŽ˜ì´ìŠ¤ì™€ ì—°ê²°ëœ zone ì„ ìƒì„±í•  수 있고 ì´"
+"를 ì´ìš©í•˜ì—¬ ë„¤íŠ¸ì›Œí¬ traffic flow 를 제어할 수 있습니다."
+
+msgid ""
+"The options below control the forwarding policies between this zone (%s) and "
+"other zones. <em>Destination zones</em> cover forwarded traffic "
+"<strong>originating from %q</strong>. <em>Source zones</em> match forwarded "
+"traffic from other zones <strong>targeted at %q</strong>. The forwarding "
+"rule is <em>unidirectional</em>, e.g. a forward from lan to wan does "
+"<em>not</em> imply a permission to forward from wan to lan as well."
+msgstr ""
+"ì´ zone (%s) ê³¼ 다른 zone 들 사ì´ì˜ forwarding ì •ì±…ì„ ì œì–´í•˜ëŠ” 옵션들입니다. "
+"<em>Destination zones</em> ì€ <strong>%q ì—ì„œ 출발한 </strong> forward "
+"traffic ì„ ëœ»í•˜ê³ , <em>Source zones</em> ì€ ë‹¤ë¥¸ zone 들ì—ì„œ <strong>%q ë¡œ ì „"
+"달ë˜ëŠ”</strong> forward traffic ì„ ëœ»í•©ë‹ˆë‹¤. Forwarding rule ì€ "
+"<em>unidirectional</em> ì¸ë°, 예를 들어 LAN ì—ì„œ WAN ìœ¼ë¡œì˜ forward ê·œì¹™ì´ "
+"WAN ì—ì„œ LAN ìœ¼ë¡œì˜ forward 를 í—ˆë½í•˜ëŠ” ê²ƒì´ ì•„ë‹™ë‹ˆë‹¤."
+
+msgid ""
+"This page allows you to change advanced properties of the port forwarding "
+"entry. In most cases there is no need to modify those settings."
+msgstr ""
+"ì´ ë©”ë‰´ì—서는 port forwarding ì˜ ê³ ê¸‰ 설정 정보를 변경할 수 있습니다. 대부분"
+"ì˜ ê²½ìš° ì´ ì„¤ì •ì„ ìˆ˜ì •í•  ì¼ì´ 없습니다."
+
+msgid ""
+"This page allows you to change advanced properties of the traffic rule "
+"entry, such as matched source and destination hosts."
+msgstr ""
+"ì´ ë©”ë‰´ì—서는 traffic rule í•­ëª©ì˜ ê³ ê¸‰ 설정, 예를 들어 source host 와 "
+"destination host 매칭, ì„ ë³€ê²½í•  수 있습니다."
+
+#, fuzzy
+msgid ""
+"This section defines common properties of %q. The <em>input</em> and "
+"<em>output</em> options set the default policies for traffic entering and "
+"leaving this zone while the <em>forward</em> option describes the policy for "
+"forwarded traffic between different networks within the zone. <em>Covered "
+"networks</em> specifies which available networks are members of this zone."
+msgstr ""
+"ì´ ì„¹ì…˜ì€ %q ì˜ ê³µí†µ ì†ì„±ì„ 설정할 수 있습니다. <em>input</em> ê³¼ "
+"<em>output</em> ì˜µì…˜ì€ ì´ zone 으로 전달ë˜ì–´ 들오거나 나가는 íŠ¸ëž˜í”½ì— ëŒ€í•œ 기"
+"본 ì •ì±…ì„ ëœ»í•©ë‹ˆë‹¤. <em>forward</em> ì˜µì…˜ì€ zone ë‚´ì—ì„œ 다른 네트워í¬ë“¤ 사ì´"
+"를 오가는 forward traffic ì— ëŒ€í•œ ì •ì±…ì„ ëœ»í•©ë‹ˆë‹¤. <em>Covered networks</em> "
+"ì—서는 zone ì˜ ì˜í–¥ì„ ë°›ì„ ë„¤íŠ¸ì›Œí¬ë“¤ì„ 지정할 수 있습니다."
+
+msgid "Thursday"
+msgstr "목요ì¼"
+
+msgid "Time in UTC"
+msgstr "UTC 기준시"
+
+msgid "To %s at %s on <var>this device</var>"
+msgstr ""
+
+msgid "To %s in %s"
+msgstr ""
+
+msgid "To %s on <var>this device</var>"
+msgstr ""
+
+msgid "To %s, %s in %s"
+msgstr ""
+
+msgid "To source IP"
+msgstr ""
+
+msgid "To source port"
+msgstr ""
+
+msgid "Traffic Rules"
+msgstr "Traffic Rule"
+
+msgid ""
+"Traffic rules define policies for packets traveling between different zones, "
+"for example to reject traffic between certain hosts or to open WAN ports on "
+"the router."
+msgstr ""
+"Traffic rule ì€ ì„œë¡œ 다른 zone 사ì´ë¥¼ 오가는 íŒ¨í‚·ë“¤ì— ëŒ€í•œ ì •ì±…ì„ ì •ì˜í•©ë‹ˆ"
+"다. 예를 들어 특정 host 들 사ì´ì˜ íŠ¸ëž˜í”½ì„ ì°¨ë‹¨í•˜ê±°ë‚˜ ê³µìœ ê¸°ì˜ WAN port 를 "
+"open í• ë•Œ 사용ë©ë‹ˆë‹¤."
+
+msgid "Tuesday"
+msgstr "화요ì¼"
+
+msgid "Via %s"
+msgstr ""
+
+msgid "Via %s at %s"
+msgstr ""
+
+msgid "Wednesday"
+msgstr "수요ì¼"
+
+msgid "Week Days"
+msgstr "주ì¼"
+
+msgid ""
+"You may specify multiple by selecting \"-- custom --\" and then entering "
+"protocols separated by space."
+msgstr ""
+
+msgid "Zone %q"
+msgstr ""
+
+msgid "Zone ⇒ Forwardings"
+msgstr ""
+
+msgid "Zones"
+msgstr "Zone ë‚´ì—­"
+
+msgid "accept"
+msgstr ""
+
+msgid "any"
+msgstr ""
+
+msgid "any host"
+msgstr ""
+
+msgid "any router IP"
+msgstr ""
+
+msgid "any zone"
+msgstr ""
+
+msgid "don't track"
+msgstr ""
+
+msgid "drop"
+msgstr ""
+
+msgid "reject"
+msgstr ""
+
+msgid "traffic"
+msgstr ""
diff --git a/applications/luci-app-firewall/po/ms/firewall.po b/applications/luci-app-firewall/po/ms/firewall.po
index 185aeb936..b82e2c116 100644
--- a/applications/luci-app-firewall/po/ms/firewall.po
+++ b/applications/luci-app-firewall/po/ms/firewall.po
@@ -274,6 +274,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/no/firewall.po b/applications/luci-app-firewall/po/no/firewall.po
index e39eee7e4..59167db54 100644
--- a/applications/luci-app-firewall/po/no/firewall.po
+++ b/applications/luci-app-firewall/po/no/firewall.po
@@ -291,6 +291,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Viderekoble matchet innkommende trafikk til den angitte interne vert"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Begrens Masquerading til oppgitt destinasjons subnett"
diff --git a/applications/luci-app-firewall/po/pl/firewall.po b/applications/luci-app-firewall/po/pl/firewall.po
index 7a598d808..2eea8c31f 100644
--- a/applications/luci-app-firewall/po/pl/firewall.po
+++ b/applications/luci-app-firewall/po/pl/firewall.po
@@ -300,6 +300,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Przekieruj ruch przychodzący do wskazanego hosta w sieci wewnętrznej"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Ogranicz maskaradÄ™ do wskazanych sieci docelowych"
diff --git a/applications/luci-app-firewall/po/pt-br/firewall.po b/applications/luci-app-firewall/po/pt-br/firewall.po
index c1cfb4287..ab714b50b 100644
--- a/applications/luci-app-firewall/po/pt-br/firewall.po
+++ b/applications/luci-app-firewall/po/pt-br/firewall.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-30 17:00+0200\n"
-"PO-Revision-Date: 2014-06-21 19:03+0200\n"
-"Last-Translator: Éder <eder.grigorio@openmailbox.org>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-02-20 17:43-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "%s in %s"
msgstr "%s in %s"
@@ -143,7 +143,7 @@ msgid "Forward to"
msgstr "Encaminhar para"
msgid "Friday"
-msgstr ""
+msgstr "Sexta-feira"
msgid "From %s in %s"
msgstr "Vindo de %s em %s"
@@ -222,10 +222,10 @@ msgstr ""
"equipamento cliente."
msgid "Monday"
-msgstr ""
+msgstr "Segunda-Feira"
msgid "Month Days"
-msgstr ""
+msgstr "Dias do mês"
msgid "Name"
msgstr "Nome"
@@ -295,6 +295,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Redireciona tráfego entrante para o computador interno especificado"
+msgid "Restart Firewall"
+msgstr "Reiniciar o Firewall"
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Restringe o mascaramento para uma subrede de destino específica"
@@ -327,7 +330,7 @@ msgid "SNAT port"
msgstr "Porta da SNAT"
msgid "Saturday"
-msgstr ""
+msgstr "Sábado"
msgid "Source IP address"
msgstr "Endereço IP de origem"
@@ -357,19 +360,19 @@ msgid "Source zone"
msgstr "Zona de origem"
msgid "Start Date (yyyy-mm-dd)"
-msgstr ""
+msgstr "Dia inicial (aaaa-mm-dd)"
msgid "Start Time (hh:mm:ss)"
-msgstr ""
+msgstr "Hora inicial (hh:mm:ss)"
msgid "Stop Date (yyyy-mm-dd)"
-msgstr ""
+msgstr "Dia final (aaaa-mm-dd)"
msgid "Stop Time (hh:mm:ss)"
-msgstr ""
+msgstr "Hora final (hh:mm:ss)"
msgid "Sunday"
-msgstr ""
+msgstr "Domingo"
msgid ""
"The firewall creates zones over your network interfaces to control network "
@@ -408,7 +411,6 @@ msgstr ""
"Esta página permite que você mude propriedades avançadas da entrada da regra "
"de tráfego, como os equipamentos de origem e destino."
-#, fuzzy
msgid ""
"This section defines common properties of %q. The <em>input</em> and "
"<em>output</em> options set the default policies for traffic entering and "
@@ -424,10 +426,10 @@ msgstr ""
"zona."
msgid "Thursday"
-msgstr ""
+msgstr "Quita-feira"
msgid "Time in UTC"
-msgstr ""
+msgstr "Hora em UTC"
msgid "To %s at %s on <var>this device</var>"
msgstr "Para %s em %s <var>neste dispositivo</var>"
@@ -460,7 +462,7 @@ msgstr ""
"ou abrir portas WAN no roteador."
msgid "Tuesday"
-msgstr ""
+msgstr "Terça-feira"
msgid "Via %s"
msgstr "Via %s"
@@ -469,10 +471,10 @@ msgid "Via %s at %s"
msgstr "Via %s at %s"
msgid "Wednesday"
-msgstr ""
+msgstr "Quarta-feira"
msgid "Week Days"
-msgstr ""
+msgstr "Dias da semana"
msgid ""
"You may specify multiple by selecting \"-- custom --\" and then entering "
diff --git a/applications/luci-app-firewall/po/pt/firewall.po b/applications/luci-app-firewall/po/pt/firewall.po
index 70bf2fa3e..f55261671 100644
--- a/applications/luci-app-firewall/po/pt/firewall.po
+++ b/applications/luci-app-firewall/po/pt/firewall.po
@@ -297,6 +297,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Redirecionar o tráfego de entrada correspondente para o host interno"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/ro/firewall.po b/applications/luci-app-firewall/po/ro/firewall.po
index 432a41b89..69b911e17 100644
--- a/applications/luci-app-firewall/po/ro/firewall.po
+++ b/applications/luci-app-firewall/po/ro/firewall.po
@@ -279,6 +279,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/ru/firewall.po b/applications/luci-app-firewall/po/ru/firewall.po
index 294d9db6d..98bc92dd6 100644
--- a/applications/luci-app-firewall/po/ru/firewall.po
+++ b/applications/luci-app-firewall/po/ru/firewall.po
@@ -300,6 +300,9 @@ msgstr "Перенаправить входÑщий трафик на указа
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "Перенаправить входÑщий трафик на указанный хоÑÑ‚ внутренней Ñети"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "ИÑпользовать маÑкарадинг только Ð´Ð»Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ñ… подÑетей-получателей"
diff --git a/applications/luci-app-firewall/po/sk/firewall.po b/applications/luci-app-firewall/po/sk/firewall.po
index 59613a89a..f45e74b14 100644
--- a/applications/luci-app-firewall/po/sk/firewall.po
+++ b/applications/luci-app-firewall/po/sk/firewall.po
@@ -275,6 +275,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/sv/firewall.po b/applications/luci-app-firewall/po/sv/firewall.po
index 79af5a2e8..2e169fb92 100644
--- a/applications/luci-app-firewall/po/sv/firewall.po
+++ b/applications/luci-app-firewall/po/sv/firewall.po
@@ -276,6 +276,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/templates/firewall.pot b/applications/luci-app-firewall/po/templates/firewall.pot
index 7ea06e0bb..d1e8eeca1 100644
--- a/applications/luci-app-firewall/po/templates/firewall.pot
+++ b/applications/luci-app-firewall/po/templates/firewall.pot
@@ -268,6 +268,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/tr/firewall.po b/applications/luci-app-firewall/po/tr/firewall.po
index 89cbfe152..1b5444f0f 100644
--- a/applications/luci-app-firewall/po/tr/firewall.po
+++ b/applications/luci-app-firewall/po/tr/firewall.po
@@ -275,6 +275,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/uk/firewall.po b/applications/luci-app-firewall/po/uk/firewall.po
index b946d6b95..1c4117f3f 100644
--- a/applications/luci-app-firewall/po/uk/firewall.po
+++ b/applications/luci-app-firewall/po/uk/firewall.po
@@ -295,6 +295,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "ПереÑпрÑмувати відповідний вхідний трафік на заданий внутрішній вузол"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "Обмежити підміну заданими підмережами призначеннÑ"
diff --git a/applications/luci-app-firewall/po/vi/firewall.po b/applications/luci-app-firewall/po/vi/firewall.po
index 93d6d6658..6c00a6f29 100644
--- a/applications/luci-app-firewall/po/vi/firewall.po
+++ b/applications/luci-app-firewall/po/vi/firewall.po
@@ -285,6 +285,9 @@ msgstr ""
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr ""
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr ""
diff --git a/applications/luci-app-firewall/po/zh-cn/firewall.po b/applications/luci-app-firewall/po/zh-cn/firewall.po
index 48d22b03e..d36eeeaa6 100644
--- a/applications/luci-app-firewall/po/zh-cn/firewall.po
+++ b/applications/luci-app-firewall/po/zh-cn/firewall.po
@@ -282,6 +282,9 @@ msgstr "é‡å®šå‘匹é…的入站æµé‡åˆ°å†…部主机的端å£"
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "é‡å®šå‘匹é…的入站æµé‡åˆ°çš„内部主机"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "è¦é™åˆ¶IP动æ€ä¼ªè£…的目标å­ç½‘"
diff --git a/applications/luci-app-firewall/po/zh-tw/firewall.po b/applications/luci-app-firewall/po/zh-tw/firewall.po
index b768d43b0..b89cfab7f 100644
--- a/applications/luci-app-firewall/po/zh-tw/firewall.po
+++ b/applications/luci-app-firewall/po/zh-tw/firewall.po
@@ -280,6 +280,9 @@ msgstr "é‡å°Žå‘已匹é…傳入æµé‡åˆ°å…§éƒ¨ä¸»æ©Ÿä¸Šçš„指定埠"
msgid "Redirect matched incoming traffic to the specified internal host"
msgstr "é‡å°Žå‘已匹é…傳入æµé‡åˆ°å…§éƒ¨ä¸»æ©Ÿä¸Š"
+msgid "Restart Firewall"
+msgstr ""
+
msgid "Restrict Masquerading to given destination subnets"
msgstr "é™åˆ¶å½è£åˆ°å·²çµ¦äºˆçš„目標å­ç¶²è·¯"
diff --git a/applications/luci-app-fwknopd/Makefile b/applications/luci-app-fwknopd/Makefile
index 3fbd88ad6..ba7a8568e 100644
--- a/applications/luci-app-fwknopd/Makefile
+++ b/applications/luci-app-fwknopd/Makefile
@@ -8,8 +8,6 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Fwknopd config - web config for the firewall knock daemon
LUCI_DEPENDS:=+fwknopd +qrencode
-PKG_VERSION:=1.0
-PKG_RELEASE:=1
PKG_LICENSE:=GPLv2
PKG_MAINTAINER:=Jonathan Bennett <JBennett@incomsystems.biz>
include ../../luci.mk
diff --git a/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua b/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua
index 096724f73..435837444 100644
--- a/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua
+++ b/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua
@@ -1,19 +1,19 @@
-- Copyright 2015 Jonathan Bennett <jbennett@incomsystems.biz>
-- Licensed to the public under the GNU General Public License v2.
-
+tmp = 0
m = Map("fwknopd", translate("Firewall Knock Operator"))
s = m:section(TypedSection, "global", translate("Enable Uci/Luci control")) -- Set uci control on or off
s.anonymous=true
s:option(Flag, "uci_enabled", translate("Enable config overwrite"), translate("When unchecked, the config files in /etc/fwknopd will be used as is, ignoring any settings here."))
-qr = s:option(DummyValue, "note0", "dummy")
-qr.template = "fwknopd-qr"
-qr:depends("uci_enabled", "1")
s = m:section(TypedSection, "access", translate("access.conf stanzas")) -- set the access.conf settings
s.anonymous=true
s.addremove=true
-s.dynamic=true
+qr = s:option(DummyValue, "note0", "dummy")
+qr.tmp = tmp
+qr.template = "fwknopd-qr"
+qr:depends("uci_enabled", "1")
s:option(Value, "SOURCE", "SOURCE", translate("Use ANY for any source ip"))
k1 = s:option(Value, "KEY", "KEY", translate("Define the symmetric key used for decrypting an incoming SPA packet that is encrypted by the fwknop client with Rijndael."))
k1:depends("keytype", translate("Normal Key"))
@@ -40,15 +40,13 @@ s:option(Value, "REQUIRE_SOURCE_ADDRESS", "REQUIRE_SOURCE_ADDRESS", translate("F
This makes it impossible to use the -s command line argument on the fwknop client command line, so either -R \
has to be used to automatically resolve the external address (if the client behind a NAT) or the client must \
know the external IP and set it via the -a argument."))
-s:option(DummyValue, "note1", translate("Enter custom access.conf variables below:"))
s = m:section(TypedSection, "config", translate("fwknopd.conf config options"))
s.anonymous=true
-s.dynamic=true
s:option(Value, "MAX_SPA_PACKET_AGE", "MAX_SPA_PACKET_AGE", translate("Maximum age in seconds that an SPA packet will be accepted. defaults to 120 seconds"))
s:option(Value, "PCAP_INTF", "PCAP_INTF", translate("Specify the ethernet interface on which fwknopd will sniff packets."))
s:option(Value, "ENABLE_IPT_FORWARDING", "ENABLE_IPT_FORWARDING", translate("Allow SPA clients to request access to services through an iptables firewall instead of just to it."))
-s:option(DummyValue, "note2", translate("Enter custom fwknopd.conf variables below:"))
+s:option(Value, "ENABLE_NAT_DNS", "ENABLE_NAT_DNS", translate("Allow SPA clients to request forwarding destination by DNS name."))
return m
diff --git a/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm b/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm
index 9e6e8185f..5773f523e 100644
--- a/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm
+++ b/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm
@@ -1 +1,2 @@
-<% print(luci.sys.exec("sh /usr/sbin/gen-qr.sh")) %>
+<% print(luci.sys.exec("sh /usr/sbin/gen-qr.sh " .. self.tmp)) %>
+<% self.tmp = self.tmp + 1 %>
diff --git a/applications/luci-app-fwknopd/po/en/fwknopd.po b/applications/luci-app-fwknopd/po/en/fwknopd.po
index d75c99d52..fbdd8d753 100644
--- a/applications/luci-app-fwknopd/po/en/fwknopd.po
+++ b/applications/luci-app-fwknopd/po/en/fwknopd.po
@@ -17,6 +17,9 @@ msgstr ""
"Allow SPA clients to request access to services through an iptables firewall "
"instead of just to it."
+msgid "Allow SPA clients to request forwarding destination by DNS name."
+msgstr ""
+
msgid "Base 64 key"
msgstr "Base 64 key"
@@ -55,12 +58,6 @@ msgstr "Enable Uci/Luci control"
msgid "Enable config overwrite"
msgstr "Enable config overwrite"
-msgid "Enter custom access.conf variables below:"
-msgstr "Enter custom access.conf variables below:"
-
-msgid "Enter custom fwknopd.conf variables below:"
-msgstr "Enter custom fwknopd.conf variables below:"
-
msgid "Firewall Knock Daemon"
msgstr "Firewall Knock Daemon"
@@ -111,3 +108,9 @@ msgstr "access.conf stanzas"
msgid "fwknopd.conf config options"
msgstr "fwknopd.conf config options"
+
+#~ msgid "Enter custom access.conf variables below:"
+#~ msgstr "Enter custom access.conf variables below:"
+
+#~ msgid "Enter custom fwknopd.conf variables below:"
+#~ msgstr "Enter custom fwknopd.conf variables below:"
diff --git a/applications/luci-app-fwknopd/po/pt-br/fwknopd.po b/applications/luci-app-fwknopd/po/pt-br/fwknopd.po
new file mode 100644
index 000000000..286b49db3
--- /dev/null
+++ b/applications/luci-app-fwknopd/po/pt-br/fwknopd.po
@@ -0,0 +1,116 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid ""
+"Allow SPA clients to request access to services through an iptables firewall "
+"instead of just to it."
+msgstr ""
+"Permitir que clientes SPA requeiram acesso a serviços através de um firewall "
+"iptables ao invés de apenas fazê-lo."
+
+msgid "Allow SPA clients to request forwarding destination by DNS name."
+msgstr ""
+"Permitir que clientes SPA requeiram encaminhamento de destinos por nome DNS."
+
+msgid "Base 64 key"
+msgstr "Chave em formato base64"
+
+msgid ""
+"Define a set of ports and protocols (tcp or udp) that will be opened if a "
+"valid knock sequence is seen. If this entry is not set, fwknopd will attempt "
+"to honor any proto/port request specified in the SPA data (unless of it "
+"matches any “RESTRICT_PORTS†entries). Multiple entries are comma-separated."
+msgstr ""
+"Define um conjunto de porta e protocolos (TCP ou UDP) que serão abertos se "
+"uma sequência de batidas for observada. Se esta entrada não estiver "
+"definida, fwknopd irá tentar honrar qualquer requisição de protocolo/porta "
+"especificada nos dados SPA (a não ser se casar com qualquer entrada de "
+"\"RESTRICT_PORTS\"). Múltiplas entradas serão separadas por vírgula."
+
+msgid ""
+"Define the length of time access will be granted by fwknopd through the "
+"firewall after a valid knock sequence from a source IP address. If "
+"“FW_ACCESS_TIMEOUT†is not set then the default timeout of 30 seconds will "
+"automatically be set."
+msgstr ""
+"Define a duração do tempo de acesso que será concedido pelo fwknopd através "
+"do firewall depois de uma sequência de batidas válida de um endereço IP. Se "
+"“FW_ACCESS_TIMEOUT†não estiver definido, o valor padrão será de 30 "
+"segundos. "
+
+msgid ""
+"Define the symmetric key used for decrypting an incoming SPA packet that is "
+"encrypted by the fwknop client with Rijndael."
+msgstr ""
+"Define a chave simétrica usada para decifrar um pacote SPA entrante que foi "
+"cifrado pelo cliente fwknop com o algoritmo Rijndael."
+
+msgid "Enable Uci/Luci control"
+msgstr "Habilitar o controle UCI/Luci"
+
+msgid "Enable config overwrite"
+msgstr "Habilitar a sobrescrita da configuração"
+
+msgid "Firewall Knock Daemon"
+msgstr "Servidor do Firwall Knock"
+
+msgid "Firewall Knock Operator"
+msgstr "Operador do Firewall Knock"
+
+msgid ""
+"Force all SPA packets to contain a real IP address within the encrypted "
+"data. This makes it impossible to use the -s command line argument on the "
+"fwknop client command line, so either -R has to be used to automatically "
+"resolve the external address (if the client behind a NAT) or the client must "
+"know the external IP and set it via the -a argument."
+msgstr ""
+"Forçar que todos os pacotes SPA contenham um endereço IP real dentro do "
+"pacote cifrado. Isto torna impossível o uso do argumento de linha de comando "
+"'-s' no cliente fwknop. Desta forma, ou o argumento '-R' deve ser usada para "
+"resolver os endereços externos automaticamente (se o cliente estiver atrás "
+"de uma NAT) ou o ciente deve conhecer o seu endereço IP externo e defini-lo "
+"através do argumento '-a'."
+
+msgid ""
+"Maximum age in seconds that an SPA packet will be accepted. defaults to 120 "
+"seconds"
+msgstr ""
+"Idade máxima, em segundos, que um pacote SPA será aceito. Padrão é 120 "
+"segundos."
+
+msgid "Normal Key"
+msgstr "Chave Normal"
+
+msgid "Specify the ethernet interface on which fwknopd will sniff packets."
+msgstr ""
+"Especifica o dispositivo ethernet no qual o fwknopd irá observar os pacotes."
+
+msgid "The base64 hmac key"
+msgstr "A chave de autenticação HMAC em formato base64"
+
+msgid "Use ANY for any source ip"
+msgstr "Use \"ANY\" para qualquer endereço IP de origem"
+
+msgid ""
+"When unchecked, the config files in /etc/fwknopd will be used as is, "
+"ignoring any settings here."
+msgstr ""
+"Quando desmarcado, os arquivos de configuração em /etc/fwknopd serão usados "
+"como estão, ignorando qualquer ajustes feitos aqui."
+
+msgid "access.conf stanzas"
+msgstr "Estâncias do access.conf"
+
+msgid "fwknopd.conf config options"
+msgstr "Opções do fwknopd.conf"
diff --git a/applications/luci-app-fwknopd/po/templates/fwknopd.pot b/applications/luci-app-fwknopd/po/templates/fwknopd.pot
index 4fb616f25..1010ba70e 100644
--- a/applications/luci-app-fwknopd/po/templates/fwknopd.pot
+++ b/applications/luci-app-fwknopd/po/templates/fwknopd.pot
@@ -6,6 +6,9 @@ msgid ""
"instead of just to it."
msgstr ""
+msgid "Allow SPA clients to request forwarding destination by DNS name."
+msgstr ""
+
msgid "Base 64 key"
msgstr ""
@@ -34,12 +37,6 @@ msgstr ""
msgid "Enable config overwrite"
msgstr ""
-msgid "Enter custom access.conf variables below:"
-msgstr ""
-
-msgid "Enter custom fwknopd.conf variables below:"
-msgstr ""
-
msgid "Firewall Knock Daemon"
msgstr ""
diff --git a/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd b/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd
index 01b85de25..65ef01245 100644
--- a/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd
+++ b/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd
@@ -16,6 +16,7 @@ uci set fwknopd.@access[0].hkeytype='Base 64 key'
uci set fwknopd.@access[0].KEY_BASE64=`fwknopd --key-gen | awk '/^KEY/ {print $2;}'`
uci set fwknopd.@access[0].HMAC_KEY_BASE64=`fwknopd --key-gen | awk '/^HMAC/ {print $2;}'`
uci set fwknopd.@config[0].ENABLE_IPT_FORWARDING='y'
+uci set fwknopd.@config[0].ENABLE_NAT_DNS='y'
uci commit fwknopd
rm -f /tmp/luci-indexcache
diff --git a/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh b/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh
index 97493dafe..abca5d3e5 100644
--- a/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh
+++ b/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh
@@ -1,9 +1,13 @@
#!/bin/sh
+entry_num=0
+if [ "$1" != "" ]; then
+entry_num=$1
+fi
-key_base64=$(uci get fwknopd.@access[0].KEY_BASE64)
-key=$(uci get fwknopd.@access[0].KEY)
-hmac_key_base64=$(uci get fwknopd.@access[0].HMAC_KEY_BASE64)
-hmac_key=$(uci get fwknopd.@access[0].HMAC_KEY)
+key_base64=$(uci get fwknopd.@access[$entry_num].KEY_BASE64)
+key=$(uci get fwknopd.@access[$entry_num].KEY)
+hmac_key_base64=$(uci get fwknopd.@access[$entry_num].HMAC_KEY_BASE64)
+hmac_key=$(uci get fwknopd.@access[$entry_num].HMAC_KEY)
if [ $key_base64 != "" ]; then
qr="KEY_BASE64:$key_base64"
diff --git a/applications/luci-app-hd-idle/luasrc/controller/hd_idle.lua b/applications/luci-app-hd-idle/luasrc/controller/hd_idle.lua
index f273a551d..9a981acac 100644
--- a/applications/luci-app-hd-idle/luasrc/controller/hd_idle.lua
+++ b/applications/luci-app-hd-idle/luasrc/controller/hd_idle.lua
@@ -10,6 +10,6 @@ function index()
local page
- page = entry({"admin", "services", "hd_idle"}, cbi("hd_idle"), _("hd-idle"), 60)
+ page = entry({"admin", "services", "hd_idle"}, cbi("hd_idle"), _("HDD Idle"), 60)
page.dependent = true
end
diff --git a/applications/luci-app-hd-idle/luasrc/model/cbi/hd_idle.lua b/applications/luci-app-hd-idle/luasrc/model/cbi/hd_idle.lua
index 70b04af90..c15fdc028 100644
--- a/applications/luci-app-hd-idle/luasrc/model/cbi/hd_idle.lua
+++ b/applications/luci-app-hd-idle/luasrc/model/cbi/hd_idle.lua
@@ -3,8 +3,8 @@
require("nixio.fs")
-m = Map("hd-idle", "hd-idle",
- translate("hd-idle is a utility program for spinning-down external " ..
+m = Map("hd-idle", translate("HDD Idle"),
+ translate("HDD Idle is a utility program for spinning-down external " ..
"disks after a period of idle time."))
s = m:section(TypedSection, "hd-idle", translate("Settings"))
@@ -18,9 +18,9 @@ for dev in nixio.fs.glob("/dev/[sh]d[a-z]") do
disk:value(nixio.fs.basename(dev))
end
-s:option(Value, "idle_time_interval", translate("Idle-time")).default = 10
+s:option(Value, "idle_time_interval", translate("Idle time")).default = 10
s.rmempty = true
-unit = s:option(ListValue, "idle_time_unit", translate("Idle-time unit"))
+unit = s:option(ListValue, "idle_time_unit", translate("Idle time unit"))
unit.default = "minutes"
unit:value("minutes", translate("min"))
unit:value("hours", translate("h"))
diff --git a/applications/luci-app-hd-idle/po/ca/hd_idle.po b/applications/luci-app-hd-idle/po/ca/hd_idle.po
index 29618a896..10ca4cd1c 100644
--- a/applications/luci-app-hd-idle/po/ca/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/ca/hd_idle.po
@@ -21,10 +21,20 @@ msgstr "Disc"
msgid "Enable"
msgstr "Habilita"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle és un programa per ralentitzar els discos externs després d'un "
+"període de temps inactiu."
+
+msgid "Idle time"
msgstr "Temps d'inactivitat"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unitat de temps d'inactivitat"
msgid "Settings"
@@ -34,16 +44,6 @@ msgstr "Ajusts"
msgid "h"
msgstr "h"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle és un programa per ralentitzar els discos externs després d'un "
-"període de temps inactiu."
-
# Minutes (not minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/cs/hd_idle.po b/applications/luci-app-hd-idle/po/cs/hd_idle.po
index e2deb9b20..b77539278 100644
--- a/applications/luci-app-hd-idle/po/cs/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/cs/hd_idle.po
@@ -21,10 +21,20 @@ msgstr "Disk"
msgid "Enable"
msgstr "Povolit"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle je utilita pro vypnutí externích pevných disků po urÄité dobÄ› "
+"neÄinnosti."
+
+msgid "Idle time"
msgstr "ÄŒas neÄinnosti"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "ÄŒas neÄinnosti - jednotka"
msgid "Settings"
@@ -34,16 +44,6 @@ msgstr "Nastavení"
msgid "h"
msgstr "h"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle je utilita pro vypnutí externích pevných disků po urÄité dobÄ› "
-"neÄinnosti."
-
# Minut (ne minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/de/hd_idle.po b/applications/luci-app-hd-idle/po/de/hd_idle.po
index fa5489657..79fa603f0 100644
--- a/applications/luci-app-hd-idle/po/de/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/de/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "Festplatte"
msgid "Enable"
msgstr "Aktivieren"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle ist ein Hilfsprogramm um externe Festplatten nach einer "
+"festgelegten Leerlaufzeit herunter zu fahren."
+
+msgid "Idle time"
msgstr "Leerlaufzeit"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Leerlaufzeiteinheit"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "Einstellungen"
msgid "h"
msgstr "Stunden"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle ist ein Hilfsprogramm um externe Festplatten nach einer festgelegten "
-"Leerlaufzeit herunter zu fahren."
-
# Minutes (not minimum)
msgid "min"
msgstr "Minuten"
diff --git a/applications/luci-app-hd-idle/po/el/hd_idle.po b/applications/luci-app-hd-idle/po/el/hd_idle.po
index 4d7c23dfa..e4f006adf 100644
--- a/applications/luci-app-hd-idle/po/el/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/el/hd_idle.po
@@ -19,10 +19,18 @@ msgstr "Δίσκος"
msgid "Enable"
msgstr "ΕνεÏγοποίηση"
-msgid "Idle-time"
+msgid "HDD Idle"
msgstr ""
-msgid "Idle-time unit"
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+
+msgid "Idle time"
+msgstr ""
+
+msgid "Idle time unit"
msgstr ""
msgid "Settings"
@@ -32,14 +40,6 @@ msgstr "Ρυθμίσεις"
msgid "h"
msgstr "ω"
-msgid "hd-idle"
-msgstr ""
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-
# Minutes (not minimum)
msgid "min"
msgstr "λεπτά"
diff --git a/applications/luci-app-hd-idle/po/en/hd_idle.po b/applications/luci-app-hd-idle/po/en/hd_idle.po
index 7aa4db5fe..3ed519f18 100644
--- a/applications/luci-app-hd-idle/po/en/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/en/hd_idle.po
@@ -17,11 +17,21 @@ msgstr "Disk"
msgid "Enable"
msgstr "Enable"
-msgid "Idle-time"
-msgstr "Idle-time"
+msgid "HDD Idle"
+msgstr ""
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+
+msgid "Idle time"
+msgstr "Idle time"
-msgid "Idle-time unit"
-msgstr "Idle-time unit"
+msgid "Idle time unit"
+msgstr "Idle time unit"
msgid "Settings"
msgstr "Settings"
@@ -30,16 +40,6 @@ msgstr "Settings"
msgid "h"
msgstr "h"
-msgid "hd-idle"
-msgstr ""
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-
# Minutes (not minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/es/hd_idle.po b/applications/luci-app-hd-idle/po/es/hd_idle.po
index d2bb017a0..09dd3b80d 100644
--- a/applications/luci-app-hd-idle/po/es/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/es/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "Disco"
msgid "Enable"
msgstr "Activar"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle es un programa que gestiona el reposo de discos externos tras un "
+"tiempo de inactividad."
+
+msgid "Idle time"
msgstr "Tiempo de inactividad"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unidad de tiempo"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "Configuración"
msgid "h"
msgstr "h"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle es un programa que gestiona el reposo de discos externos tras un "
-"tiempo de inactividad."
-
# Minutes (not minimum)
msgid "min"
msgstr "minutos"
diff --git a/applications/luci-app-hd-idle/po/fr/hd_idle.po b/applications/luci-app-hd-idle/po/fr/hd_idle.po
index 00c092d48..ea30bf192 100644
--- a/applications/luci-app-hd-idle/po/fr/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/fr/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "Disque"
msgid "Enable"
msgstr "Activer"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle est un utilitaire pour arrêter la rotation des disques externes "
+"après une période d'inactivité."
+
+msgid "Idle time"
msgstr "Temps d'inactivité"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unité de temps"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "Réglages"
msgid "h"
msgstr "h"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle est un utilitaire pour arrêter la rotation des disques externes "
-"après une période d'inactivité."
-
# Minutes (not minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/he/hd_idle.po b/applications/luci-app-hd-idle/po/he/hd_idle.po
index 0ffde9045..8a73d5f9b 100644
--- a/applications/luci-app-hd-idle/po/he/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/he/hd_idle.po
@@ -21,10 +21,20 @@ msgstr "כונן"
msgid "Enable"
msgstr "×פשר"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr ""
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle ×”×™× ×” תוכנת שירות שמטרתה להקטין ×ת מהירות הסיבוב של ×›×•× × ×™× ×—×™×¦×•× ×™×™× "
+"ל×חר זמן ×ž×¡×•×™× ×©×œ חוסר פעילות."
+
+msgid "Idle time"
msgstr "זמן חוסר פעילות"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "יחידת זמן חוסר פעילות"
msgid "Settings"
@@ -34,16 +44,6 @@ msgstr "הגדרות"
msgid "h"
msgstr "ש'"
-msgid "hd-idle"
-msgstr ""
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle ×”×™× ×” תוכנת שירות שמטרתה להקטין ×ת מהירות הסיבוב של ×›×•× × ×™× ×—×™×¦×•× ×™×™× "
-"ל×חר זמן ×ž×¡×•×™× ×©×œ חוסר פעילות."
-
# Minutes (not minimum)
msgid "min"
msgstr "דק'"
diff --git a/applications/luci-app-hd-idle/po/hu/hd_idle.po b/applications/luci-app-hd-idle/po/hu/hd_idle.po
index 543a8fc2c..d902ee0f8 100644
--- a/applications/luci-app-hd-idle/po/hu/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/hu/hd_idle.po
@@ -21,10 +21,20 @@ msgstr "Lemez"
msgid "Enable"
msgstr "Engedélyezés"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle egy a külső lemezek adott üresjárati idő után történő leállítására "
+"szolgáló segédprogram."
+
+msgid "Idle time"
msgstr "Üresjárati idő"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Üresjárati idő egysége"
msgid "Settings"
@@ -34,16 +44,6 @@ msgstr "Beállítások"
msgid "h"
msgstr "óra"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle egy a külső lemezek adott üresjárati idő után történő leállítására "
-"szolgáló segédprogram."
-
# Minutes (not minimum)
msgid "min"
msgstr "perc"
diff --git a/applications/luci-app-hd-idle/po/it/hd_idle.po b/applications/luci-app-hd-idle/po/it/hd_idle.po
index ffd118dd1..63751c332 100644
--- a/applications/luci-app-hd-idle/po/it/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/it/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "Disco"
msgid "Enable"
msgstr "Abilita"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle è un programma per mettere in standby i dischi esterni dopo un "
+"periodo di inattività."
+
+msgid "Idle time"
msgstr "Tempo di inattività"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unità di misura del tempo di inattività"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "Opzioni"
msgid "h"
msgstr "ora/e"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"HD-idle è un programma per mettere in standby i dischi esterni dopo un "
-"periodo di inattività."
-
# Minutes (not minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/ja/hd_idle.po b/applications/luci-app-hd-idle/po/ja/hd_idle.po
index 9e724ebeb..6023778c8 100644
--- a/applications/luci-app-hd-idle/po/ja/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/ja/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "ディスク"
msgid "Enable"
msgstr "有効"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idleã¯ã‚¢ã‚¤ãƒ‰ãƒ«æ™‚ã«å¤–部ディスクをスピンダウンã•ã›ã‚‹ãŸã‚ã®ã€ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£"
+"プログラムã§ã™ã€‚"
+
+msgid "Idle time"
msgstr "アイドル時間"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "アイドル時間 (å˜ä½)"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "設定"
msgid "h"
msgstr "時"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idleã¯ã‚¢ã‚¤ãƒ‰ãƒ«æ™‚ã«å¤–部ディスクをスピンダウンã•ã›ã‚‹ãŸã‚ã®ã€ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ãƒ—"
-"ログラムã§ã™ã€‚"
-
# Minutes (not minimum)
msgid "min"
msgstr "分"
diff --git a/applications/luci-app-hd-idle/po/ms/hd_idle.po b/applications/luci-app-hd-idle/po/ms/hd_idle.po
index 45402b8c5..361f1ac54 100644
--- a/applications/luci-app-hd-idle/po/ms/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/ms/hd_idle.po
@@ -18,25 +18,25 @@ msgstr ""
msgid "Enable"
msgstr ""
-msgid "Idle-time"
+msgid "HDD Idle"
msgstr ""
-msgid "Idle-time unit"
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
msgstr ""
-msgid "Settings"
+msgid "Idle time"
msgstr ""
-# Hours
-msgid "h"
+msgid "Idle time unit"
msgstr ""
-msgid "hd-idle"
+msgid "Settings"
msgstr ""
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
+# Hours
+msgid "h"
msgstr ""
# Minutes (not minimum)
diff --git a/applications/luci-app-hd-idle/po/no/hd_idle.po b/applications/luci-app-hd-idle/po/no/hd_idle.po
index dc0c2f890..6482a291e 100644
--- a/applications/luci-app-hd-idle/po/no/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/no/hd_idle.po
@@ -10,10 +10,20 @@ msgstr "Disk"
msgid "Enable"
msgstr "Aktiver"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle er et verktøy for å spinne ned eksterne disker etter en periode med "
+"inaktivitet."
+
+msgid "Idle time"
msgstr "Tid inaktiv"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Tidsenhet"
msgid "Settings"
@@ -22,16 +32,6 @@ msgstr "Innstillinger"
msgid "h"
msgstr "timer"
-msgid "hd-idle"
-msgstr "Hd-Idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle er et verktøy for å spinne ned eksterne disker etter en periode med "
-"inaktivitet."
-
msgid "min"
msgstr "minutter"
diff --git a/applications/luci-app-hd-idle/po/pl/hd_idle.po b/applications/luci-app-hd-idle/po/pl/hd_idle.po
index c6522c19c..29c286f12 100644
--- a/applications/luci-app-hd-idle/po/pl/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/pl/hd_idle.po
@@ -20,10 +20,20 @@ msgstr "Dysk"
msgid "Enable"
msgstr "WÅ‚Ä…cz"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle jest narzędziem do zwalniania obrotów zewnętrznych dysków po "
+"określonym czasie bezczynności."
+
+msgid "Idle time"
msgstr "Czas bezczynności"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Jednostka czasu bezczynności"
msgid "Settings"
@@ -33,16 +43,6 @@ msgstr "Ustawienia"
msgid "h"
msgstr "godz."
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle jest narzędziem do zwalniania obrotów zewnętrznych dysków po "
-"określonym czasie bezczynności."
-
# Minutes (not minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/pt-br/hd_idle.po b/applications/luci-app-hd-idle/po/pt-br/hd_idle.po
index 0aaca9389..adcf063dc 100644
--- a/applications/luci-app-hd-idle/po/pt-br/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/pt-br/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "Disco"
msgid "Enable"
msgstr "Habilitar"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle é um programa utilitário para ativar o modo \"economia de energia"
+"\" (spinning-down) de discos externos após um período de ociosidade."
+
+msgid "Idle time"
msgstr "Tempo de ociosidade"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unidade do tempo da ociosidade"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "Configurações"
msgid "h"
msgstr "horas"
-msgid "hd-idle"
-msgstr "Hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"Hd-idle é um programa utilitário para ativar o modo \"economia de energia"
-"\" (spinning-down) de discos externos após um período de ociosidade."
-
# Minutes (not minimum)
msgid "min"
msgstr "minutos"
diff --git a/applications/luci-app-hd-idle/po/pt/hd_idle.po b/applications/luci-app-hd-idle/po/pt/hd_idle.po
index 16cb085b1..81a6ae27e 100644
--- a/applications/luci-app-hd-idle/po/pt/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/pt/hd_idle.po
@@ -19,10 +19,20 @@ msgstr "Disco"
msgid "Enable"
msgstr "Ativar"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle é um programa utilitário para activar o modo \"economia de energia"
+"\" (spinning-down) de discos externos após um período de ociosidade."
+
+msgid "Idle time"
msgstr "Tempo de ociosidade"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unidade de tempo de ociosidade"
msgid "Settings"
@@ -32,16 +42,6 @@ msgstr "Configurações"
msgid "h"
msgstr "h"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle é um programa utilitário para activar o modo \"economia de energia"
-"\" (spinning-down) de discos externos após um período de ociosidade."
-
# Minutes (not minimum)
msgid "min"
msgstr "min"
diff --git a/applications/luci-app-hd-idle/po/ro/hd_idle.po b/applications/luci-app-hd-idle/po/ro/hd_idle.po
index ae6a8b090..31311cec0 100644
--- a/applications/luci-app-hd-idle/po/ro/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/ro/hd_idle.po
@@ -22,10 +22,20 @@ msgstr "Disc"
msgid "Enable"
msgstr "Activeaza"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle este un utilitar pentru a oprit din rotatie hard disc-urile externe "
+"dupa o anumita perioada de inactivitate."
+
+msgid "Idle time"
msgstr "Timp de inactivitate"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Unitatea de timp pentru masurarea inactivitatii"
msgid "Settings"
@@ -35,16 +45,6 @@ msgstr "Setari"
msgid "h"
msgstr "ore"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle este un utilitar pentru a oprit din rotatie hard disc-urile externe "
-"dupa o anumita perioada de inactivitate."
-
# Minutes (not minimum)
msgid "min"
msgstr "minute"
diff --git a/applications/luci-app-hd-idle/po/ru/hd_idle.po b/applications/luci-app-hd-idle/po/ru/hd_idle.po
index 45d4a519b..e58a32f1d 100644
--- a/applications/luci-app-hd-idle/po/ru/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/ru/hd_idle.po
@@ -21,10 +21,20 @@ msgstr "ДиÑк"
msgid "Enable"
msgstr "Включить"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"Утилита HDD Idle позволÑет замедлÑÑ‚ÑŒ внешние диÑки поÑле определённого "
+"времени бездейÑтвиÑ."
+
+msgid "Idle time"
msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð±ÐµÐ·Ð´ÐµÐ¹ÑтвиÑ"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "Единицы времени бездейÑтвиÑ"
msgid "Settings"
@@ -34,16 +44,6 @@ msgstr "ÐаÑтройки"
msgid "h"
msgstr "ч"
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"Утилита hd-idle позволÑет замедлÑÑ‚ÑŒ внешние диÑки поÑле определённого "
-"времени бездейÑтвиÑ."
-
# Minutes (not minimum)
msgid "min"
msgstr "мин"
diff --git a/applications/luci-app-hd-idle/po/sk/hd_idle.po b/applications/luci-app-hd-idle/po/sk/hd_idle.po
index 0ae82d8f9..aa82e966b 100644
--- a/applications/luci-app-hd-idle/po/sk/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/sk/hd_idle.po
@@ -14,24 +14,24 @@ msgstr ""
msgid "Enable"
msgstr ""
-msgid "Idle-time"
+msgid "HDD Idle"
msgstr ""
-msgid "Idle-time unit"
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
msgstr ""
-msgid "Settings"
+msgid "Idle time"
msgstr ""
-msgid "h"
+msgid "Idle time unit"
msgstr ""
-msgid "hd-idle"
+msgid "Settings"
msgstr ""
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
+msgid "h"
msgstr ""
msgid "min"
diff --git a/applications/luci-app-hd-idle/po/sv/hd_idle.po b/applications/luci-app-hd-idle/po/sv/hd_idle.po
index 1d63095c4..f2ce8f101 100644
--- a/applications/luci-app-hd-idle/po/sv/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/sv/hd_idle.po
@@ -15,24 +15,24 @@ msgstr ""
msgid "Enable"
msgstr ""
-msgid "Idle-time"
+msgid "HDD Idle"
msgstr ""
-msgid "Idle-time unit"
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
msgstr ""
-msgid "Settings"
+msgid "Idle time"
msgstr ""
-msgid "h"
+msgid "Idle time unit"
msgstr ""
-msgid "hd-idle"
+msgid "Settings"
msgstr ""
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
+msgid "h"
msgstr ""
msgid "min"
diff --git a/applications/luci-app-hd-idle/po/templates/hd_idle.pot b/applications/luci-app-hd-idle/po/templates/hd_idle.pot
index 56079ed2b..b8aedcd37 100644
--- a/applications/luci-app-hd-idle/po/templates/hd_idle.pot
+++ b/applications/luci-app-hd-idle/po/templates/hd_idle.pot
@@ -7,24 +7,24 @@ msgstr ""
msgid "Enable"
msgstr ""
-msgid "Idle-time"
+msgid "HDD Idle"
msgstr ""
-msgid "Idle-time unit"
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
msgstr ""
-msgid "Settings"
+msgid "Idle time"
msgstr ""
-msgid "h"
+msgid "Idle time unit"
msgstr ""
-msgid "hd-idle"
+msgid "Settings"
msgstr ""
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
+msgid "h"
msgstr ""
msgid "min"
diff --git a/applications/luci-app-hd-idle/po/tr/hd_idle.po b/applications/luci-app-hd-idle/po/tr/hd_idle.po
index f9ace872a..aed11b6c8 100644
--- a/applications/luci-app-hd-idle/po/tr/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/tr/hd_idle.po
@@ -21,10 +21,20 @@ msgstr "Disk"
msgid "Enable"
msgstr "Kullanıma Aç"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "Harddisk-Park"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"Harddisk-Park belirli bir zaman sonra diskleri beklemeye alan bir yardımcı "
+"programdır"
+
+msgid "Idle time"
msgstr "Bekleme Zamanı"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "bekleme zamanı birimi"
msgid "Settings"
@@ -34,16 +44,6 @@ msgstr "Ayarlar"
msgid "h"
msgstr "s"
-msgid "hd-idle"
-msgstr "Harddisk-Park"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"Harddisk-Park belirli bir zaman sonra diskleri beklemeye alan bir yardımcı "
-"programdır"
-
# Minutes (not minimum)
msgid "min"
msgstr "d"
diff --git a/applications/luci-app-hd-idle/po/uk/hd_idle.po b/applications/luci-app-hd-idle/po/uk/hd_idle.po
index 129fd7b4b..3d8e45c91 100644
--- a/applications/luci-app-hd-idle/po/uk/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/uk/hd_idle.po
@@ -22,10 +22,19 @@ msgstr "ДиÑк"
msgid "Enable"
msgstr "Ðктивувати"
-msgid "Idle-time"
+#, fuzzy
+msgid "HDD Idle"
+msgstr "HD-проÑтій"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+
+msgid "Idle time"
msgstr "Ð§Ð°Ñ Ð¿Ñ€Ð¾Ñтою"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr ""
msgid "Settings"
@@ -35,15 +44,6 @@ msgstr "ÐалаштуваннÑ"
msgid "h"
msgstr ""
-#, fuzzy
-msgid "hd-idle"
-msgstr "HD-проÑтій"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-
# Minutes (not minimum)
msgid "min"
msgstr "хв"
diff --git a/applications/luci-app-hd-idle/po/vi/hd_idle.po b/applications/luci-app-hd-idle/po/vi/hd_idle.po
index 03ee2c1ba..a5d4ffeea 100644
--- a/applications/luci-app-hd-idle/po/vi/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/vi/hd_idle.po
@@ -20,12 +20,22 @@ msgstr "á»” Ä‘Ä©a"
msgid "Enable"
msgstr "Kích hoạt debug"
+msgid "HDD Idle"
+msgstr "HDD Idle"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr ""
+"HDD Idle là một chương trình tiện ích để quay các đĩa ngoài sau một khoảng "
+"thá»i gian idle."
+
#, fuzzy
-msgid "Idle-time"
+msgid "Idle time"
msgstr "Thá»i gian Idle"
#, fuzzy
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "ÄÆ¡n vị thá»i gian Idle"
msgid "Settings"
@@ -35,16 +45,6 @@ msgstr "Sắp đặt"
msgid "h"
msgstr ""
-msgid "hd-idle"
-msgstr "hd-idle"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr ""
-"hd-idle là một chương trình tiện ích để quay các đĩa ngoài sau một khoảng "
-"thá»i gian idle."
-
# Minutes (not minimum)
msgid "min"
msgstr ""
diff --git a/applications/luci-app-hd-idle/po/zh-cn/hd_idle.po b/applications/luci-app-hd-idle/po/zh-cn/hd_idle.po
index 8bc14dcc8..d67abfd59 100644
--- a/applications/luci-app-hd-idle/po/zh-cn/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/zh-cn/hd_idle.po
@@ -19,10 +19,18 @@ msgstr "硬盘"
msgid "Enable"
msgstr "å¼€å¯"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "硬盘休眠"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr "硬盘休眠是一个让硬盘在空闲一段时间åŽä¼‘眠的工具"
+
+msgid "Idle time"
msgstr "空闲时间"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "空闲时间å•ä½"
msgid "Settings"
@@ -32,14 +40,6 @@ msgstr "设置"
msgid "h"
msgstr "å°æ—¶"
-msgid "hd-idle"
-msgstr "硬盘休眠"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr "硬盘休眠是一个让硬盘在空闲一段时间åŽä¼‘眠的工具"
-
# Minutes (not minimum)
msgid "min"
msgstr "分钟"
diff --git a/applications/luci-app-hd-idle/po/zh-tw/hd_idle.po b/applications/luci-app-hd-idle/po/zh-tw/hd_idle.po
index bd69785e3..dee14cb08 100644
--- a/applications/luci-app-hd-idle/po/zh-tw/hd_idle.po
+++ b/applications/luci-app-hd-idle/po/zh-tw/hd_idle.po
@@ -17,10 +17,18 @@ msgstr "ç£ç¢Ÿ"
msgid "Enable"
msgstr "啟用"
-msgid "Idle-time"
+msgid "HDD Idle"
+msgstr "硬碟休眠"
+
+msgid ""
+"HDD Idle is a utility program for spinning-down external disks after a "
+"period of idle time."
+msgstr "硬碟休眠是控制當硬碟閒置一段時間後進入休眠模å¼çš„工具"
+
+msgid "Idle time"
msgstr "休眠時間"
-msgid "Idle-time unit"
+msgid "Idle time unit"
msgstr "休眠時間單ä½"
msgid "Settings"
@@ -29,14 +37,6 @@ msgstr "設定"
msgid "h"
msgstr "å°æ™‚"
-msgid "hd-idle"
-msgstr "硬碟休眠"
-
-msgid ""
-"hd-idle is a utility program for spinning-down external disks after a period "
-"of idle time."
-msgstr "硬碟休眠是控制當硬碟閒置一段時間後進入休眠模å¼çš„工具"
-
msgid "min"
msgstr "分é˜"
diff --git a/applications/luci-app-lxc/Makefile b/applications/luci-app-lxc/Makefile
new file mode 100644
index 000000000..9f313dfb1
--- /dev/null
+++ b/applications/luci-app-lxc/Makefile
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2017 Dan Luedtke <mail@danrl.com>
+#
+# This is free software, licensed under the Apache License, Version 2.0 .
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=LXC management Web UI
+LUCI_DEPENDS:=+luci-mod-admin-full +lxc +lxc-create +liblxc +rpcd-mod-lxc +getopt +xz
+LUCI_PKGARCH:=all
+
+PKG_MAINTAINER:=Petar Koretic <petar.koretic@sartura.hr>
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/green.gif b/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/green.gif
new file mode 100644
index 000000000..d09febf12
--- /dev/null
+++ b/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/green.gif
Binary files differ
diff --git a/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/purple.gif b/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/purple.gif
new file mode 100644
index 000000000..f0d68cc8b
--- /dev/null
+++ b/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/purple.gif
Binary files differ
diff --git a/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/red.gif b/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/red.gif
new file mode 100644
index 000000000..c1b39bbed
--- /dev/null
+++ b/applications/luci-app-lxc/htdocs/luci-static/resources/cbi/red.gif
Binary files differ
diff --git a/applications/luci-app-lxc/luasrc/controller/lxc.lua b/applications/luci-app-lxc/luasrc/controller/lxc.lua
new file mode 100644
index 000000000..ea7adbafb
--- /dev/null
+++ b/applications/luci-app-lxc/luasrc/controller/lxc.lua
@@ -0,0 +1,167 @@
+--[[
+
+LuCI LXC module
+
+Copyright (C) 2014, Cisco Systems, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Petar Koretic <petar.koretic@sartura.hr>
+
+]]--
+
+module("luci.controller.lxc", package.seeall)
+
+require "ubus"
+local conn = ubus.connect()
+if not conn then
+ error("Failed to connect to ubus")
+end
+
+
+function fork_exec(command)
+ local pid = nixio.fork()
+ if pid > 0 then
+ return
+ elseif pid == 0 then
+ -- change to root dir
+ nixio.chdir("/")
+
+ -- patch stdin, out, err to /dev/null
+ local null = nixio.open("/dev/null", "w+")
+ if null then
+ nixio.dup(null, nixio.stderr)
+ nixio.dup(null, nixio.stdout)
+ nixio.dup(null, nixio.stdin)
+ if null:fileno() > 2 then
+ null:close()
+ end
+ end
+
+ -- replace with target command
+ nixio.exec("/bin/sh", "-c", command)
+ end
+end
+
+function index()
+ page = node("admin", "services", "lxc")
+ page.target = cbi("lxc")
+ page.title = _("LXC Containers")
+ page.order = 70
+
+ page = entry({"admin", "services", "lxc_create"}, call("lxc_create"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "services", "lxc_action"}, call("lxc_action"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "services", "lxc_get_downloadable"}, call("lxc_get_downloadable"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "services", "lxc_configuration_get"}, call("lxc_configuration_get"), nil)
+ page.leaf = true
+
+ page = entry({"admin", "services", "lxc_configuration_set"}, call("lxc_configuration_set"), nil)
+ page.leaf = true
+
+end
+
+function lxc_get_downloadable()
+ luci.http.prepare_content("application/json")
+
+ local f = io.popen('uname -m', 'r')
+ local target = f:read('*a')
+ f:close()
+ target = target:gsub("^%s*(.-)%s*$", "%1")
+
+ local templates = {}
+
+ local f = io.popen('lxc-create -n just_want_to_list_available_lxc_templates -t download -- --list', 'r')
+
+ for line in f:lines() do
+ local dist,version = line:match("^(%S+)%s+(%S+)%s+" .. target .. "%s+default%s+%S+$")
+ if dist~=nil and version~=nil then templates[#templates + 1] = dist .. ":" .. version end
+ end
+
+ f:close()
+ luci.http.write_json(templates)
+end
+
+function lxc_create(lxc_name, lxc_template)
+ luci.http.prepare_content("text/plain")
+
+ local uci = require("uci").cursor()
+
+ local url = uci:get("lxc", "lxc", "url")
+
+ if not pcall(dofile, "/etc/openwrt_release") then
+ return luci.http.write("1")
+ end
+
+ local f = io.popen('uname -m', 'r')
+ local target = f:read('*a')
+ f:close()
+ target = target:gsub("^%s*(.-)%s*$", "%1")
+
+ local lxc_dist = lxc_template:gsub("(.*):(.*)", '%1')
+ local lxc_release = lxc_template:gsub("(.*):(.*)", '%2')
+
+ local data = conn:call("lxc", "create", { name = lxc_name, template = "download", args = { "--server", url, "--no-validate", "--dist", lxc_dist, "--release", lxc_release, "--arch", target } } )
+
+ luci.http.write(data)
+end
+
+function lxc_action(lxc_action, lxc_name)
+ luci.http.prepare_content("application/json")
+
+ local data, ec = conn:call("lxc", lxc_action, lxc_name and { name = lxc_name} or {} )
+
+ luci.http.write_json(ec and {} or data)
+end
+
+function lxc_get_config_path()
+ local f = io.open("/etc/lxc/lxc.conf", "r")
+ local content = f:read("*all")
+ f:close()
+ local ret = content:match('^%s*lxc.lxcpath%s*=%s*([^%s]*)')
+ if ret then
+ return ret .. "/"
+ else
+ return "/srv/lxc/"
+ end
+end
+
+function lxc_configuration_get(lxc_name)
+ luci.http.prepare_content("text/plain")
+
+ local f = io.open(lxc_get_config_path() .. lxc_name .. "/config", "r")
+ local content = f:read("*all")
+ f:close()
+
+ luci.http.write(content)
+end
+
+function lxc_configuration_set(lxc_name)
+ luci.http.prepare_content("text/plain")
+
+ local lxc_configuration = luci.http.formvalue("lxc_configuration")
+
+ if lxc_configuration == nil then
+ return luci.http.write("1")
+ end
+
+ local f, err = io.open(lxc_get_config_path() .. lxc_name .. "/config","w+")
+ if not f then
+ return luci.http.write("2")
+ end
+
+ f:write(lxc_configuration)
+ f:close()
+
+ luci.http.write("0")
+end
+
diff --git a/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua b/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua
new file mode 100644
index 000000000..ac0fdff33
--- /dev/null
+++ b/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua
@@ -0,0 +1,31 @@
+--[[
+
+LuCI LXC module
+
+Copyright (C) 2014, Cisco Systems, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Petar Koretic <petar.koretic@sartura.hr>
+
+]]--
+
+local fs = require "nixio.fs"
+
+m = Map("lxc", translate("LXC Containers"))
+
+if fs.access("/etc/config/lxc") then
+ m:section(SimpleSection).template = "lxc"
+
+ s = m:section(TypedSection, "lxc", translate("Options"))
+ s.anonymous = true
+ s.addremove = false
+
+ s:option(Value, "url", translate("Containers URL"))
+end
+
+return m
diff --git a/applications/luci-app-lxc/luasrc/view/lxc.htm b/applications/luci-app-lxc/luasrc/view/lxc.htm
new file mode 100644
index 000000000..edfff8e06
--- /dev/null
+++ b/applications/luci-app-lxc/luasrc/view/lxc.htm
@@ -0,0 +1,458 @@
+<%#
+
+LuCI LXC module
+
+Copyright (C) 2014, Cisco Systems, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Petar Koretic <petar.koretic@sartura.hr>
+
+-%>
+
+<fieldset class="cbi-section">
+ <legend><%:Available Containers%></legend>
+ <div class="cbi-section-node">
+ <table id="t_lxc_list" class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:Name%></th>
+ <th class="cbi-section-table-cell"><%:Status%></th>
+ <th class="cbi-section-table-cell"><%:Actions%></th>
+ </tr>
+ </table>
+ </div>
+</fieldset>
+
+<fieldset class="cbi-section">
+ <span id="lxc-list-output"></span>
+</fieldset>
+
+<hr/>
+<fieldset class="cbi-section">
+ <legend><%:Create New Container%></legend>
+ <div class="cbi-section-node">
+ <table id="t_lxc_create" class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:Name%></th>
+ <th class="cbi-section-table-cell"><%:Template%></th>
+ <th class="cbi-section-table-cell"><%:Actions%></th>
+ </tr>
+ <tr id="tr_holder">
+ <td>
+ <input type="text" id="tx_name" placeholder="<%:Enter new name%>" value='' />
+ </td>
+ <td>
+ <select id="s_template" class="cbi-input-select cbi-button">
+ </select>
+ </td>
+ <td>
+ <input type="button" id="bt_create" value="<%:Create%>" onclick="lxc_create(tr_holder)" class="cbi-button cbi-button-add" />
+ <span id="lxc-add-loader" style="display:inline-block; width:16px; height:16px; margin:0 5px"></span>
+ </td>
+ </tr>
+ </table>
+ </div>
+</fieldset>
+
+<fieldset class="cbi-section">
+ <span id="lxc-add-output"></span>
+</fieldset>
+
+<hr/>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+
+ window.img = { "red" : "<%=resource%>/cbi/red.gif", "green" : "<%=resource%>/cbi/green.gif", "purple" : "<%=resource%>/cbi/purple.gif" }
+ window.states = { "STOPPED" : "red", "RUNNING" : "green", "FROZEN" : "purple"}
+
+ var t_lxc_list = document.getElementById('t_lxc_list');
+ var loader_html = '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" width="16" height="16" style="vertical-align:middle" /> ';
+ var timeout_msg = 0
+ var output_list = document.getElementById("lxc-list-output")
+ var output_add = document.getElementById("lxc-add-output")
+ var loader_add = document.getElementById("lxc-add-loader")
+
+ function lxc_create(tr)
+ {
+ var lxc_name = tr.querySelector("#tx_name").value.trim()
+ var lxc_template = tr.querySelector("#s_template").value
+ var bt_create = tr.querySelector("#bt_create")
+
+ if (t_lxc_list.querySelector("[data-id='" + lxc_name + "']") != null)
+ return info_message(output_add, "Container with that name already exists!", 4000)
+
+ bt_create.disabled = true
+ output_add.innerHTML = ''
+
+ if (!lxc_name || !lxc_name.length)
+ {
+ bt_create.disabled = false
+ return info_message(output_add, "Name cannot be empty!", 4000)
+ }
+
+ loading(loader_add)
+
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_create/' + '%h/%h'.format(lxc_name, lxc_template) , null,
+ function(x)
+ {
+ bt_create.disabled = false
+ loading(loader_add, 0)
+
+ if (!x)
+ info_message(output_add, "Container creation failed!")
+ })
+ }
+
+ function lxc_create_template(lxc_name, lxc_state)
+ {
+ var info_row = t_lxc_list.querySelector("#empty")
+ if (info_row)
+ t_lxc_list.deleteRow(1)
+
+ var actions = ''
+ actions += '<input type="button" onclick="action_handler(this)" data-action="start" value="<%:Start%>" class="cbi-button cbi-button-apply" />'
+ actions+= '<input type="button" onclick="action_handler(this)" data-action="stop" value="<%:Stop%>" class="cbi-button cbi-button-reset" />'
+ actions+= '<input type="button" onclick="action_handler(this)" data-action="destroy" value="<%:Delete%>" class="cbi-button cbi-button-remove" />'
+ actions+= ' <select class="cbi-input-select cbi-button" onchange="action_more_handler(this)">\
+ <option selected disabled>more</option>\
+ <option>configure</option>\
+ <option>freeze</option>\
+ <option>unfreeze</option>\
+ <option>reboot</option>\
+ </select>'
+ actions+= '<span data-loader style="display:inline-block; width:16px; height:16px; margin:0 5px"></span>'
+
+ var row = t_lxc_list.insertRow(-1)
+ var cell = row.insertCell(-1)
+ cell.innerHTML = '%q%h%q'.format("<strong>", lxc_name, "</strong>")
+ cell.width = "30%"
+ cell.setAttribute("data-id", lxc_name)
+
+ cell = row.insertCell(-1)
+ cell.width = "20%"
+ cell.innerHTML = "<img src='"+window.img[lxc_state]+"'/>"
+
+ cell = row.insertCell(-1)
+ cell.width = "50%"
+ cell.innerHTML = actions
+ }
+
+ function action_handler(self)
+ {
+ var action = self.getAttribute("data-action");
+
+ var bt_action = self
+ var lxc_name = self.parentNode.parentNode.children[0].getAttribute('data-id')
+ var status_img = self.parentNode.parentNode.querySelector('img')
+ var loader = self.parentNode.querySelector('[data-loader]')
+
+ bt_action.disabled = true
+
+ if (action == "stop")
+ {
+ loading(loader)
+
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/' + '%h/%h'.format(action, lxc_name), null,
+ function(x, ec)
+ {
+ loading(loader, 0)
+ bt_action.disabled = false
+
+ if (!x || ec)
+ return info_message(output_list,"Action failed!")
+
+ set_status(status_img, "red")
+
+ });
+ }
+
+ else if (action == "start")
+ {
+ loading(loader)
+
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/' + '%h/%h'.format(action, lxc_name), null,
+ function(x, data)
+ {
+ loading(loader, 0)
+ bt_action.disabled = false
+
+ //FIXME: uncomment after fixing 'lxc-start'
+ if (!x /*|| ec */)
+ return info_message(output_list,"Action failed!")
+
+ //FIXME: uncomment after fixing 'lxc-start'
+ //set_status(status_img, "green")
+ });
+ }
+
+ else if (action == "destroy")
+ {
+ if (!confirm("This will completely remove LXC container from the disk. Are you sure? (container will be stopped if running)"))
+ return
+
+ loading(loader)
+
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/' + '%h/%h'.format(action, lxc_name), null,
+ function(x, ec)
+ {
+ loading(loader, 0)
+ bt_action.disabled = false
+
+ if (!x || ec)
+ return info_message(output_list,"Action failed!")
+
+ var row = self.parentNode.parentNode
+ row.parentNode.removeChild(row)
+
+ });
+ }
+ }
+
+ function lxc_configure_handler(self)
+ {
+ var td = self.parentNode
+ var textarea = td.querySelector('[data-id]')
+ var lxc_name = textarea.getAttribute('data-id')
+ var lxc_configuration = textarea.value
+
+ new XHR().post('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_configuration_set/' + lxc_name, "lxc_configuration=" + encodeURIComponent(lxc_configuration) ,
+ function(x)
+ {
+ if (!x || x.responseText != "0")
+ return info_message(output_list,"Action failed!")
+
+ info_message(output_list,"LXC configuration updated")
+ var row = td.parentNode
+ row.parentNode.removeChild(row)
+ })
+ }
+
+ function lxc_rename_template(lxc_name)
+ {
+ var h = '\
+ <input data-id="'+ lxc_name + '" type="text" placeholder="Enter new name" /> \
+ <input data-id="bt_confirm" onclick="lxc_rename_handler(this)" type="button" class="cbi-button" value="Confirm" />'
+
+ return h
+ }
+
+ function lxc_configure_template(lxc_name, lxc_configuration)
+ {
+ var h = '\
+ <textarea data-id="'+ lxc_name + '" rows="20" style="width:100%">'+ lxc_configuration +'</textarea> \
+ <input data-id="bt_confirm" onclick="lxc_configure_handler(this)" type="button" class="cbi-button" value="Confirm" />'
+
+ return h
+ }
+
+ function action_more_handler(self)
+ {
+ var lxc_name = self.parentNode.parentNode.querySelector('[data-id]').getAttribute('data-id')
+ var loader = self.parentNode.parentNode.querySelector('[data-loader]')
+
+ var option = self.options[self.selectedIndex].text
+
+ self.value = "more"
+
+ switch (option)
+ {
+ case "configure":
+ var tr = document.createElement('tr')
+ var row = self.parentNode.parentNode
+ var next_row = row.nextSibling
+ if (next_row && next_row.getAttribute('data-action') !== null)
+ row.parentNode.removeChild(next_row)
+
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_configuration_get/' + lxc_name, null,
+ function(x)
+ {
+ tr.innerHTML="<td colspan='" + row.cells.length + "'>" + lxc_configure_template(lxc_name, x.responseText) + "</td>"
+ tr.setAttribute('data-action','')
+ row.parentNode.insertBefore(tr, row.nextSibling)
+ })
+
+ break
+
+ case "freeze":
+ var tr = self.parentNode.parentNode
+ var img = tr.querySelector('img')
+ if(img.getAttribute('src') != window.img["green"])
+ return info_message(output_list,"Container is not running!")
+
+ loading(loader)
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/' + '%h/%h'.format(option, lxc_name), null,
+ function(x, ec)
+ {
+ loading(loader, 0)
+ if (!x || ec)
+ return info_message(output_list,"Action failed!")
+
+ set_status(img, "purple")
+ })
+
+ break
+
+ case "unfreeze":
+ var tr = self.parentNode.parentNode
+ var img = tr.querySelector('img')
+
+ if(img.getAttribute('src') != window.img["purple"])
+ return info_message(output_list,"Container is not frozen!")
+
+ loading(loader)
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/' + '%h/%h'.format(option, lxc_name), null,
+ function(x, ec)
+ {
+ loading(loader, 0)
+ if (!x || ec)
+ return info_message(output_list,"Action failed!")
+
+ set_status(img, "green")
+ })
+
+ break
+
+ case "reboot":
+ var tr = self.parentNode.parentNode
+ var img = tr.querySelector('img')
+ if(img.getAttribute('src') != window.img["green"])
+ return info_message(output_list,"Container is not running!")
+
+ if (!confirm("Are you sure?"))
+ return
+
+ loading(loader)
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/' + '%h/%h'.format(option, lxc_name), null,
+ function(x, ec)
+ {
+ loading(loader, 0)
+ if (!x || ec)
+ return info_message(output_list,"Action failed!")
+
+ info_message(output_list,"LXC rebooted")
+ })
+ break
+ }
+
+ }
+
+ function set_empty(t_lxc_list)
+ {
+ if (document.getElementById('empty') !== null)
+ return
+
+ var row_count = t_lxc_list.rows.length;
+ while(--row_count) t_lxc_list.deleteRow(row_count);
+
+ var row = t_lxc_list.insertRow(-1);
+ row.id = 'empty'
+ var cell = row.insertCell(0);
+ cell.colSpan = 4;
+ cell.innerHTML = '<em><br />There are no containers available yet.</em>';
+ }
+
+ function lxc_list_update()
+ {
+ XHR.poll(4, '<%=luci.dispatcher.build_url("admin", "services")%>/lxc_action/list', null,
+ function(x, data)
+ {
+ if (!x) return;
+
+ var lxc_count = Object.keys(data).length
+ if (!data || !lxc_count)
+ return set_empty(t_lxc_list)
+
+ if (document.getElementById('empty') !== null)
+ t_lxc_list.deleteRow(1);
+
+ var lxcs = t_lxc_list.querySelectorAll('td[data-id]')
+ var lxc_name_table = {}
+ for (var i = 0, len = lxcs.length; i < len; i++)
+ {
+ var lxc_name = lxcs[i].getAttribute('data-id')
+ if (!(lxc_name in data))
+ {
+ var row = t_lxc_list.querySelector("[data-id='" + lxc_name + "']").parentNode
+ row.parentNode.removeChild(row)
+ continue
+ }
+
+ lxc_name_table[lxc_name] = lxcs[i].parentNode.querySelector('img')
+ }
+
+ for(var key in data)
+ {
+ var lxc_name = key
+ var state = window.states[data[key]]
+
+ if (!(lxc_name in lxc_name_table))
+ lxc_create_template(lxc_name, state)
+
+ else if (state != get_status(lxc_name_table[lxc_name]))
+ set_status(lxc_name_table[lxc_name], state)
+ }
+
+ })
+ }
+
+ function loading(elem, state)
+ {
+ state = (typeof state === 'undefined') ? 1 : state
+
+ if (state === 1)
+ elem.innerHTML = loader_html
+ else
+ setTimeout(function() { elem.innerHTML = ''}, 1000)
+ }
+
+ function set_status(elem, state)
+ {
+ state = (typeof state === 'undefined') ? 1 : state
+
+ setTimeout(function() { elem.setAttribute('src', window.img[state])}, 300)
+ }
+
+ function get_status(elem)
+ {
+ var src = elem.getAttribute('src')
+
+ for (var i in img)
+ {
+ if (img[i] == src)
+ return i
+ }
+ }
+
+ function info_message(output, msg, timeout)
+ {
+ timeout = timeout || 3000
+ output.innerHTML = msg
+ clearTimeout(timeout_msg)
+ timeout_msg = setTimeout(function(){ output.innerHTML=""}, timeout);
+ }
+
+ lxc_list_update()
+
+ new XHR().get('<%=luci.dispatcher.build_url("admin", "services")%>/lxc_get_downloadable', null,
+ function(x, data)
+ {
+ if (!x) return;
+
+ var lxc_count = Object.keys(data).length
+ if (!data || !lxc_count) return;
+ var select = document.getElementById("s_template");
+ for(var key in data)
+ {
+ var option = document.createElement('option');
+ option.value = data[key];
+ option.text = data[key].replace(/[_:]/g, ' ');
+ select.add(option, -1);
+ }
+ })
+
+//]]></script>
diff --git a/applications/luci-app-lxc/root/etc/config/lxc b/applications/luci-app-lxc/root/etc/config/lxc
new file mode 100644
index 000000000..5572c735f
--- /dev/null
+++ b/applications/luci-app-lxc/root/etc/config/lxc
@@ -0,0 +1,6 @@
+#
+# lxc uci configuration
+#
+
+config lxc 'lxc'
+ option url 'virtualwrt.org/containers/'
diff --git a/applications/luci-app-meshwizard/luasrc/model/cbi/freifunk/meshwizard.lua b/applications/luci-app-meshwizard/luasrc/model/cbi/freifunk/meshwizard.lua
index 68f7a5a25..62ce25eff 100644
--- a/applications/luci-app-meshwizard/luasrc/model/cbi/freifunk/meshwizard.lua
+++ b/applications/luci-app-meshwizard/luasrc/model/cbi/freifunk/meshwizard.lua
@@ -103,10 +103,7 @@ uci:foreach("wireless", "wifi-device", function(section)
-- Channel selection
- if hwtype == "atheros" then
- local cc = util.trim(sys.exec("grep -i '" .. syscc .. "' /lib/wifi/cc_translate.txt |cut -d ' ' -f 2")) or 0
- sys.exec('"echo " .. cc .. " > /proc/sys/dev/" .. device .. "/countrycode"')
- elseif hwtype == "mac80211" then
+ if hwtype == "mac80211" then
sys.exec("iw reg set " .. syscc)
elseif hwtype == "broadcom" then
sys.exec ("wlc country " .. syscc)
diff --git a/applications/luci-app-meshwizard/po/pt-br/meshwizard.po b/applications/luci-app-meshwizard/po/pt-br/meshwizard.po
index a2238e52e..9421e0253 100644
--- a/applications/luci-app-meshwizard/po/pt-br/meshwizard.po
+++ b/applications/luci-app-meshwizard/po/pt-br/meshwizard.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-10-11 00:23+0200\n"
-"PO-Revision-Date: 2014-03-17 10:01+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-02-20 18:00-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "Activate or deactivate IPv6 config globally."
msgstr "Habilita e desabilita a configuração IPv6 globalmente."
@@ -70,7 +70,6 @@ msgstr "Endereço IPv6 da rede em malha"
msgid "Mesh Wizard"
msgstr "Assistente de Configuração da Rede em Malha"
-#, fuzzy
msgid ""
"Note: this will set up this interface for mesh operation, i.e. add it to "
"zone 'freifunk' and enable olsr."
diff --git a/applications/luci-app-minidlna/root/etc/uci-defaults/40_luci-minidlna b/applications/luci-app-minidlna/root/etc/uci-defaults/40_luci-minidlna
index df43c1b37..47570307b 100755
--- a/applications/luci-app-minidlna/root/etc/uci-defaults/40_luci-minidlna
+++ b/applications/luci-app-minidlna/root/etc/uci-defaults/40_luci-minidlna
@@ -1,10 +1,5 @@
#!/bin/sh
-/etc/init.d/minidlna enabled && {
- /etc/init.d/minidlna stop
- /etc/init.d/minidlna disable
-}
-
uci -q batch <<-EOF >/dev/null
delete ucitrack.minidlna
set ucitrack.minidlna=minidlna
diff --git a/applications/luci-app-mjpg-streamer/po/ja/mjpg-streamer.po b/applications/luci-app-mjpg-streamer/po/ja/mjpg-streamer.po
new file mode 100644
index 000000000..7da344461
--- /dev/null
+++ b/applications/luci-app-mjpg-streamer/po/ja/mjpg-streamer.po
@@ -0,0 +1,171 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ja\n"
+"X-Generator: Poedit 1.8.11\n"
+
+msgid "Allow ringbuffer to exceed limit by this amount"
+msgstr "リングãƒãƒƒãƒ•ã‚¡ãƒ¼ãŒã“ã®é‡ã ã‘制é™ã‚’超éŽã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¾ã™ã€‚"
+
+msgid "Ask for username and password on connect"
+msgstr "接続時ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼åã¨ãƒ‘スワードを確èªã—ã¾ã™ã€‚"
+
+msgid "Authentication required"
+msgstr "èªè¨¼ãŒå¿…è¦"
+
+msgid "Auto"
+msgstr "自動"
+
+msgid "Automatic disabling of MJPEG mode"
+msgstr "MJPEGモードã®è‡ªå‹•ç„¡åŠ¹åŒ–"
+
+msgid "Blink"
+msgstr "点滅"
+
+msgid "Check to save the stream to an mjpeg file"
+msgstr "MJPEGファイルã«ä¿å­˜ã™ã‚‹ã«ã¯ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚"
+
+msgid "Command to run"
+msgstr "実行ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰"
+
+msgid "Device"
+msgstr "デãƒã‚¤ã‚¹"
+
+msgid "Do not initalize dynctrls of Linux-UVC driver"
+msgstr "Linux-UVCドライãƒã®dynctrlsã‚’åˆæœŸåŒ–ã—ã¾ã›ã‚“。"
+
+msgid "Don't initalize dynctrls"
+msgstr "dynctrlsã‚’åˆæœŸåŒ–ã—ãªã„"
+
+msgid "Drop frames smaller then this limit"
+msgstr "ã“ã®åˆ¶é™ã‚ˆã‚Šã‚‚å°ã•ã„フレームをドロップã™ã‚‹"
+
+msgid "Enable MJPG-streamer"
+msgstr "MJPG-streamerを有効化ã—ã¾ã™ã€‚"
+
+msgid "Enable YUYV format"
+msgstr "YUYVå½¢å¼ã‚’有効化"
+
+msgid "Enabled"
+msgstr "有効"
+
+msgid "Exceed"
+msgstr "超éŽ"
+
+msgid ""
+"Execute command after saving picture. Mjpg-streamer parse the filename as "
+"first parameter to your script."
+msgstr ""
+"ç”»åƒä¿å­˜å¾Œã«ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚Mjpg-streamerã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«åをスクリプトã®æœ€"
+"åˆã®å¼•æ•°ã¨ã—ã¦è§£é‡ˆã—ã¾ã™ã€‚"
+
+msgid "File input"
+msgstr "ファイル入力"
+
+msgid "File output"
+msgstr "ファイル出力"
+
+msgid "Folder"
+msgstr "フォルダー"
+
+msgid "Folder that contains webpages"
+msgstr "ウェブページをå«ã‚€ãƒ•ã‚©ãƒ«ãƒ€ãƒ¼"
+
+msgid "Frames per second"
+msgstr "1秒当ãŸã‚Šã®ãƒ•ãƒ¬ãƒ¼ãƒ æ•°"
+
+msgid "General"
+msgstr "一般設定"
+
+msgid "HTTP output"
+msgstr "HTTP 出力"
+
+msgid "Input plugin"
+msgstr "入力プラグイン"
+
+msgid "Interval between saving pictures"
+msgstr "ç”»åƒã®ä¿å­˜é–“éš”"
+
+msgid "JPEG compression quality"
+msgstr "JPEG 圧縮å“質"
+
+msgid "Led control"
+msgstr "LED 制御"
+
+msgid "MJPG-streamer"
+msgstr "MJPG-streamer"
+
+msgid "Max. number of pictures to hold"
+msgstr "ä¿æŒã™ã‚‹ç”»åƒã®æœ€å¤§æ•°ã§ã™ã€‚"
+
+msgid "Mjpeg output"
+msgstr "MJPEG 出力"
+
+msgid "Off"
+msgstr "消ç¯"
+
+msgid "On"
+msgstr "点ç¯"
+
+msgid "Output plugin"
+msgstr "出力プラグイン"
+
+msgid "Password"
+msgstr "パスワード"
+
+msgid "Plugin settings"
+msgstr "プラグイン設定"
+
+msgid "Port"
+msgstr "ãƒãƒ¼ãƒˆ"
+
+msgid "Resolution"
+msgstr "解åƒåº¦"
+
+msgid "Ring buffer size"
+msgstr "リングãƒãƒƒãƒ•ã‚¡ãƒ¼ サイズ"
+
+msgid "Set folder to save pictures"
+msgstr "ç”»åƒã‚’ä¿å­˜ã™ã‚‹ãƒ•ã‚©ãƒ«ãƒ€ãƒ¼ã‚’設定ã—ã¾ã™ã€‚"
+
+msgid "Set the inteval in millisecond"
+msgstr "間隔をミリ秒ã§è¨­å®šã—ã¾ã™ã€‚"
+
+msgid ""
+"Set the minimum size if the webcam produces small-sized garbage frames. May "
+"happen under low light conditions"
+msgstr ""
+"ã‚‚ã—ウェブカメラãŒå°ã•ãªã‚µã‚¤ã‚ºã®ä½™åˆ†ãªãƒ•ãƒ¬ãƒ¼ãƒ ã‚’生æˆã™ã‚‹å ´åˆã¯ã€æœ€å°ã‚µã‚¤ã‚ºã‚’"
+"設定ã—ã¾ã™ã€‚å…‰é‡ã®ä½Žã„æ¡ä»¶ä¸‹ã§ç™ºç”Ÿã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚"
+
+msgid ""
+"Set the quality in percent. This setting activates YUYV format, disables "
+"MJPEG"
+msgstr ""
+"å“質をパーセントã§è¨­å®šã—ã¾ã™ã€‚ã“ã®è¨­å®šã¯YUYVå½¢å¼ã‚’有効ã«ã—ã€MJPEGを無効ã«ã—ã¾"
+"ã™ã€‚"
+
+msgid "TCP port for this HTTP server"
+msgstr "ã“ã®HTTPサーãƒãƒ¼ã®TCPãƒãƒ¼ãƒˆã§ã™ã€‚"
+
+msgid "UVC input"
+msgstr "UVC 入力"
+
+msgid "Username"
+msgstr "ユーザーå"
+
+msgid "WWW folder"
+msgstr "WWW フォルダー"
+
+msgid ""
+"mjpg streamer is a streaming application for Linux-UVC compatible webcams"
+msgstr ""
+"Mjpg streamerã¯ã€Linux-UVC互æ›ã‚¦ã‚§ãƒ–カメラã®ãŸã‚ã®ã‚¹ãƒˆãƒªãƒ¼ãƒŸãƒ³ã‚° アプリケー"
+"ションã§ã™ã€‚"
diff --git a/applications/luci-app-mjpg-streamer/po/pt-br/mjpg-streamer.po b/applications/luci-app-mjpg-streamer/po/pt-br/mjpg-streamer.po
new file mode 100644
index 000000000..28bfa186b
--- /dev/null
+++ b/applications/luci-app-mjpg-streamer/po/pt-br/mjpg-streamer.po
@@ -0,0 +1,172 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "Allow ringbuffer to exceed limit by this amount"
+msgstr "Permitir que o buffer em anel exceda o limite por essa quantidade"
+
+msgid "Ask for username and password on connect"
+msgstr "Pergunte por um usuário e senha na conexão"
+
+msgid "Authentication required"
+msgstr "Requer autenticação"
+
+msgid "Auto"
+msgstr "Automático"
+
+msgid "Automatic disabling of MJPEG mode"
+msgstr "Desativação automática do modo MJPEG"
+
+msgid "Blink"
+msgstr "Pisca"
+
+msgid "Check to save the stream to an mjpeg file"
+msgstr "Marque para salvar o fluxo em um arquivo MJPEG"
+
+msgid "Command to run"
+msgstr "Comando para executar:"
+
+msgid "Device"
+msgstr "Dispositivo"
+
+msgid "Do not initalize dynctrls of Linux-UVC driver"
+msgstr "Não inicie o dynctrls do driver do Linux-UVC"
+
+msgid "Don't initalize dynctrls"
+msgstr "Não inicia o dynctrls"
+
+msgid "Drop frames smaller then this limit"
+msgstr "Descarte quadros menores que este limite"
+
+msgid "Enable MJPG-streamer"
+msgstr "Ativa o MJPG-streamer"
+
+msgid "Enable YUYV format"
+msgstr "Ativar Formato YUYV"
+
+msgid "Enabled"
+msgstr "Habilitado"
+
+msgid "Exceed"
+msgstr "Ultrapassado"
+
+msgid ""
+"Execute command after saving picture. Mjpg-streamer parse the filename as "
+"first parameter to your script."
+msgstr ""
+"Execute o comando depois de salvar a imagem. Mjpg-streamer passa o nome do "
+"arquivo como primeiro parâmetro para o comando."
+
+msgid "File input"
+msgstr "Entrada do arquivo"
+
+msgid "File output"
+msgstr "Saída do arquivo"
+
+msgid "Folder"
+msgstr "Pasta"
+
+msgid "Folder that contains webpages"
+msgstr "Pasta que contém páginas web"
+
+msgid "Frames per second"
+msgstr "Quadros por segundos"
+
+msgid "General"
+msgstr "Geral"
+
+msgid "HTTP output"
+msgstr "Saída HTTP"
+
+msgid "Input plugin"
+msgstr "Plugins de entrada"
+
+msgid "Interval between saving pictures"
+msgstr "Intervalo entre o salvamento das imagens"
+
+msgid "JPEG compression quality"
+msgstr "Qualidade da compressão JPEG"
+
+msgid "Led control"
+msgstr "Controle de LED"
+
+msgid "MJPG-streamer"
+msgstr "MJPG-streamer"
+
+msgid "Max. number of pictures to hold"
+msgstr "Número máximo de imagens a serem mantidas"
+
+msgid "Mjpeg output"
+msgstr "Saída Mjpeg"
+
+msgid "Off"
+msgstr "Desligado"
+
+msgid "On"
+msgstr "Ligado"
+
+msgid "Output plugin"
+msgstr "Plugin de saída"
+
+msgid "Password"
+msgstr "Senha"
+
+msgid "Plugin settings"
+msgstr "Configurações do Plugin"
+
+msgid "Port"
+msgstr "Porta"
+
+msgid "Resolution"
+msgstr "Resolução"
+
+msgid "Ring buffer size"
+msgstr "Tamanho do buffer em anel"
+
+msgid "Set folder to save pictures"
+msgstr "Definir pasta para salvas as imagens"
+
+msgid "Set the inteval in millisecond"
+msgstr "Defina o intervalo em milisegundos"
+
+msgid ""
+"Set the minimum size if the webcam produces small-sized garbage frames. May "
+"happen under low light conditions"
+msgstr ""
+"Defina o tamanho mínimo se a webcam produz quadros lixo de tamanho pequeno. "
+"Pode acontecer sob condições de pouca luz"
+
+msgid ""
+"Set the quality in percent. This setting activates YUYV format, disables "
+"MJPEG"
+msgstr ""
+"Defina a qualidade em porcentagem. Esta definição ativa o formato YUYV, "
+"desativa MJPEG"
+
+msgid "TCP port for this HTTP server"
+msgstr "Porta TCP para este servidor HTTP"
+
+msgid "UVC input"
+msgstr "Dispositivo UVC de entrada"
+
+msgid "Username"
+msgstr "Usuário"
+
+msgid "WWW folder"
+msgstr "Pasta WWW"
+
+msgid ""
+"mjpg streamer is a streaming application for Linux-UVC compatible webcams"
+msgstr ""
+"Mjpg streamer é uma aplicação de streaming para webcams compatíveis com o "
+"Linux-UVC"
diff --git a/applications/luci-app-mwan3/Makefile b/applications/luci-app-mwan3/Makefile
new file mode 100644
index 000000000..d65cd3af1
--- /dev/null
+++ b/applications/luci-app-mwan3/Makefile
@@ -0,0 +1,19 @@
+#
+# Copyright (C) 2017 Dan Luedtke <mail@danrl.com>
+#
+# This is free software, licensed under the Apache License, Version 2.0 .
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=LuCI support for the MWAN3 multiwan hotplug script
+LUCI_DEPENDS:=+mwan3 +luci-mod-admin-full +luci-app-firewall +luci-lib-nixio
+LUCI_PKGARCH:=all
+PKG_LICENSE:=GPLv2
+
+PKG_MAINTAINER:=Aedan Renner <chipdankly@gmail.com> \
+ Florian Eckert <fe@dev.tdt.de>
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-mwan3/luasrc/controller/mwan3.lua b/applications/luci-app-mwan3/luasrc/controller/mwan3.lua
new file mode 100644
index 000000000..d3fd15069
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/controller/mwan3.lua
@@ -0,0 +1,331 @@
+module("luci.controller.mwan3", package.seeall)
+
+sys = require "luci.sys"
+ut = require "luci.util"
+
+ip = "/usr/bin/ip -4 "
+
+function index()
+ if not nixio.fs.access("/etc/config/mwan3") then
+ return
+ end
+
+ entry({"admin", "network", "mwan"},
+ alias("admin", "network", "mwan", "overview"),
+ _("Load Balancing"), 600)
+
+ entry({"admin", "network", "mwan", "overview"},
+ alias("admin", "network", "mwan", "overview", "overview_interface"),
+ _("Overview"), 10)
+ entry({"admin", "network", "mwan", "overview", "overview_interface"},
+ template("mwan/overview_interface"))
+ entry({"admin", "network", "mwan", "overview", "interface_status"},
+ call("interfaceStatus"))
+ entry({"admin", "network", "mwan", "overview", "overview_detailed"},
+ template("mwan/overview_detailed"))
+ entry({"admin", "network", "mwan", "overview", "detailed_status"},
+ call("detailedStatus"))
+
+ entry({"admin", "network", "mwan", "configuration"},
+ alias("admin", "network", "mwan", "configuration", "interface"),
+ _("Configuration"), 20)
+ entry({"admin", "network", "mwan", "configuration", "interface"},
+ arcombine(cbi("mwan/interface"), cbi("mwan/interfaceconfig")),
+ _("Interfaces"), 10).leaf = true
+ entry({"admin", "network", "mwan", "configuration", "member"},
+ arcombine(cbi("mwan/member"), cbi("mwan/memberconfig")),
+ _("Members"), 20).leaf = true
+ entry({"admin", "network", "mwan", "configuration", "policy"},
+ arcombine(cbi("mwan/policy"), cbi("mwan/policyconfig")),
+ _("Policies"), 30).leaf = true
+ entry({"admin", "network", "mwan", "configuration", "rule"},
+ arcombine(cbi("mwan/rule"), cbi("mwan/ruleconfig")),
+ _("Rules"), 40).leaf = true
+
+ entry({"admin", "network", "mwan", "advanced"},
+ alias("admin", "network", "mwan", "advanced", "hotplugscript"),
+ _("Advanced"), 100)
+ entry({"admin", "network", "mwan", "advanced", "hotplugscript"},
+ form("mwan/advanced_hotplugscript"))
+ entry({"admin", "network", "mwan", "advanced", "mwanconfig"},
+ form("mwan/advanced_mwanconfig"))
+ entry({"admin", "network", "mwan", "advanced", "networkconfig"},
+ form("mwan/advanced_networkconfig"))
+ entry({"admin", "network", "mwan", "advanced", "wirelessconfig"},
+ form("mwan/advanced_wirelessconfig"))
+ entry({"admin", "network", "mwan", "advanced", "diagnostics"},
+ template("mwan/advanced_diagnostics"))
+ entry({"admin", "network", "mwan", "advanced", "diagnostics_display"},
+ call("diagnosticsData"), nil).leaf = true
+ entry({"admin", "network", "mwan", "advanced", "troubleshooting"},
+ template("mwan/advanced_troubleshooting"))
+ entry({"admin", "network", "mwan", "advanced", "troubleshooting_display"},
+ call("troubleshootingData"))
+end
+
+function getInterfaceStatus(ruleNumber, interfaceName)
+ if ut.trim(sys.exec("uci -q -p /var/state get mwan3." .. interfaceName .. ".enabled")) == "1" then
+ if ut.trim(sys.exec(ip .. "route list table " .. ruleNumber)) ~= "" then
+ if ut.trim(sys.exec("uci -q -p /var/state get mwan3." .. interfaceName .. ".track_ip")) ~= "" then
+ return "online"
+ else
+ return "notMonitored"
+ end
+ else
+ return "offline"
+ end
+ else
+ return "notEnabled"
+ end
+end
+
+function getInterfaceName()
+ local ruleNumber, status = 0, ""
+ uci.cursor():foreach("mwan3", "interface",
+ function (section)
+ ruleNumber = ruleNumber+1
+ status = status .. section[".name"] .. "[" .. getInterfaceStatus(ruleNumber, section[".name"]) .. "]"
+ end
+ )
+ return status
+end
+
+function interfaceStatus()
+ local ntm = require "luci.model.network".init()
+
+ local mArray = {}
+
+ -- overview status
+ local statusString = getInterfaceName()
+ if statusString ~= "" then
+ mArray.wans = {}
+ wansid = {}
+
+ for wanName, interfaceState in string.gfind(statusString, "([^%[]+)%[([^%]]+)%]") do
+ local wanInterfaceName = ut.trim(sys.exec("uci -q -p /var/state get network." .. wanName .. ".ifname"))
+ if wanInterfaceName == "" then
+ wanInterfaceName = "X"
+ end
+ local wanDeviceLink = ntm:get_interface(wanInterfaceName)
+ wanDeviceLink = wanDeviceLink and wanDeviceLink:get_network()
+ wanDeviceLink = wanDeviceLink and wanDeviceLink:adminlink() or "#"
+ wansid[wanName] = #mArray.wans + 1
+ mArray.wans[wansid[wanName]] = { name = wanName, link = wanDeviceLink, ifname = wanInterfaceName, status = interfaceState }
+ end
+ end
+
+ -- overview status log
+ local mwanLog = ut.trim(sys.exec("logread | grep mwan3 | tail -n 50 | sed 'x;1!H;$!d;x' 2>/dev/null"))
+ if mwanLog ~= "" then
+ mArray.mwanlog = { mwanLog }
+ end
+
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(mArray)
+end
+
+function detailedStatus()
+ local mArray = {}
+
+ -- detailed mwan status
+ local detailStatusInfo = ut.trim(sys.exec("/usr/sbin/mwan3 status"))
+ if detailStatusInfo ~= "" then
+ mArray.mwandetail = { detailStatusInfo }
+ end
+
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(mArray)
+end
+
+function diagnosticsData(interface, tool, task)
+ function getInterfaceNumber()
+ local number = 0
+ uci.cursor():foreach("mwan3", "interface",
+ function (section)
+ number = number+1
+ if section[".name"] == interface then
+ interfaceNumber = number
+ end
+ end
+ )
+ end
+
+ local mArray = {}
+
+ local results = ""
+ if tool == "service" then
+ os.execute("/usr/sbin/mwan3 " .. task)
+ if task == "restart" then
+ results = "MWAN3 restarted"
+ elseif task == "stop" then
+ results = "MWAN3 stopped"
+ else
+ results = "MWAN3 started"
+ end
+ else
+ local interfaceDevice = ut.trim(sys.exec("uci -q -p /var/state get network." .. interface .. ".ifname"))
+ if interfaceDevice ~= "" then
+ if tool == "ping" then
+ local gateway = ut.trim(sys.exec("route -n | awk '{if ($8 == \"" .. interfaceDevice .. "\" && $1 == \"0.0.0.0\" && $3 == \"0.0.0.0\") print $2}'"))
+ if gateway ~= "" then
+ if task == "gateway" then
+ local pingCommand = "ping -c 3 -W 2 -I " .. interfaceDevice .. " " .. gateway
+ results = pingCommand .. "\n\n" .. sys.exec(pingCommand)
+ else
+ local tracked = ut.trim(sys.exec("uci -q -p /var/state get mwan3." .. interface .. ".track_ip"))
+ if tracked ~= "" then
+ for z in tracked:gmatch("[^ ]+") do
+ local pingCommand = "ping -c 3 -W 2 -I " .. interfaceDevice .. " " .. z
+ results = results .. pingCommand .. "\n\n" .. sys.exec(pingCommand) .. "\n\n"
+ end
+ else
+ results = "No tracking IP addresses configured on " .. interface
+ end
+ end
+ else
+ results = "No default gateway for " .. interface .. " found. Default route does not exist or is configured incorrectly"
+ end
+ elseif tool == "rulechk" then
+ getInterfaceNumber()
+ local rule1 = sys.exec(ip .. "rule | grep $(echo $((" .. interfaceNumber .. " + 1000)))")
+ local rule2 = sys.exec(ip .. "rule | grep $(echo $((" .. interfaceNumber .. " + 2000)))")
+ if rule1 ~= "" and rule2 ~= "" then
+ results = "All required interface IP rules found:\n\n" .. rule1 .. rule2
+ elseif rule1 ~= "" or rule2 ~= "" then
+ results = "Missing 1 of the 2 required interface IP rules\n\n\nRules found:\n\n" .. rule1 .. rule2
+ else
+ results = "Missing both of the required interface IP rules"
+ end
+ elseif tool == "routechk" then
+ getInterfaceNumber()
+ local routeTable = sys.exec(ip .. "route list table " .. interfaceNumber)
+ if routeTable ~= "" then
+ results = "Interface routing table " .. interfaceNumber .. " was found:\n\n" .. routeTable
+ else
+ results = "Missing required interface routing table " .. interfaceNumber
+ end
+ elseif tool == "hotplug" then
+ if task == "ifup" then
+ os.execute("/usr/sbin/mwan3 ifup " .. interface)
+ results = "Hotplug ifup sent to interface " .. interface .. "..."
+ else
+ os.execute("/usr/sbin/mwan3 ifdown " .. interface)
+ results = "Hotplug ifdown sent to interface " .. interface .. "..."
+ end
+ end
+ else
+ results = "Unable to perform diagnostic tests on " .. interface .. ". There is no physical or virtual device associated with this interface"
+ end
+ end
+ if results ~= "" then
+ results = ut.trim(results)
+ mArray.diagnostics = { results }
+ end
+
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(mArray)
+end
+
+function troubleshootingData()
+ local ver = require "luci.version"
+
+ local mArray = {}
+
+ -- software versions
+ local wrtRelease = ut.trim(ver.distversion)
+ if wrtRelease ~= "" then
+ wrtRelease = "OpenWrt - " .. wrtRelease
+ else
+ wrtRelease = "OpenWrt - unknown"
+ end
+ local luciRelease = ut.trim(ver.luciversion)
+ if luciRelease ~= "" then
+ luciRelease = "\nLuCI - " .. luciRelease
+ else
+ luciRelease = "\nLuCI - unknown"
+ end
+ local mwanVersion = ut.trim(sys.exec("opkg info mwan3 | grep Version | awk '{print $2}'"))
+ if mwanVersion ~= "" then
+ mwanVersion = "\n\nmwan3 - " .. mwanVersion
+ else
+ mwanVersion = "\n\nmwan3 - unknown"
+ end
+ local mwanLuciVersion = ut.trim(sys.exec("opkg info luci-app-mwan3 | grep Version | awk '{print $2}'"))
+ if mwanLuciVersion ~= "" then
+ mwanLuciVersion = "\nmwan3-luci - " .. mwanLuciVersion
+ else
+ mwanLuciVersion = "\nmwan3-luci - unknown"
+ end
+ mArray.versions = { wrtRelease .. luciRelease .. mwanVersion .. mwanLuciVersion }
+
+ -- mwan config
+ local mwanConfig = ut.trim(sys.exec("cat /etc/config/mwan3"))
+ if mwanConfig == "" then
+ mwanConfig = "No data found"
+ end
+ mArray.mwanconfig = { mwanConfig }
+
+ -- network config
+ local networkConfig = ut.trim(sys.exec("cat /etc/config/network | sed -e 's/.*username.*/ USERNAME HIDDEN/' -e 's/.*password.*/ PASSWORD HIDDEN/'"))
+ if networkConfig == "" then
+ networkConfig = "No data found"
+ end
+ mArray.netconfig = { networkConfig }
+
+ -- wireless config
+ local wirelessConfig = ut.trim(sys.exec("cat /etc/config/wireless | sed -e 's/.*username.*/ USERNAME HIDDEN/' -e 's/.*password.*/ PASSWORD HIDDEN/' -e 's/.*key.*/ KEY HIDDEN/'"))
+ if wirelessConfig == "" then
+ wirelessConfig = "No data found"
+ end
+ mArray.wificonfig = { wirelessConfig }
+
+ -- ifconfig
+ local ifconfig = ut.trim(sys.exec("ifconfig"))
+ if ifconfig == "" then
+ ifconfig = "No data found"
+ end
+ mArray.ifconfig = { ifconfig }
+
+ -- route -n
+ local routeShow = ut.trim(sys.exec("route -n"))
+ if routeShow == "" then
+ routeShow = "No data found"
+ end
+ mArray.routeshow = { routeShow }
+
+ -- ip rule show
+ local ipRuleShow = ut.trim(sys.exec(ip .. "rule show"))
+ if ipRuleShow == "" then
+ ipRuleShow = "No data found"
+ end
+ mArray.iprule = { ipRuleShow }
+
+ -- ip route list table 1-250
+ local routeList, routeString = ut.trim(sys.exec(ip .. "rule | sed 's/://g' 2>/dev/null | awk '$1>=2001 && $1<=2250' | awk '{print $NF}'")), ""
+ if routeList ~= "" then
+ for line in routeList:gmatch("[^\r\n]+") do
+ routeString = routeString .. line .. "\n" .. sys.exec(ip .. "route list table " .. line)
+ end
+ routeString = ut.trim(routeString)
+ else
+ routeString = "No data found"
+ end
+ mArray.routelist = { routeString }
+
+ -- default firewall output policy
+ local firewallOut = ut.trim(sys.exec("uci -q -p /var/state get firewall.@defaults[0].output"))
+ if firewallOut == "" then
+ firewallOut = "No data found"
+ end
+ mArray.firewallout = { firewallOut }
+
+ -- iptables
+ local iptables = ut.trim(sys.exec("iptables -L -t mangle -v -n"))
+ if iptables == "" then
+ iptables = "No data found"
+ end
+ mArray.iptables = { iptables }
+
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(mArray)
+end
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_hotplugscript.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_hotplugscript.lua
new file mode 100644
index 000000000..0e7b8b11d
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_hotplugscript.lua
@@ -0,0 +1,55 @@
+-- ------ hotplug script configuration ------ --
+
+fs = require "nixio.fs"
+sys = require "luci.sys"
+ut = require "luci.util"
+
+script = "/etc/hotplug.d/iface/16-mwancustom"
+scriptBackup = "/etc/hotplug.d/iface/16-mwancustombak"
+
+if luci.http.formvalue("cbid.luci.1._restorebak") then -- restore button has been clicked
+ luci.http.redirect(luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript") .. "?restore=yes")
+elseif luci.http.formvalue("restore") == "yes" then -- restore script from backup
+ os.execute("cp -f " .. scriptBackup .. " " .. script)
+end
+
+
+m5 = SimpleForm("luci", nil)
+ m5:append(Template("mwan/advanced_hotplugscript")) -- highlight current tab
+
+f = m5:section(SimpleSection, nil,
+ translate("This section allows you to modify the contents of /etc/hotplug.d/iface/16-mwancustom<br />" ..
+ "This is useful for running system commands and/or scripts based on interface ifup or ifdown hotplug events<br /><br />" ..
+ "Notes:<br />" ..
+ "The first line of the script must be &#34;#!/bin/sh&#34; without quotes<br />" ..
+ "Lines beginning with # are comments and are not executed<br /><br />" ..
+ "Available variables:<br />" ..
+ "$ACTION is the hotplug event (ifup, ifdown)<br />" ..
+ "$INTERFACE is the interface name (wan1, wan2, etc.)<br />" ..
+ "$DEVICE is the device name attached to the interface (eth0.1, eth1, etc.)"))
+
+
+restore = f:option(Button, "_restorebak", translate("Restore default hotplug script"))
+ restore.inputtitle = translate("Restore...")
+ restore.inputstyle = "apply"
+
+t = f:option(TextValue, "lines")
+ t.rmempty = true
+ t.rows = 20
+
+ function t.cfgvalue()
+ local hps = fs.readfile(script)
+ if not hps or hps == "" then -- if script does not exist or is blank restore from backup
+ sys.call("cp -f " .. scriptBackup .. " " .. script)
+ return fs.readfile(script)
+ else
+ return hps
+ end
+ end
+
+ function t.write(self, section, data) -- format and write new data to script
+ return fs.writefile(script, ut.trim(data:gsub("\r\n", "\n")) .. "\n")
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_mwanconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_mwanconfig.lua
new file mode 100644
index 000000000..e0a99e836
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_mwanconfig.lua
@@ -0,0 +1,32 @@
+-- ------ mwan configuration ------ --
+
+ut = require "luci.util"
+
+mwanConfig = "/etc/config/mwan3"
+
+
+m5 = SimpleForm("luci", nil)
+ m5:append(Template("mwan/advanced_mwanconfig")) -- highlight current tab
+
+
+f = m5:section(SimpleSection, nil,
+ translate("This section allows you to modify the contents of /etc/config/mwan3"))
+
+t = f:option(TextValue, "lines")
+ t.rmempty = true
+ t.rows = 20
+
+ function t.cfgvalue()
+ return nixio.fs.readfile(mwanConfig) or ""
+ end
+
+ function t.write(self, section, data) -- format and write new data to script
+ return nixio.fs.writefile(mwanConfig, "\n" .. ut.trim(data:gsub("\r\n", "\n")) .. "\n")
+ end
+
+ function f.handle(self, state, data)
+ return true
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_networkconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_networkconfig.lua
new file mode 100644
index 000000000..b93d89751
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_networkconfig.lua
@@ -0,0 +1,32 @@
+-- ------ network configuration ------ --
+
+ut = require "luci.util"
+
+networkConfig = "/etc/config/network"
+
+
+m5 = SimpleForm("networkconf", nil)
+ m5:append(Template("mwan/advanced_networkconfig")) -- highlight current tab
+
+
+f = m5:section(SimpleSection, nil,
+ translate("This section allows you to modify the contents of /etc/config/network"))
+
+t = f:option(TextValue, "lines")
+ t.rmempty = true
+ t.rows = 20
+
+ function t.cfgvalue()
+ return nixio.fs.readfile(networkConfig) or ""
+ end
+
+ function t.write(self, section, data) -- format and write new data to script
+ return nixio.fs.writefile(networkConfig, "\n" .. ut.trim(data:gsub("\r\n", "\n")) .. "\n")
+ end
+
+ function f.handle(self, state, data)
+ return true
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_wirelessconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_wirelessconfig.lua
new file mode 100644
index 000000000..95e9f7c7e
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/advanced_wirelessconfig.lua
@@ -0,0 +1,32 @@
+-- ------ wireless configuration ------ --
+
+ut = require "luci.util"
+
+wirelessConfig = "/etc/config/wireless"
+
+
+m5 = SimpleForm("wirelessconf", nil)
+ m5:append(Template("mwan/advanced_wirelessconfig")) -- highlight current tab
+
+
+f = m5:section(SimpleSection, nil,
+ translate("This section allows you to modify the contents of /etc/config/wireless"))
+
+t = f:option(TextValue, "lines")
+ t.rmempty = true
+ t.rows = 20
+
+ function t.cfgvalue()
+ return nixio.fs.readfile(wirelessConfig) or ""
+ end
+
+ function t.write(self, section, data) -- format and write new data to script
+ return nixio.fs.writefile(wirelessConfig, "\n" .. ut.trim(data:gsub("\r\n", "\n")) .. "\n")
+ end
+
+ function f.handle(self, state, data)
+ return true
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/interface.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/interface.lua
new file mode 100644
index 000000000..7e863a371
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/interface.lua
@@ -0,0 +1,266 @@
+-- ------ extra functions ------ --
+
+function interfaceCheck() -- find issues with too many interfaces, reliability and metric
+ uci.cursor():foreach("mwan3", "interface",
+ function (section)
+ local interfaceName = section[".name"]
+ interfaceNumber = interfaceNumber+1 -- count number of mwan interfaces configured
+ -- create list of metrics for none and duplicate checking
+ local metricValue = ut.trim(sys.exec("uci -p /var/state get network." .. interfaceName .. ".metric"))
+ if metricValue == "" then
+ errorFound = 1
+ errorNoMetricList = errorNoMetricList .. interfaceName .. " "
+ else
+ metricList = metricList .. interfaceName .. " " .. metricValue .. "\n"
+ end
+ -- check if any interfaces have a higher reliability requirement than tracking IPs configured
+ local trackingNumber = tonumber(ut.trim(sys.exec("echo $(uci -p /var/state get mwan3." .. interfaceName .. ".track_ip) | wc -w")))
+ if trackingNumber > 0 then
+ local reliabilityNumber = tonumber(ut.trim(sys.exec("uci -p /var/state get mwan3." .. interfaceName .. ".reliability")))
+ if reliabilityNumber and reliabilityNumber > trackingNumber then
+ errorFound = 1
+ errorReliabilityList = errorReliabilityList .. interfaceName .. " "
+ end
+ end
+ -- check if any interfaces are not properly configured in /etc/config/network or have no default route in main routing table
+ if ut.trim(sys.exec("uci -p /var/state get network." .. interfaceName)) == "interface" then
+ local interfaceDevice = ut.trim(sys.exec("uci -p /var/state get network." .. interfaceName .. ".ifname"))
+ if interfaceDevice == "uci: Entry not found" or interfaceDevice == "" then
+ errorFound = 1
+ errorNetConfigList = errorNetConfigList .. interfaceName .. " "
+ errorRouteList = errorRouteList .. interfaceName .. " "
+ else
+ local routeCheck = ut.trim(sys.exec("route -n | awk '{if ($8 == \"" .. interfaceDevice .. "\" && $1 == \"0.0.0.0\" && $3 == \"0.0.0.0\") print $1}'"))
+ if routeCheck == "" then
+ errorFound = 1
+ errorRouteList = errorRouteList .. interfaceName .. " "
+ end
+ end
+ else
+ errorFound = 1
+ errorNetConfigList = errorNetConfigList .. interfaceName .. " "
+ errorRouteList = errorRouteList .. interfaceName .. " "
+ end
+ end
+ )
+ -- check if any interfaces have duplicate metrics
+ local metricDuplicateNumbers = sys.exec("echo '" .. metricList .. "' | awk '{print $2}' | uniq -d")
+ if metricDuplicateNumbers ~= "" then
+ errorFound = 1
+ local metricDuplicates = ""
+ for line in metricDuplicateNumbers:gmatch("[^\r\n]+") do
+ metricDuplicates = sys.exec("echo '" .. metricList .. "' | grep '" .. line .. "' | awk '{print $1}'")
+ errorDuplicateMetricList = errorDuplicateMetricList .. metricDuplicates
+ end
+ errorDuplicateMetricList = sys.exec("echo '" .. errorDuplicateMetricList .. "' | tr '\n' ' '")
+ end
+end
+
+function interfaceWarnings() -- display status and warning messages at the top of the page
+ local warnings = ""
+ if interfaceNumber <= 250 then
+ warnings = "<strong>" .. translatef("There are currently %d of 250 supported interfaces configured", interfaceNumber) .. "</strong>"
+ else
+ warnings = "<font color=\"ff0000\"><strong>" .. translatef("WARNING: %d interfaces are configured exceeding the maximum of 250!", interfaceNumber) .. "</strong></font>"
+ end
+ if errorReliabilityList ~= " " then
+ warnings = warnings .. "<br /><br /><font color=\"ff0000\"><strong>" .. translate("WARNING: some interfaces have a higher reliability requirement than there are tracking IP addresses!") .. "</strong></font>"
+ end
+ if errorRouteList ~= " " then
+ warnings = warnings .. "<br /><br /><font color=\"ff0000\"><strong>" .. translate("WARNING: some interfaces have no default route in the main routing table!") .. "</strong></font>"
+ end
+ if errorNetConfigList ~= " " then
+ warnings = warnings .. "<br /><br /><font color=\"ff0000\"><strong>" .. translate("WARNING: some interfaces are configured incorrectly or not at all in /etc/config/network!") .. "</strong></font>"
+ end
+ if errorNoMetricList ~= " " then
+ warnings = warnings .. "<br /><br /><font color=\"ff0000\"><strong>" .. translate("WARNING: some interfaces have no metric configured in /etc/config/network!") .. "</strong></font>"
+ end
+ if errorDuplicateMetricList ~= " " then
+ warnings = warnings .. "<br /><br /><font color=\"ff0000\"><strong>" .. translate("WARNING: some interfaces have duplicate metrics configured in /etc/config/network!") .. "</strong></font>"
+ end
+ return warnings
+end
+
+-- ------ interface configuration ------ --
+
+dsp = require "luci.dispatcher"
+sys = require "luci.sys"
+ut = require "luci.util"
+
+interfaceNumber = 0
+metricList = ""
+errorFound = 0
+errorDuplicateMetricList = " "
+errorNetConfigList = " "
+errorNoMetricList = " "
+errorReliabilityList = " "
+errorRouteList = " "
+interfaceCheck()
+
+
+m5 = Map("mwan3", translate("MWAN Interface Configuration"),
+ interfaceWarnings())
+ m5:append(Template("mwan/config_css"))
+
+
+mwan_interface = m5:section(TypedSection, "interface", translate("Interfaces"),
+ translate("MWAN supports up to 250 physical and/or logical interfaces<br />" ..
+ "MWAN requires that all interfaces have a unique metric configured in /etc/config/network<br />" ..
+ "Names must match the interface name found in /etc/config/network (see advanced tab)<br />" ..
+ "Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />" ..
+ "Interfaces may not share the same name as configured members, policies or rules"))
+ mwan_interface.addremove = true
+ mwan_interface.dynamic = false
+ mwan_interface.sectionhead = "Interface"
+ mwan_interface.sortable = true
+ mwan_interface.template = "cbi/tblsection"
+ mwan_interface.extedit = dsp.build_url("admin", "network", "mwan", "configuration", "interface", "%s")
+ function mwan_interface.create(self, section)
+ TypedSection.create(self, section)
+ m5.uci:save("mwan3")
+ luci.http.redirect(dsp.build_url("admin", "network", "mwan", "configuration", "interface", section))
+ end
+
+
+enabled = mwan_interface:option(DummyValue, "enabled", translate("Enabled"))
+ enabled.rawhtml = true
+ function enabled.cfgvalue(self, s)
+ if self.map:get(s, "enabled") == "1" then
+ return "Yes"
+ else
+ return "No"
+ end
+ end
+
+track_ip = mwan_interface:option(DummyValue, "track_ip", translate("Tracking IP"))
+ track_ip.rawhtml = true
+ function track_ip.cfgvalue(self, s)
+ tracked = self.map:get(s, "track_ip")
+ if tracked then
+ local ipList = ""
+ for k,v in pairs(tracked) do
+ ipList = ipList .. v .. "<br />"
+ end
+ return ipList
+ else
+ return "&#8212;"
+ end
+ end
+
+reliability = mwan_interface:option(DummyValue, "reliability", translate("Tracking reliability"))
+ reliability.rawhtml = true
+ function reliability.cfgvalue(self, s)
+ if tracked then
+ return self.map:get(s, "reliability") or "&#8212;"
+ else
+ return "&#8212;"
+ end
+ end
+
+count = mwan_interface:option(DummyValue, "count", translate("Ping count"))
+ count.rawhtml = true
+ function count.cfgvalue(self, s)
+ if tracked then
+ return self.map:get(s, "count") or "&#8212;"
+ else
+ return "&#8212;"
+ end
+ end
+
+timeout = mwan_interface:option(DummyValue, "timeout", translate("Ping timeout"))
+ timeout.rawhtml = true
+ function timeout.cfgvalue(self, s)
+ if tracked then
+ local timeoutValue = self.map:get(s, "timeout")
+ if timeoutValue then
+ return timeoutValue .. "s"
+ else
+ return "&#8212;"
+ end
+ else
+ return "&#8212;"
+ end
+ end
+
+interval = mwan_interface:option(DummyValue, "interval", translate("Ping interval"))
+ interval.rawhtml = true
+ function interval.cfgvalue(self, s)
+ if tracked then
+ local intervalValue = self.map:get(s, "interval")
+ if intervalValue then
+ return intervalValue .. "s"
+ else
+ return "&#8212;"
+ end
+ else
+ return "&#8212;"
+ end
+ end
+
+down = mwan_interface:option(DummyValue, "down", translate("Interface down"))
+ down.rawhtml = true
+ function down.cfgvalue(self, s)
+ if tracked then
+ return self.map:get(s, "down") or "&#8212;"
+ else
+ return "&#8212;"
+ end
+ end
+
+up = mwan_interface:option(DummyValue, "up", translate("Interface up"))
+ up.rawhtml = true
+ function up.cfgvalue(self, s)
+ if tracked then
+ return self.map:get(s, "up") or "&#8212;"
+ else
+ return "&#8212;"
+ end
+ end
+
+metric = mwan_interface:option(DummyValue, "metric", translate("Metric"))
+ metric.rawhtml = true
+ function metric.cfgvalue(self, s)
+ local metricValue = sys.exec("uci -p /var/state get network." .. s .. ".metric")
+ if metricValue ~= "" then
+ return metricValue
+ else
+ return "&#8212;"
+ end
+ end
+
+errors = mwan_interface:option(DummyValue, "errors", translate("Errors"))
+ errors.rawhtml = true
+ function errors.cfgvalue(self, s)
+ if errorFound == 1 then
+ local mouseOver, lineBreak = "", ""
+ if string.find(errorReliabilityList, " " .. s .. " ") then
+ mouseOver = "Higher reliability requirement than there are tracking IP addresses"
+ lineBreak = "&#10;&#10;"
+ end
+ if string.find(errorRouteList, " " .. s .. " ") then
+ mouseOver = mouseOver .. lineBreak .. "No default route in the main routing table"
+ lineBreak = "&#10;&#10;"
+ end
+ if string.find(errorNetConfigList, " " .. s .. " ") then
+ mouseOver = mouseOver .. lineBreak .. "Configured incorrectly or not at all in /etc/config/network"
+ lineBreak = "&#10;&#10;"
+ end
+ if string.find(errorNoMetricList, " " .. s .. " ") then
+ mouseOver = mouseOver .. lineBreak .. "No metric configured in /etc/config/network"
+ lineBreak = "&#10;&#10;"
+ end
+ if string.find(errorDuplicateMetricList, " " .. s .. " ") then
+ mouseOver = mouseOver .. lineBreak .. "Duplicate metric configured in /etc/config/network"
+ end
+ if mouseOver == "" then
+ return ""
+ else
+ return "<span title=\"" .. mouseOver .. "\"><img src=\"/luci-static/resources/cbi/reset.gif\" alt=\"error\"></img></span>"
+ end
+ else
+ return ""
+ end
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/interfaceconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/interfaceconfig.lua
new file mode 100644
index 000000000..e7c16fdfd
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/interfaceconfig.lua
@@ -0,0 +1,250 @@
+-- ------ extra functions ------ --
+
+function interfaceCheck()
+ metricValue = ut.trim(sys.exec("uci -p /var/state get network." .. arg[1] .. ".metric"))
+ if metricValue == "" then -- no metric
+ errorNoMetric = 1
+ else -- if metric exists create list of interface metrics to compare against for duplicates
+ uci.cursor():foreach("mwan3", "interface",
+ function (section)
+ local metricValue = ut.trim(sys.exec("uci -p /var/state get network." .. section[".name"] .. ".metric"))
+ metricList = metricList .. section[".name"] .. " " .. metricValue .. "\n"
+ end
+ )
+ -- compare metric against list
+ local metricDuplicateNumbers, metricDuplicates = sys.exec("echo '" .. metricList .. "' | awk '{print $2}' | uniq -d"), ""
+ for line in metricDuplicateNumbers:gmatch("[^\r\n]+") do
+ metricDuplicates = sys.exec("echo '" .. metricList .. "' | grep '" .. line .. "' | awk '{print $1}'")
+ errorDuplicateMetricList = errorDuplicateMetricList .. metricDuplicates
+ end
+ if sys.exec("echo '" .. errorDuplicateMetricList .. "' | grep -w " .. arg[1]) ~= "" then
+ errorDuplicateMetric = 1
+ end
+ end
+ -- check if this interface has a higher reliability requirement than track IPs configured
+ local trackingNumber = tonumber(ut.trim(sys.exec("echo $(uci -p /var/state get mwan3." .. arg[1] .. ".track_ip) | wc -w")))
+ if trackingNumber > 0 then
+ local reliabilityNumber = tonumber(ut.trim(sys.exec("uci -p /var/state get mwan3." .. arg[1] .. ".reliability")))
+ if reliabilityNumber and reliabilityNumber > trackingNumber then
+ errorReliability = 1
+ end
+ end
+ -- check if any interfaces are not properly configured in /etc/config/network or have no default route in main routing table
+ if ut.trim(sys.exec("uci -p /var/state get network." .. arg[1])) == "interface" then
+ local interfaceDevice = ut.trim(sys.exec("uci -p /var/state get network." .. arg[1] .. ".ifname"))
+ if interfaceDevice == "uci: Entry not found" or interfaceDevice == "" then
+ errorNetConfig = 1
+ errorRoute = 1
+ else
+ local routeCheck = ut.trim(sys.exec("route -n | awk '{if ($8 == \"" .. interfaceDevice .. "\" && $1 == \"0.0.0.0\" && $3 == \"0.0.0.0\") print $1}'"))
+ if routeCheck == "" then
+ errorRoute = 1
+ end
+ end
+ else
+ errorNetConfig = 1
+ errorRoute = 1
+ end
+end
+
+function interfaceWarnings() -- display warning messages at the top of the page
+ local warns, lineBreak = "", ""
+ if errorReliability == 1 then
+ warns = "<font color=\"ff0000\"><strong>" .. translate("WARNING: this interface has a higher reliability requirement than there are tracking IP addresses!") .. "</strong></font>"
+ lineBreak = "<br /><br />"
+ end
+ if errorRoute == 1 then
+ warns = warns .. lineBreak .. "<font color=\"ff0000\"><strong>" .. translate("WARNING: this interface has no default route in the main routing table!") .. "</strong></font>"
+ lineBreak = "<br /><br />"
+ end
+ if errorNetConfig == 1 then
+ warns = warns .. lineBreak .. "<font color=\"ff0000\"><strong>" .. translate("WARNING: this interface is configured incorrectly or not at all in /etc/config/network!") .. "</strong></font>"
+ lineBreak = "<br /><br />"
+ end
+ if errorNoMetric == 1 then
+ warns = warns .. lineBreak .. "<font color=\"ff0000\"><strong>" .. translate("WARNING: this interface has no metric configured in /etc/config/network!") .. "</strong></font>"
+ elseif errorDuplicateMetric == 1 then
+ warns = warns .. lineBreak .. "<font color=\"ff0000\"><strong>" .. translate("WARNING: this and other interfaces have duplicate metrics configured in /etc/config/network!") .. "</strong></font>"
+ end
+ return warns
+end
+
+-- ------ interface configuration ------ --
+
+dsp = require "luci.dispatcher"
+sys = require "luci.sys"
+ut = require "luci.util"
+arg[1] = arg[1] or ""
+
+metricValue = ""
+metricList = ""
+errorDuplicateMetricList = ""
+errorNoMetric = 0
+errorDuplicateMetric = 0
+errorRoute = 0
+errorNetConfig = 0
+errorReliability = 0
+interfaceCheck()
+
+
+m5 = Map("mwan3", translatef("MWAN Interface Configuration - %s", arg[1]),
+ interfaceWarnings())
+ m5.redirect = dsp.build_url("admin", "network", "mwan", "configuration", "interface")
+
+
+mwan_interface = m5:section(NamedSection, arg[1], "interface", "")
+ mwan_interface.addremove = false
+ mwan_interface.dynamic = false
+
+
+enabled = mwan_interface:option(ListValue, "enabled", translate("Enabled"))
+ enabled.default = "1"
+ enabled:value("1", translate("Yes"))
+ enabled:value("0", translate("No"))
+
+family = mwan_interface:option(ListValue, "family", translate("Internet Protocol"))
+ family.default = "ipv4"
+ family:value("ipv4", translate("IPv4"))
+ family:value("ipv6", translate("IPv6"))
+
+track_ip = mwan_interface:option(DynamicList, "track_ip", translate("Tracking IP"),
+ translate("This IP address will be pinged to dermine if the link is up or down. Leave blank to assume interface is always online"))
+ track_ip.datatype = "ipaddr"
+
+reliability = mwan_interface:option(Value, "reliability", translate("Tracking reliability"),
+ translate("Acceptable values: 1-100. This many Tracking IP addresses must respond for the link to be deemed up"))
+ reliability.datatype = "range(1, 100)"
+ reliability.default = "1"
+
+count = mwan_interface:option(ListValue, "count", translate("Ping count"))
+ count.default = "1"
+ count:value("1")
+ count:value("2")
+ count:value("3")
+ count:value("4")
+ count:value("5")
+
+size = mwan_interface:option(Value, "size", translate("Ping size"))
+ size.default = "56"
+ size:value("8")
+ size:value("24")
+ size:value("56")
+ size:value("120")
+ size:value("248")
+ size:value("504")
+ size:value("1016")
+ size:value("1472")
+ size:value("2040")
+ size.datatype = "range(1, 65507)"
+ size.rmempty = false
+ size.optional = false
+
+timeout = mwan_interface:option(ListValue, "timeout", translate("Ping timeout"))
+ timeout.default = "2"
+ timeout:value("1", translatef("%d second", 1))
+ timeout:value("2", translatef("%d seconds", 2))
+ timeout:value("3", translatef("%d seconds", 3))
+ timeout:value("4", translatef("%d seconds", 4))
+ timeout:value("5", translatef("%d seconds", 5))
+ timeout:value("6", translatef("%d seconds", 6))
+ timeout:value("7", translatef("%d seconds", 7))
+ timeout:value("8", translatef("%d seconds", 8))
+ timeout:value("9", translatef("%d seconds", 9))
+ timeout:value("10", translatef("%d seconds", 10))
+
+interval = mwan_interface:option(ListValue, "interval", translate("Ping interval"))
+ interval.default = "5"
+ interval:value("1", translatef("%d second", 1))
+ interval:value("3", translatef("%d seconds", 3))
+ interval:value("5", translatef("%d seconds", 5))
+ interval:value("10", translatef("%d seconds", 10))
+ interval:value("20", translatef("%d seconds", 20))
+ interval:value("30", translatef("%d seconds", 30))
+ interval:value("60", translatef("%d minute", 1))
+ interval:value("300", translatef("%d minutes", 5))
+ interval:value("600", translatef("%d minutes", 10))
+ interval:value("900", translatef("%d minutes", 15))
+ interval:value("1800", translatef("%d minutes", 30))
+ interval:value("3600", translatef("%d hour", 1))
+
+failure = mwan_interface:option(Value, "failure_interval", translate("Failure interval"),
+ translate("Ping interval during failure detection"))
+ failure.default = "5"
+ failure:value("1", translatef("%d second", 1))
+ failure:value("3", translatef("%d seconds", 3))
+ failure:value("5", translatef("%d seconds", 5))
+ failure:value("10", translatef("%d seconds", 10))
+ failure:value("20", translatef("%d seconds", 20))
+ failure:value("30", translatef("%d seconds", 30))
+ failure:value("60", translatef("%d minute", 1))
+ failure:value("300", translatef("%d minutes", 5))
+ failure:value("600", translatef("%d minutes", 10))
+ failure:value("900", translatef("%d minutes", 15))
+ failure:value("1800", translatef("%d minutes", 30))
+ failure:value("3600", translatef("%d hour", 1))
+
+recovery = mwan_interface:option(Value, "recovery_interval", translate("Recovery interval"),
+ translate("Ping interval during failure recovering"))
+ recovery.default = "5"
+ recovery:value("1", translatef("%d second", 1))
+ recovery:value("3", translatef("%d seconds", 3))
+ recovery:value("5", translatef("%d seconds", 5))
+ recovery:value("10", translatef("%d seconds", 10))
+ recovery:value("20", translatef("%d seconds", 20))
+ recovery:value("30", translatef("%d seconds", 30))
+ recovery:value("60", translatef("%d minute", 1))
+ recovery:value("300", translatef("%d minutes", 5))
+ recovery:value("600", translatef("%d minutes", 10))
+ recovery:value("900", translatef("%d minutes", 15))
+ recovery:value("1800", translatef("%d minutes", 30))
+ recovery:value("3600", translatef("%d hour", 1))
+
+down = mwan_interface:option(ListValue, "down", translate("Interface down"),
+ translate("Interface will be deemed down after this many failed ping tests"))
+ down.default = "3"
+ down:value("1")
+ down:value("2")
+ down:value("3")
+ down:value("4")
+ down:value("5")
+ down:value("6")
+ down:value("7")
+ down:value("8")
+ down:value("9")
+ down:value("10")
+
+up = mwan_interface:option(ListValue, "up", translate("Interface up"),
+ translate("Downed interface will be deemed up after this many successful ping tests"))
+ up.default = "3"
+ up:value("1")
+ up:value("2")
+ up:value("3")
+ up:value("4")
+ up:value("5")
+ up:value("6")
+ up:value("7")
+ up:value("8")
+ up:value("9")
+ up:value("10")
+
+flush = mwan_interface:option(ListValue, "flush_conntrack", translate("Flush conntrack table"),
+ translate("Flush global firewall conntrack table on interface events"))
+ flush.default = "never"
+ flush:value("ifup", translate("ifup"))
+ flush:value("ifdown", translate("ifdown"))
+ flush:value("never", translate("never"))
+ flush:value("always", translate("always"))
+
+metric = mwan_interface:option(DummyValue, "metric", translate("Metric"),
+ translate("This displays the metric assigned to this interface in /etc/config/network"))
+ metric.rawhtml = true
+ function metric.cfgvalue(self, s)
+ if errorNoMetric == 0 then
+ return metricValue
+ else
+ return "&#8212;"
+ end
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/member.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/member.lua
new file mode 100644
index 000000000..3bccbd942
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/member.lua
@@ -0,0 +1,46 @@
+-- ------ member configuration ------ --
+
+ds = require "luci.dispatcher"
+
+
+m5 = Map("mwan3", translate("MWAN Member Configuration"))
+ m5:append(Template("mwan/config_css"))
+
+
+mwan_member = m5:section(TypedSection, "member", translate("Members"),
+ translate("Members are profiles attaching a metric and weight to an MWAN interface<br />" ..
+ "Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />" ..
+ "Members may not share the same name as configured interfaces, policies or rules"))
+ mwan_member.addremove = true
+ mwan_member.dynamic = false
+ mwan_member.sectionhead = "Member"
+ mwan_member.sortable = true
+ mwan_member.template = "cbi/tblsection"
+ mwan_member.extedit = ds.build_url("admin", "network", "mwan", "configuration", "member", "%s")
+ function mwan_member.create(self, section)
+ TypedSection.create(self, section)
+ m5.uci:save("mwan3")
+ luci.http.redirect(ds.build_url("admin", "network", "mwan", "configuration", "member", section))
+ end
+
+
+interface = mwan_member:option(DummyValue, "interface", translate("Interface"))
+ interface.rawhtml = true
+ function interface.cfgvalue(self, s)
+ return self.map:get(s, "interface") or "&#8212;"
+ end
+
+metric = mwan_member:option(DummyValue, "metric", translate("Metric"))
+ metric.rawhtml = true
+ function metric.cfgvalue(self, s)
+ return self.map:get(s, "metric") or "1"
+ end
+
+weight = mwan_member:option(DummyValue, "weight", translate("Weight"))
+ weight.rawhtml = true
+ function weight.cfgvalue(self, s)
+ return self.map:get(s, "weight") or "1"
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/memberconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/memberconfig.lua
new file mode 100644
index 000000000..eb6f417af
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/memberconfig.lua
@@ -0,0 +1,47 @@
+-- ------ extra functions ------ --
+
+function cbi_add_interface(field)
+ uci.cursor():foreach("mwan3", "interface",
+ function (section)
+ field:value(section[".name"])
+ end
+ )
+end
+
+-- ------ member configuration ------ --
+
+dsp = require "luci.dispatcher"
+arg[1] = arg[1] or ""
+
+
+m5 = Map("mwan3", translatef("MWAN Member Configuration - %s", arg[1]))
+ m5.redirect = dsp.build_url("admin", "network", "mwan", "configuration", "member")
+
+
+mwan_member = m5:section(NamedSection, arg[1], "member", "")
+ mwan_member.addremove = false
+ mwan_member.dynamic = false
+
+
+interface = mwan_member:option(Value, "interface", translate("Interface"))
+ cbi_add_interface(interface)
+
+metric = mwan_member:option(Value, "metric", translate("Metric"),
+ translate("Acceptable values: 1-1000. Defaults to 1 if not set"))
+ metric.datatype = "range(1, 1000)"
+
+weight = mwan_member:option(Value, "weight", translate("Weight"),
+ translate("Acceptable values: 1-1000. Defaults to 1 if not set"))
+ weight.datatype = "range(1, 1000)"
+
+
+-- ------ currently configured interfaces ------ --
+
+mwan_interface = m5:section(TypedSection, "interface", translate("Currently Configured Interfaces"))
+ mwan_interface.addremove = false
+ mwan_interface.dynamic = false
+ mwan_interface.sortable = false
+ mwan_interface.template = "cbi/tblsection"
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/policy.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/policy.lua
new file mode 100644
index 000000000..08c3f69de
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/policy.lua
@@ -0,0 +1,95 @@
+-- ------ extra functions ------ --
+
+function policyCheck() -- check to see if any policy names exceed the maximum of 15 characters
+ uci.cursor():foreach("mwan3", "policy",
+ function (section)
+ if string.len(section[".name"]) > 15 then
+ nameTooLong = 1
+ err_name_list = err_name_list .. section[".name"] .. " "
+ end
+ end
+ )
+end
+
+function policyWarn() -- display status and warning messages at the top of the page
+ if nameTooLong == 1 then
+ return "<font color=\"ff0000\"><strong>" .. translate("WARNING: Some policies have names exceeding the maximum of 15 characters!") .. "</strong></font>"
+ else
+ return ""
+ end
+end
+
+-- ------ policy configuration ------ --
+
+ds = require "luci.dispatcher"
+sys = require "luci.sys"
+
+nameTooLong = 0
+err_name_list = " "
+policyCheck()
+
+
+m5 = Map("mwan3", translate("MWAN Policy Configuration"),
+ policyWarn())
+ m5:append(Template("mwan/config_css"))
+
+
+mwan_policy = m5:section(TypedSection, "policy", translate("Policies"),
+ translate("Policies are profiles grouping one or more members controlling how MWAN distributes traffic<br />" ..
+ "Member interfaces with lower metrics are used first. Interfaces with the same metric load-balance<br />" ..
+ "Load-balanced member interfaces distribute more traffic out those with higher weights<br />" ..
+ "Names may contain characters A-Z, a-z, 0-9, _ and no spaces. Names must be 15 characters or less<br />" ..
+ "Policies may not share the same name as configured interfaces, members or rules"))
+ mwan_policy.addremove = true
+ mwan_policy.dynamic = false
+ mwan_policy.sectionhead = "Policy"
+ mwan_policy.sortable = true
+ mwan_policy.template = "cbi/tblsection"
+ mwan_policy.extedit = ds.build_url("admin", "network", "mwan", "configuration", "policy", "%s")
+ function mwan_policy.create(self, section)
+ TypedSection.create(self, section)
+ m5.uci:save("mwan3")
+ luci.http.redirect(ds.build_url("admin", "network", "mwan", "configuration", "policy", section))
+ end
+
+
+use_member = mwan_policy:option(DummyValue, "use_member", translate("Members assigned"))
+ use_member.rawhtml = true
+ function use_member.cfgvalue(self, s)
+ local memberConfig, memberList = self.map:get(s, "use_member"), ""
+ if memberConfig then
+ for k,v in pairs(memberConfig) do
+ memberList = memberList .. v .. "<br />"
+ end
+ return memberList
+ else
+ return "&#8212;"
+ end
+
+ end
+
+last_resort = mwan_policy:option(DummyValue, "last_resort", translate("Last resort"))
+ last_resort.rawhtml = true
+ function last_resort.cfgvalue(self, s)
+ local action = self.map:get(s, "last_resort")
+ if action == "blackhole" then
+ return "blackhole (drop)"
+ elseif action == "default" then
+ return "default (use main routing table)"
+ else
+ return "unreachable (reject)"
+ end
+ end
+
+errors = mwan_policy:option(DummyValue, "errors", translate("Errors"))
+ errors.rawhtml = true
+ function errors.cfgvalue(self, s)
+ if not string.find(err_name_list, " " .. s .. " ") then
+ return ""
+ else
+ return "<span title=\"Name exceeds 15 characters\"><img src=\"/luci-static/resources/cbi/reset.gif\" alt=\"error\"></img></span>"
+ end
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/policyconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/policyconfig.lua
new file mode 100644
index 000000000..06a0fec66
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/policyconfig.lua
@@ -0,0 +1,65 @@
+-- ------ extra functions ------ --
+
+function policyCheck() -- check to see if this policy's name exceed the maximum of 15 characters
+ policyNameLength = string.len(arg[1])
+ if policyNameLength > 15 then
+ nameTooLong = 1
+ end
+end
+
+function policyWarn() -- display status and warning messages at the top of the page
+ if nameTooLong == 1 then
+ return "<font color=\"ff0000\"><strong>" .. translatef("WARNING: this policy's name is %d characters exceeding the maximum of 15!", policyNameLength) .. "</strong></font>"
+ else
+ return ""
+ end
+end
+
+function cbiAddMember(field)
+ uci.cursor():foreach("mwan3", "member",
+ function (section)
+ field:value(section[".name"])
+ end
+ )
+end
+
+-- ------ policy configuration ------ --
+
+dsp = require "luci.dispatcher"
+arg[1] = arg[1] or ""
+
+nameTooLong = 0
+policyCheck()
+
+
+m5 = Map("mwan3", translatef("MWAN Policy Configuration - %s", arg[1]),
+ policyWarn())
+ m5.redirect = dsp.build_url("admin", "network", "mwan", "configuration", "policy")
+
+
+mwan_policy = m5:section(NamedSection, arg[1], "policy", "")
+ mwan_policy.addremove = false
+ mwan_policy.dynamic = false
+
+
+use_member = mwan_policy:option(DynamicList, "use_member", translate("Member used"))
+ cbiAddMember(use_member)
+
+last_resort = mwan_policy:option(ListValue, "last_resort", translate("Last resort"),
+ translate("When all policy members are offline use this behavior for matched traffic"))
+ last_resort.default = "unreachable"
+ last_resort:value("unreachable", translate("unreachable (reject)"))
+ last_resort:value("blackhole", translate("blackhole (drop)"))
+ last_resort:value("default", translate("default (use main routing table)"))
+
+
+-- ------ currently configured members ------ --
+
+mwan_member = m5:section(TypedSection, "member", translate("Currently Configured Members"))
+ mwan_member.addremove = false
+ mwan_member.dynamic = false
+ mwan_member.sortable = false
+ mwan_member.template = "cbi/tblsection"
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/rule.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/rule.lua
new file mode 100644
index 000000000..412f369eb
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/rule.lua
@@ -0,0 +1,141 @@
+-- ------ extra functions ------ --
+
+function ruleCheck() -- determine if rules needs a proper protocol configured
+ uci.cursor():foreach("mwan3", "rule",
+ function (section)
+ local sourcePort = ut.trim(sys.exec("uci -p /var/state get mwan3." .. section[".name"] .. ".src_port"))
+ local destPort = ut.trim(sys.exec("uci -p /var/state get mwan3." .. section[".name"] .. ".dest_port"))
+ if sourcePort ~= "" or destPort ~= "" then -- ports configured
+ local protocol = ut.trim(sys.exec("uci -p /var/state get mwan3." .. section[".name"] .. ".proto"))
+ if protocol == "" or protocol == "all" then -- no or improper protocol
+ error_protocol_list = error_protocol_list .. section[".name"] .. " "
+ end
+ end
+ end
+ )
+end
+
+function ruleWarn() -- display warning messages at the top of the page
+ if error_protocol_list ~= " " then
+ return "<font color=\"ff0000\"><strong>" .. translate("WARNING: some rules have a port configured with no or improper protocol specified! Please configure a specific protocol!") .. "</strong></font>"
+ else
+ return ""
+ end
+end
+
+-- ------ rule configuration ------ --
+
+dsp = require "luci.dispatcher"
+sys = require "luci.sys"
+ut = require "luci.util"
+
+error_protocol_list = " "
+ruleCheck()
+
+
+m5 = Map("mwan3", translate("MWAN Rule Configuration"),
+ ruleWarn())
+ m5:append(Template("mwan/config_css"))
+
+
+mwan_rule = m5:section(TypedSection, "rule", translate("Traffic Rules"),
+ translate("Rules specify which traffic will use a particular MWAN policy based on IP address, port or protocol<br />" ..
+ "Rules are matched from top to bottom. Rules below a matching rule are ignored. Traffic not matching any rule is routed using the main routing table<br />" ..
+ "Traffic destined for known (other than default) networks is handled by the main routing table. Traffic matching a rule, but all WAN interfaces for that policy are down will be blackholed<br />" ..
+ "Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />" ..
+ "Rules may not share the same name as configured interfaces, members or policies"))
+ mwan_rule.addremove = true
+ mwan_rule.anonymous = false
+ mwan_rule.dynamic = false
+ mwan_rule.sectionhead = "Rule"
+ mwan_rule.sortable = true
+ mwan_rule.template = "cbi/tblsection"
+ mwan_rule.extedit = dsp.build_url("admin", "network", "mwan", "configuration", "rule", "%s")
+ function mwan_rule.create(self, section)
+ TypedSection.create(self, section)
+ m5.uci:save("mwan3")
+ luci.http.redirect(dsp.build_url("admin", "network", "mwan", "configuration", "rule", section))
+ end
+
+
+src_ip = mwan_rule:option(DummyValue, "src_ip", translate("Source address"))
+ src_ip.rawhtml = true
+ function src_ip.cfgvalue(self, s)
+ return self.map:get(s, "src_ip") or "&#8212;"
+ end
+
+src_port = mwan_rule:option(DummyValue, "src_port", translate("Source port"))
+ src_port.rawhtml = true
+ function src_port.cfgvalue(self, s)
+ return self.map:get(s, "src_port") or "&#8212;"
+ end
+
+dest_ip = mwan_rule:option(DummyValue, "dest_ip", translate("Destination address"))
+ dest_ip.rawhtml = true
+ function dest_ip.cfgvalue(self, s)
+ return self.map:get(s, "dest_ip") or "&#8212;"
+ end
+
+dest_port = mwan_rule:option(DummyValue, "dest_port", translate("Destination port"))
+ dest_port.rawhtml = true
+ function dest_port.cfgvalue(self, s)
+ return self.map:get(s, "dest_port") or "&#8212;"
+ end
+
+proto = mwan_rule:option(DummyValue, "proto", translate("Protocol"))
+ proto.rawhtml = true
+ function proto.cfgvalue(self, s)
+ return self.map:get(s, "proto") or "all"
+ end
+
+sticky = mwan_rule:option(DummyValue, "sticky", translate("Sticky"))
+ sticky.rawhtml = true
+ function sticky.cfgvalue(self, s)
+ if self.map:get(s, "sticky") == "1" then
+ stickied = 1
+ return "Yes"
+ else
+ stickied = nil
+ return "No"
+ end
+ end
+
+timeout = mwan_rule:option(DummyValue, "timeout", translate("Sticky timeout"))
+ timeout.rawhtml = true
+ function timeout.cfgvalue(self, s)
+ if stickied then
+ local timeoutValue = self.map:get(s, "timeout")
+ if timeoutValue then
+ return timeoutValue .. "s"
+ else
+ return "600s"
+ end
+ else
+ return "&#8212;"
+ end
+ end
+
+ipset = mwan_rule:option(DummyValue, "ipset", translate("IPset"))
+ ipset.rawhtml = true
+ function ipset.cfgvalue(self, s)
+ return self.map:get(s, "ipset") or "&#8212;"
+ end
+
+use_policy = mwan_rule:option(DummyValue, "use_policy", translate("Policy assigned"))
+ use_policy.rawhtml = true
+ function use_policy.cfgvalue(self, s)
+ return self.map:get(s, "use_policy") or "&#8212;"
+ end
+
+errors = mwan_rule:option(DummyValue, "errors", translate("Errors"))
+ errors.rawhtml = true
+ function errors.cfgvalue(self, s)
+ if not string.find(error_protocol_list, " " .. s .. " ") then
+ return ""
+ else
+ return "<span title=\"No protocol specified\"><img src=\"/luci-static/resources/cbi/reset.gif\" alt=\"error\"></img></span>"
+ end
+ end
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/model/cbi/mwan/ruleconfig.lua b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/ruleconfig.lua
new file mode 100644
index 000000000..25a96f5c8
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/model/cbi/mwan/ruleconfig.lua
@@ -0,0 +1,113 @@
+-- ------ extra functions ------ --
+
+function ruleCheck() -- determine if rule needs a protocol specified
+ local sourcePort = ut.trim(sys.exec("uci -p /var/state get mwan3." .. arg[1] .. ".src_port"))
+ local destPort = ut.trim(sys.exec("uci -p /var/state get mwan3." .. arg[1] .. ".dest_port"))
+ if sourcePort ~= "" or destPort ~= "" then -- ports configured
+ local protocol = ut.trim(sys.exec("uci -p /var/state get mwan3." .. arg[1] .. ".proto"))
+ if protocol == "" or protocol == "all" then -- no or improper protocol
+ error_protocol = 1
+ end
+ end
+end
+
+function ruleWarn() -- display warning message at the top of the page
+ if error_protocol == 1 then
+ return "<font color=\"ff0000\"><strong>" .. translate("WARNING: this rule is incorrectly configured with no or improper protocol specified! Please configure a specific protocol!") .. "</strong></font>"
+ else
+ return ""
+ end
+end
+
+function cbiAddPolicy(field)
+ uci.cursor():foreach("mwan3", "policy",
+ function (section)
+ field:value(section[".name"])
+ end
+ )
+end
+
+function cbiAddProtocol(field)
+ local protocols = ut.trim(sys.exec("cat /etc/protocols | grep ' # ' | awk '{print $1}' | grep -vw -e 'ip' -e 'tcp' -e 'udp' -e 'icmp' -e 'esp' | grep -v 'ipv6' | sort | tr '\n' ' '"))
+ for p in string.gmatch(protocols, "%S+") do
+ field:value(p)
+ end
+end
+
+-- ------ rule configuration ------ --
+
+dsp = require "luci.dispatcher"
+sys = require "luci.sys"
+ut = require "luci.util"
+arg[1] = arg[1] or ""
+
+error_protocol = 0
+ruleCheck()
+
+
+m5 = Map("mwan3", translatef("MWAN Rule Configuration - %s", arg[1]),
+ ruleWarn())
+ m5.redirect = dsp.build_url("admin", "network", "mwan", "configuration", "rule")
+
+
+mwan_rule = m5:section(NamedSection, arg[1], "rule", "")
+ mwan_rule.addremove = false
+ mwan_rule.dynamic = false
+
+
+src_ip = mwan_rule:option(Value, "src_ip", translate("Source address"),
+ translate("Supports CIDR notation (eg \"192.168.100.0/24\") without quotes"))
+ src_ip.datatype = ipaddr
+
+src_port = mwan_rule:option(Value, "src_port", translate("Source port"),
+ translate("May be entered as a single or multiple port(s) (eg \"22\" or \"80,443\") or as a portrange (eg \"1024:2048\") without quotes"))
+
+dest_ip = mwan_rule:option(Value, "dest_ip", translate("Destination address"),
+ translate("Supports CIDR notation (eg \"192.168.100.0/24\") without quotes"))
+ dest_ip.datatype = ipaddr
+
+dest_port = mwan_rule:option(Value, "dest_port", translate("Destination port"),
+ translate("May be entered as a single or multiple port(s) (eg \"22\" or \"80,443\") or as a portrange (eg \"1024:2048\") without quotes"))
+
+proto = mwan_rule:option(Value, "proto", translate("Protocol"),
+ translate("View the contents of /etc/protocols for protocol descriptions"))
+ proto.default = "all"
+ proto.rmempty = false
+ proto:value("all")
+ proto:value("ip")
+ proto:value("tcp")
+ proto:value("udp")
+ proto:value("icmp")
+ proto:value("esp")
+ cbiAddProtocol(proto)
+
+sticky = mwan_rule:option(ListValue, "sticky", translate("Sticky"),
+ translate("Traffic from the same source IP address that previously matched this rule within the sticky timeout period will use the same WAN interface"))
+ sticky.default = "0"
+ sticky:value("1", translate("Yes"))
+ sticky:value("0", translate("No"))
+
+timeout = mwan_rule:option(Value, "timeout", translate("Sticky timeout"),
+ translate("Seconds. Acceptable values: 1-1000000. Defaults to 600 if not set"))
+ timeout.datatype = "range(1, 1000000)"
+
+ipset = mwan_rule:option(Value, "ipset", translate("IPset"),
+ translate("Name of IPset rule. Requires IPset rule in /etc/dnsmasq.conf (eg \"ipset=/youtube.com/youtube\")"))
+
+use_policy = mwan_rule:option(Value, "use_policy", translate("Policy assigned"))
+ cbiAddPolicy(use_policy)
+ use_policy:value("unreachable", translate("unreachable (reject)"))
+ use_policy:value("blackhole", translate("blackhole (drop)"))
+ use_policy:value("default", translate("default (use main routing table)"))
+
+
+-- ------ currently configured policies ------ --
+
+mwan_policy = m5:section(TypedSection, "policy", translate("Currently Configured Policies"))
+ mwan_policy.addremove = false
+ mwan_policy.dynamic = false
+ mwan_policy.sortable = false
+ mwan_policy.template = "cbi/tblsection"
+
+
+return m5
diff --git a/applications/luci-app-mwan3/luasrc/view/admin_status/index/mwan.htm b/applications/luci-app-mwan3/luasrc/view/admin_status/index/mwan.htm
new file mode 100644
index 000000000..53b997af9
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/admin_status/index/mwan.htm
@@ -0,0 +1 @@
+<%+mwan/openwrt_overview_status%>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/advanced_diagnostics.htm b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_diagnostics.htm
new file mode 100644
index 000000000..14d404bc7
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_diagnostics.htm
@@ -0,0 +1,129 @@
+<%+header%>
+
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript")%>"><%:Hotplug Script%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/mwanconfig")%>"><%:MWAN Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/networkconfig")%>"><%:Network Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/wirelessconfig")%>"><%:Wireless Config%></a></li>
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/diagnostics")%>"><%:Diagnostics%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/troubleshooting")%>"><%:Troubleshooting%></a></li>
+</ul>
+
+<%
+ local uci = require "luci.model.uci"
+
+ interfaceNames = ""
+ uci.cursor():foreach("mwan3", "interface",
+ function (section)
+ interfaceNames = interfaceNames .. section[".name"] .. " "
+ end
+ )
+%>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+ var stxhr = new XHR();
+
+ function update_status(tool, task)
+ {
+ var iface = document.getElementById('mwaniface').value;
+ var output = document.getElementById('diag_output');
+
+ if (tool == "service")
+ {
+ output.innerHTML =
+ '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="padding: 20px; vertical-align: middle;" /> ' +
+ "Waiting for MWAN to " + task + "..."
+ ;
+ }
+ else
+ {
+ output.innerHTML =
+ '<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="padding: 20px; vertical-align: middle;" /> ' +
+ "Waiting for diagnostic results..."
+ ;
+ }
+
+ output.parentNode.style.display = 'block';
+ output.style.display = 'inline';
+
+ stxhr.get('<%=luci.dispatcher.build_url("admin", "network", "mwan", "advanced")%>/diagnostics_display' + '/' + iface + '/' + tool + '/' + task, null,
+ function(x, mArray)
+ {
+ if (mArray.diagnostics)
+ {
+ output.innerHTML = String.format('<pre id="diag_output_css">%h</pre>', mArray.diagnostics[0]);
+ }
+ else
+ {
+ output.innerHTML = '<pre id="diag_output_css"><strong>No diagnostic results returned</strong></pre>';
+ }
+ }
+ );
+ }
+//]]></script>
+
+<div id="mwan_diagnostics" class="cbi-map">
+ <fieldset id="diag_select" class="cbi-section">
+ <legend><%:MWAN Interface Diagnostics%></legend>
+ <select id="mwaniface">
+ <% for z in interfaceNames:gmatch("[^ ]+") do -%><option value="<%=z%>"><%=z%></option><%- end %>
+ </select>
+ <div id="buttoncss">
+ <input type="button" value="<%:Ping default gateway%>" class="cbi-button cbi-button-apply" onclick="update_status('ping', 'gateway')" />
+ <input type="button" value="<%:Ping tracking IP%>" class="cbi-button cbi-button-apply" onclick="update_status('ping', 'track_ip')" />
+ <input type="button" value="<%:Check IP rules%>" class="cbi-button cbi-button-apply" onclick="update_status('rulechk', null)" />
+ <input type="button" value="<%:Check routing table%>" class="cbi-button cbi-button-apply" onclick="update_status('routechk', null)" />
+ <input type="button" value="<%:Hotplug ifup%>" class="cbi-button cbi-button-apply" onclick="update_status('hotplug', 'ifup')" />
+ <input type="button" value="<%:Hotplug ifdown%>" class="cbi-button cbi-button-apply" onclick="update_status('hotplug', 'ifdown')" />
+ </div>
+ </fieldset>
+ <fieldset id="diag_select" class="cbi-section">
+ <legend><%:MWAN Service Control%></legend>
+ <div id="buttoncss">
+ <input type="button" value="<%:Restart MWAN%>" class="cbi-button cbi-button-apply" onclick="update_status('service', 'restart')" />
+ <input type="button" value="<%:Stop MWAN%>" class="cbi-button cbi-button-apply" onclick="update_status('service', 'stop')" />
+ <input type="button" value="<%:Start MWAN%>" class="cbi-button cbi-button-apply" onclick="update_status('service', 'start')" />
+ </div>
+ </fieldset>
+ <fieldset class="cbi-section" style="display:none">
+ <legend><%:Diagnostic Results%></legend>
+ <div id="diag_output"></div>
+ </fieldset>
+</div>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin-left: 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ #mwan_diagnostics {
+ background-color: #FFFFFF;
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+ #diag_select {
+ padding: 12px 20px 20px 20px;
+ }
+ #mwaniface {
+ float: left;
+ margin: 8px 20px 0px 0px;
+ }
+ #buttoncss {
+ display: table;
+ float: left;
+ text-align: left;
+ }
+ .cbi-button {
+ margin: 8px 20px 0px 0px;
+ min-width: 153px;
+ }
+ #diag_output_css {
+ padding: 20px;
+ text-align: left;
+ }
+</style>
+
+<%+footer%>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/advanced_hotplugscript.htm b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_hotplugscript.htm
new file mode 100644
index 000000000..4c2a0dc20
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_hotplugscript.htm
@@ -0,0 +1,24 @@
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript")%>"><%:Hotplug Script%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/mwanconfig")%>"><%:MWAN Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/networkconfig")%>"><%:Network Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/wirelessconfig")%>"><%:Wireless Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/diagnostics")%>"><%:Diagnostics%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/troubleshooting")%>"><%:Troubleshooting%></a></li>
+</ul>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin: 0px 0px 0px 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ .cbi-section-node {
+ margin-top: 20px;
+ }
+ .cbi-section {
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+</style>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/advanced_mwanconfig.htm b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_mwanconfig.htm
new file mode 100644
index 000000000..fba3fa694
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_mwanconfig.htm
@@ -0,0 +1,24 @@
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript")%>"><%:Hotplug Script%></a></li>
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/mwanconfig")%>"><%:MWAN Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/networkconfig")%>"><%:Network Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/wirelessconfig")%>"><%:Wireless Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/diagnostics")%>"><%:Diagnostics%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/troubleshooting")%>"><%:Troubleshooting%></a></li>
+</ul>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin: 0px 0px 0px 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ .cbi-section-node {
+ margin-top: 20px;
+ }
+ .cbi-section {
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+</style>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/advanced_networkconfig.htm b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_networkconfig.htm
new file mode 100644
index 000000000..cf9011207
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_networkconfig.htm
@@ -0,0 +1,24 @@
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript")%>"><%:Hotplug Script%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/mwanconfig")%>"><%:MWAN Config%></a></li>
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/networkconfig")%>"><%:Network Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/wirelessconfig")%>"><%:Wireless Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/diagnostics")%>"><%:Diagnostics%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/troubleshooting")%>"><%:Troubleshooting%></a></li>
+</ul>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin: 0px 0px 0px 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ .cbi-section-node {
+ margin-top: 20px;
+ }
+ .cbi-section {
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+</style>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/advanced_troubleshooting.htm b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_troubleshooting.htm
new file mode 100644
index 000000000..0a1249689
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_troubleshooting.htm
@@ -0,0 +1,74 @@
+<%+header%>
+
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript")%>"><%:Hotplug Script%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/mwanconfig")%>"><%:MWAN Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/networkconfig")%>"><%:Network Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/wirelessconfig")%>"><%:Wireless Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/diagnostics")%>"><%:Diagnostics%></a></li>
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/troubleshooting")%>"><%:Troubleshooting%></a></li>
+</ul>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+ XHR.poll(15, '<%=luci.dispatcher.build_url("admin", "network", "mwan", "advanced", "troubleshooting_display")%>', null,
+ function(x, mArray)
+ {
+ var tshoot = document.getElementById('troubleshoot_text');
+ if (mArray.versions)
+ {
+ var versions = '<span class="description">Software versions : </span><br /><br />';
+ var mwanConfig = '<br /><br /><span class="description">Output of &#34;cat /etc/config/mwan3&#34; : </span><br /><br />';
+ var netConfig = '<br /><br /><span class="description">Output of &#34;cat /etc/config/network&#34; : </span><br /><br />';
+ var wifiConfig = '<br /><br /><span class="description">Output of &#34;cat /etc/config/wireless&#34; : </span><br /><br />';
+ var ifconfig = '<br /><br /><span class="description">Output of &#34;ifconfig&#34; : </span><br /><br />';
+ var ipRoute = '<br /><br /><span class="description">Output of &#34;route -n&#34; : </span><br /><br />';
+ var ipRuleShow = '<br /><br /><span class="description">Output of &#34;ip rule show&#34; : </span><br /><br />';
+ var routeListTable = '<br /><br /><span class="description">Output of &#34;ip route list table 1-250&#34; : </span><br /><br />';
+ var firewallOut = '<br /><br /><span class="description">Firewall default output policy (must be ACCEPT) : </span><br /><br />';
+ var iptables = '<br /><br /><span class="description">Output of &#34;iptables -L -t mangle -v -n&#34; : </span><br /><br />';
+ tshoot.innerHTML = String.format(
+ '<pre>%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s</pre>',
+ versions, mArray.versions[0], mwanConfig, mArray.mwanconfig[0], netConfig, mArray.netconfig[0],
+ wifiConfig, mArray.wificonfig[0], ifconfig, mArray.ifconfig[0], ipRoute, mArray.routeshow[0],
+ ipRuleShow, mArray.iprule[0], routeListTable, mArray.routelist[0], firewallOut, mArray.firewallout[0],
+ iptables, mArray.iptables[0]
+ );
+ }
+ else
+ {
+ tshoot.innerHTML = '<strong>Error collecting troubleshooting information</strong>';
+ }
+ }
+ );
+//]]></script>
+
+<div id="troubleshoot">
+ <fieldset class="cbi-section">
+ <legend><%:Troubleshooting Data%></legend>
+ <div id="troubleshoot_text"><img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> Collecting data...</div>
+ </fieldset>
+</div>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin-left: 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ #troubleshoot {
+ background-color: #FFFFFF;
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+ #troubleshoot_text {
+ padding: 20px;
+ text-align: left;
+ }
+ .description {
+ background-color: rgb(78, 186, 241);
+ }
+</style>
+
+<%+footer%>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/advanced_wirelessconfig.htm b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_wirelessconfig.htm
new file mode 100644
index 000000000..507767418
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/advanced_wirelessconfig.htm
@@ -0,0 +1,24 @@
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/hotplugscript")%>"><%:Hotplug Script%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/mwanconfig")%>"><%:MWAN Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/networkconfig")%>"><%:Network Config%></a></li>
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/wirelessconfig")%>"><%:Wireless Config%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/diagnostics")%>"><%:Diagnostics%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/advanced/troubleshooting")%>"><%:Troubleshooting%></a></li>
+</ul>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin: 0px 0px 0px 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ .cbi-section-node {
+ margin-top: 20px;
+ }
+ .cbi-section {
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+</style>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/config_css.htm b/applications/luci-app-mwan3/luasrc/view/mwan/config_css.htm
new file mode 100644
index 000000000..99da4875b
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/config_css.htm
@@ -0,0 +1,34 @@
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin-left: 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ table td { /* cells showing the configuration values */
+ padding: 0px;
+ text-align: center;
+ vertical-align: middle;
+ }
+ table th { /* column for configuration section name */
+ padding: 0px;
+ text-align: center;
+ vertical-align: middle;
+ }
+ table tbody th { /* column for configuration section name */
+ padding: 0px;
+ vertical-align: middle;
+ }
+ .cbi-section-node table div { /* rows */
+ padding-top: 5px;
+ }
+ table.cbi-section-table td.cbi-section-table-cell { /* sort buttons column */
+ text-align: center;
+ }
+ .cbi-section h3 {
+ color: rgb(85, 85, 85);
+ font-family: Trebuchet MS,Verdana,sans-serif;
+ font-style: italic;
+ font-weight: normal;
+ }
+</style>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/openwrt_overview_status.htm b/applications/luci-app-mwan3/luasrc/view/mwan/openwrt_overview_status.htm
new file mode 100644
index 000000000..9329b9273
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/openwrt_overview_status.htm
@@ -0,0 +1,83 @@
+<script type="text/javascript">//<![CDATA[
+ XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "mwan", "overview", "interface_status")%>', null,
+ function(x, mArray)
+ {
+ var status = document.getElementById('mwan_status_text');
+ if (mArray.wans)
+ {
+ var temp = '';
+ for ( var i = 0; i < mArray.wans.length; i++ )
+ {
+ var stat = '';
+ var cssc = '';
+ switch (mArray.wans[i].status)
+ {
+ case 'online':
+ stat = 'Online (tracking active)';
+ cssc = 'wanon';
+ break;
+ case 'notMonitored':
+ stat = 'Online (tracking off)';
+ cssc = 'wanon';
+ break;
+ case 'offline':
+ stat = 'Offline';
+ cssc = 'wanoff';
+ break;
+ case 'notEnabled':
+ stat = 'Disabled';
+ cssc = 'wanoff';
+ break;
+ }
+ temp += String.format(
+ '<span class="%s"><strong>%s (<a href="%q">%s</a>)</strong><br />%s</span>',
+ cssc, mArray.wans[i].name, mArray.wans[i].link, mArray.wans[i].ifname, stat
+ );
+ }
+ status.innerHTML = temp;
+ }
+ else
+ {
+ status.innerHTML = '<strong>No MWAN interfaces found</strong>';
+ }
+ }
+ );
+//]]></script>
+
+<fieldset id="interface_field" class="cbi-section">
+ <legend><%:MWAN Interface Live Status%></legend>
+ <div id="mwan_status_text"><img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> Collecting data...</div>
+</fieldset>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: 1044px;
+ }
+ #interface_field {
+ padding: 12px 20px 20px 20px;
+ }
+ #mwan_status_text {
+ display: table;
+ font-size: 14px;
+ margin: auto;
+ max-width: 1044px;
+ min-width: 246px;
+ width: 100%;
+ }
+ .wanon {
+ background-color: rgb(144, 240, 144);
+ }
+ .wanoff {
+ background-color: rgb(240, 144, 144);
+ }
+ .wanon, .wanoff {
+ border-radius: 60px;
+ box-shadow: 0px 2px 5px -3px;
+ float: left;
+ margin: 8px 3px 0px 3px;
+ min-height: 30px;
+ min-width: 235px;
+ padding: 5px 10px 8px 10px;
+ text-align: center;
+ }
+</style>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/overview_detailed.htm b/applications/luci-app-mwan3/luasrc/view/mwan/overview_detailed.htm
new file mode 100644
index 000000000..b80b9f3ac
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/overview_detailed.htm
@@ -0,0 +1,51 @@
+<%+header%>
+
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/overview")%>"><%:Interface Status%></a></li>
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/overview/overview_detailed")%>"><%:Detailed Status%></a></li>
+</ul>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+ XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "mwan", "overview", "detailed_status")%>', null,
+ function(x, mArray)
+ {
+ var status = document.getElementById('mwan_detail_text');
+ if (mArray.mwandetail)
+ {
+ status.innerHTML = String.format('<pre>%s</pre>', mArray.mwandetail[0]);
+ }
+ else
+ {
+ status.innerHTML = '<strong>No detailed status information available</strong>';
+ }
+ }
+ );
+//]]></script>
+
+<div id="mwan_detail_status">
+ <fieldset class="cbi-section">
+ <legend><%:MWAN Detailed Status%></legend>
+ <div id="mwan_detail_text"><img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> Collecting data...</div>
+ </fieldset>
+</div>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin-left: 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ #mwan_detail_status {
+ border: 1px dotted #555555;
+ background-color: #FFFFFF;
+ padding: 20px;
+ }
+ #mwan_detail_text {
+ padding: 20px;
+ text-align: left;
+ }
+</style>
+
+<%+footer%>
diff --git a/applications/luci-app-mwan3/luasrc/view/mwan/overview_interface.htm b/applications/luci-app-mwan3/luasrc/view/mwan/overview_interface.htm
new file mode 100644
index 000000000..472c7ce7f
--- /dev/null
+++ b/applications/luci-app-mwan3/luasrc/view/mwan/overview_interface.htm
@@ -0,0 +1,122 @@
+<%+header%>
+
+<ul class="cbi-tabmenu">
+ <li class="cbi-tab"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/overview")%>"><%:Interface Status%></a></li>
+ <li class="cbi-tab-disabled"><a href="<%=luci.dispatcher.build_url("admin/network/mwan/overview/overview_detailed")%>"><%:Detailed Status%></a></li>
+</ul>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+ XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "mwan", "overview", "interface_status")%>', null,
+ function(x, mArray)
+ {
+ var statusDiv = document.getElementById('mwan_status_text');
+ if (mArray.wans)
+ {
+ var interfaceStatus = '';
+ for ( var i = 0; i < mArray.wans.length; i++ )
+ {
+ var status = '';
+ var css = '';
+ switch (mArray.wans[i].status)
+ {
+ case 'online':
+ status = 'Online (tracking active)';
+ css = 'wanon';
+ break;
+ case 'notMonitored':
+ status = 'Online (tracking off)';
+ css = 'wanon';
+ break;
+ case 'offline':
+ status = 'Offline';
+ css = 'wanoff';
+ break;
+ case 'notEnabled':
+ status = 'Disabled';
+ css = 'wanoff';
+ break;
+ }
+ interfaceStatus += String.format(
+ '<span class="%s"><strong>%s (<a href="%q">%s</a>)</strong><br />%s</span>',
+ css, mArray.wans[i].name, mArray.wans[i].link, mArray.wans[i].ifname, status
+ );
+ }
+ statusDiv.innerHTML = interfaceStatus;
+ }
+ else
+ {
+ statusDiv.innerHTML = '<strong>No MWAN interfaces found</strong>';
+ }
+
+ var logs = document.getElementById('mwan_statuslog_text');
+ if (mArray.mwanlog)
+ {
+ var mwanLog = 'Last 50 MWAN systemlog entries. Newest entries sorted at the top :';
+ logs.innerHTML = String.format('<pre>%s<br /><br />%s</pre>', mwanLog, mArray.mwanlog[0]);
+ }
+ else
+ {
+ logs.innerHTML = '<strong>No MWAN systemlog history found</strong>';
+ }
+ }
+ );
+//]]></script>
+
+<div id="mwan_interface_status">
+ <fieldset id="interface_field" class="cbi-section">
+ <legend><%:MWAN Interface Live Status%></legend>
+ <div id="mwan_status_text"><img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> Collecting data...</div>
+ </fieldset>
+ <fieldset class="cbi-section">
+ <legend><%:MWAN Interface Systemlog%></legend>
+ <div id="mwan_statuslog_text"><img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> Collecting data...</div>
+ </fieldset>
+</div>
+
+<style type="text/css">
+ .container { /* container for entire page. fixes bootstrap theme's ridiculously small page width */
+ max-width: none;
+ margin-left: 30px;
+ padding-right: 30px;
+ width: auto;
+ }
+ #mwan_interface_status {
+ background-color: #FFFFFF;
+ border: 1px dotted #555555;
+ padding: 20px;
+ }
+ #interface_field {
+ padding: 12px 20px 20px 20px;
+ }
+ #mwan_status_text {
+ display: table;
+ font-size: 14px;
+ margin: auto;
+ max-width: 1044px;
+ min-width: 246px;
+ width: 100%;
+ }
+ .wanon {
+ background-color: rgb(144, 240, 144);
+ }
+ .wanoff {
+ background-color: rgb(240, 144, 144);
+ }
+ .wanon, .wanoff {
+ border-radius: 60px;
+ box-shadow: 0px 2px 5px -3px;
+ float: left;
+ margin: 8px 3px 0px 3px;
+ min-height: 30px;
+ min-width: 235px;
+ padding: 5px 10px 8px 10px;
+ text-align: center;
+ }
+ #mwan_statuslog_text {
+ padding: 20px;
+ text-align: left;
+ }
+</style>
+
+<%+footer%>
diff --git a/applications/luci-app-mwan3/po/ja/mwan3.po b/applications/luci-app-mwan3/po/ja/mwan3.po
new file mode 100644
index 000000000..cae45b8a2
--- /dev/null
+++ b/applications/luci-app-mwan3/po/ja/mwan3.po
@@ -0,0 +1,562 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.0\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: ja\n"
+
+msgid "%d hour"
+msgstr "%d 時間"
+
+msgid "%d minute"
+msgstr "%d 分"
+
+msgid "%d minutes"
+msgstr "%d 分"
+
+msgid "%d second"
+msgstr "%d 秒"
+
+msgid "%d seconds"
+msgstr "%d 秒"
+
+msgid ""
+"Acceptable values: 1-100. This many Tracking IP addresses must respond for "
+"the link to be deemed up"
+msgstr ""
+"利用å¯èƒ½ãªå€¤: 1-100。上記ã®è¿½è·¡ IP ã®åˆè¨ˆå€‹æ•°ã®ã†ã¡ã€Up 状態ã¨åˆ¤å®šã™ã‚‹ãŸã‚ã«"
+"ã«å¿…è¦ãªã€ãƒ¬ã‚¹ãƒãƒ³ã‚¹ãŒè¿”ã•ã‚ŒãŸè¿½è·¡ IP アドレスã®å€‹æ•°ã§ã™ã€‚"
+
+msgid "Acceptable values: 1-1000. Defaults to 1 if not set"
+msgstr "利用å¯èƒ½ãªå€¤: 1-1000。空欄ã®å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã¯1ã§ã™ã€‚"
+
+msgid "Advanced"
+msgstr "詳細設定"
+
+msgid "Check IP rules"
+msgstr "IP ルールã®ãƒã‚§ãƒƒã‚¯"
+
+msgid "Check routing table"
+msgstr "ルーティング テーブルã®ãƒã‚§ãƒƒã‚¯"
+
+msgid "Configuration"
+msgstr "設定"
+
+msgid "Currently Configured Interfaces"
+msgstr "設定済ã¿ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
+
+msgid "Currently Configured Members"
+msgstr "設定済ã¿ãƒ¡ãƒ³ãƒãƒ¼"
+
+msgid "Currently Configured Policies"
+msgstr "設定済ã¿ãƒãƒªã‚·ãƒ¼"
+
+msgid "Destination address"
+msgstr "宛先アドレス"
+
+msgid "Destination port"
+msgstr "宛先ãƒãƒ¼ãƒˆ"
+
+msgid "Detailed Status"
+msgstr "詳細ステータス"
+
+msgid "Diagnostic Results"
+msgstr "診断çµæžœ"
+
+msgid "Diagnostics"
+msgstr "診断機能"
+
+msgid ""
+"Downed interface will be deemed up after this many successful ping tests"
+msgstr ""
+"Down 状態ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ãŒ Up 状態ã¨åˆ¤æ–­ã•ã‚Œã‚‹ã¾ã§ã«è¦ã™ã‚‹ ping テストã®æˆ"
+"功回数ã§ã™ã€‚"
+
+msgid "Enabled"
+msgstr "有効"
+
+msgid "Errors"
+msgstr "エラー"
+
+msgid "Failure interval"
+msgstr "障害検出 インターãƒãƒ«"
+
+msgid "Flush conntrack table"
+msgstr ""
+
+msgid "Flush global firewall conntrack table on interface events"
+msgstr ""
+
+msgid "Hotplug Script"
+msgstr "ホットプラグ スクリプト"
+
+msgid "Hotplug ifdown"
+msgstr "ホットプラグ ifdown"
+
+msgid "Hotplug ifup"
+msgstr "ホットプラグ ifup"
+
+msgid "IPset"
+msgstr "IPset"
+
+msgid "IPv4"
+msgstr "IPv4"
+
+msgid "IPv6"
+msgstr "IPv6"
+
+msgid "Interface"
+msgstr "インターフェース"
+
+msgid "Interface Status"
+msgstr "インターフェース ステータス"
+
+msgid "Interface down"
+msgstr "インターフェース Down"
+
+msgid "Interface up"
+msgstr "インターフェース Up"
+
+msgid "Interface will be deemed down after this many failed ping tests"
+msgstr ""
+"インターフェース㌠Down 状態ã¨åˆ¤æ–­ã•ã‚Œã‚‹ã¾ã§ã«è¦ã™ã‚‹ ping テストã®å¤±æ•—回数ã§"
+"ã™ã€‚"
+
+msgid "Interfaces"
+msgstr "インターフェース"
+
+msgid "Internet Protocol"
+msgstr "インターãƒãƒƒãƒˆ プロトコル"
+
+msgid "Last resort"
+msgstr "最終手段"
+
+msgid "Load Balancing"
+msgstr "è² è·åˆ†æ•£"
+
+msgid "Loading"
+msgstr "読込中"
+
+msgid "MWAN Config"
+msgstr "MWAN 設定"
+
+msgid "MWAN Detailed Status"
+msgstr "MWAN 詳細ステータス"
+
+msgid "MWAN Interface Configuration"
+msgstr "MWAN インターフェース設定"
+
+msgid "MWAN Interface Configuration - %s"
+msgstr "MWAN インターフェース設定 - %s"
+
+msgid "MWAN Interface Diagnostics"
+msgstr "MWAN インターフェース診断"
+
+msgid "MWAN Interface Live Status"
+msgstr "MWAN インターフェース Live ステータス"
+
+msgid "MWAN Interface Systemlog"
+msgstr "MWAN インターフェース システムログ"
+
+msgid "MWAN Member Configuration"
+msgstr "MWAN メンãƒãƒ¼è¨­å®š"
+
+msgid "MWAN Member Configuration - %s"
+msgstr "MWAN メンãƒãƒ¼è¨­å®š - %s"
+
+msgid "MWAN Policy Configuration"
+msgstr "MWAN ãƒãƒªã‚·ãƒ¼è¨­å®š"
+
+msgid "MWAN Policy Configuration - %s"
+msgstr "MWAN ãƒãƒªã‚·ãƒ¼è¨­å®š - %s"
+
+msgid "MWAN Rule Configuration"
+msgstr "MWAN ルール設定"
+
+msgid "MWAN Rule Configuration - %s"
+msgstr "MWAN ルール設定 - %s"
+
+msgid "MWAN Service Control"
+msgstr "MWAN サービス コントロール"
+
+msgid ""
+"MWAN supports up to 250 physical and/or logical interfaces<br />MWAN "
+"requires that all interfaces have a unique metric configured in /etc/config/"
+"network<br />Names must match the interface name found in /etc/config/"
+"network (see advanced tab)<br />Names may contain characters A-Z, a-z, 0-9, "
+"_ and no spaces<br />Interfaces may not share the same name as configured "
+"members, policies or rules"
+msgstr ""
+"MWAN ã¯ã€250個ã¾ã§ã®ç‰©ç†ã¾ãŸã¯è«–ç†ã€ã‚ã‚‹ã„ã¯ä¸¡æ–¹ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚’サãƒãƒ¼ãƒˆ"
+"ã—ã¾ã™ã€‚<br />MWAN ã¯ã€å…¨ã¦ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ãŒ /etc/config/network ã§è¨­å®šã•"
+"れるユニークãªãƒ¡ãƒˆãƒªãƒƒã‚¯ã‚’æŒã¤ã“ã¨ã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚<br />下記 \"インターフェー"
+"ス\" ã®åå‰ã¯ã€ /etc/config/network ã«å­˜åœ¨ã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹åã¨åŒã˜ã§ãªã‘"
+"ã‚Œã°ãªã‚Šã¾ã›ã‚“(詳細設定タブを確èªï¼‰ã€‚<br />åå‰ã¯ A-Z, a-z, 0-9, _ ã‚’å«ã‚€ã“"
+"ã¨ãŒã§ãã¾ã™ãŒã€ã‚¹ãƒšãƒ¼ã‚¹ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。<br />インターフェースã«ã¯ã€è¨­å®šæ¸ˆ"
+"ã¿ã®ãƒ¡ãƒ³ãƒãƒ¼ã‚„ãƒãƒªã‚·ãƒ¼ã€ãƒ«ãƒ¼ãƒ«ã¨åŒã˜åå‰ã‚’使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+
+msgid ""
+"May be entered as a single or multiple port(s) (eg \"22\" or \"80,443\") or "
+"as a portrange (eg \"1024:2048\") without quotes"
+msgstr ""
+"å˜ä¸€ã¾ãŸã¯è¤‡æ•°ã®ãƒãƒ¼ãƒˆï¼ˆä¾‹: \"22\" ã¾ãŸã¯ \"80,443\")ã€ã‚ã‚‹ã„ã¯ãƒãƒ¼ãƒˆã®ç¯„囲"
+"(例: \"1024:2048\")をã€ã‚¯ã‚ªãƒ¼ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ç„¡ã—ã§æŒ‡å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid "Member used"
+msgstr "使用ã•ã‚Œã‚‹ãƒ¡ãƒ³ãƒãƒ¼"
+
+msgid "Members"
+msgstr "メンãƒãƒ¼"
+
+msgid ""
+"Members are profiles attaching a metric and weight to an MWAN interface<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />Members "
+"may not share the same name as configured interfaces, policies or rules"
+msgstr ""
+"メンãƒãƒ¼ã¯ã€MWAN インターフェースã®ãƒ¡ãƒˆãƒªãƒƒã‚¯ãŠã‚ˆã³ã‚¦ã‚¨ã‚¤ãƒˆã‚’関連付ã‘ãŸãƒ—ロ"
+"ファイルã§ã™ã€‚<br />åå‰ã¯ A-Z, a-z, 0-9, _ ã‚’å«ã‚€ã“ã¨ãŒã§ãã¾ã™ãŒã€ã‚¹ãƒšãƒ¼ã‚¹"
+"ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。<br />メンãƒãƒ¼ã«ã¯ã€è¨­å®šæ¸ˆã¿ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚„ãƒãƒªã‚·ãƒ¼ã€"
+"ルールã¨åŒã˜åå‰ã‚’使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+
+msgid "Members assigned"
+msgstr "アサイン済ã¿ãƒ¡ãƒ³ãƒãƒ¼"
+
+msgid "Metric"
+msgstr "メトリック"
+
+msgid ""
+"Name of IPset rule. Requires IPset rule in /etc/dnsmasq.conf (eg \"ipset=/"
+"youtube.com/youtube\")"
+msgstr ""
+"IPset ルールã®åå‰ã§ã™ã€‚ã“ã®ãƒ«ãƒ¼ãƒ«ã¯ã€ /etc/dnsmasq.conf ã§å¿…è¦ã§ã™ã€‚(例: "
+"\"ipset=/youtube.com/youtube\")"
+
+msgid "Network Config"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯è¨­å®š"
+
+msgid "No"
+msgstr "ã„ã„ãˆ"
+
+msgid "Overview"
+msgstr "概è¦"
+
+msgid "Ping count"
+msgstr "Ping 回数"
+
+msgid "Ping default gateway"
+msgstr "Ping デフォルト ゲートウェイ"
+
+msgid "Ping interval"
+msgstr "Ping インターãƒãƒ«"
+
+msgid "Ping interval during failure detection"
+msgstr "障害検出動作中㮠Ping 実行間隔ã§ã™ã€‚"
+
+msgid "Ping interval during failure recovering"
+msgstr "障害復旧中㮠Ping 実行間隔ã§ã™ã€‚"
+
+msgid "Ping size"
+msgstr "Ping サイズ"
+
+msgid "Ping timeout"
+msgstr "Ping タイムアウト"
+
+msgid "Ping tracking IP"
+msgstr "Ping トラッキング IP"
+
+msgid "Policies"
+msgstr "ãƒãƒªã‚·ãƒ¼"
+
+msgid ""
+"Policies are profiles grouping one or more members controlling how MWAN "
+"distributes traffic<br />Member interfaces with lower metrics are used "
+"first. Interfaces with the same metric load-balance<br />Load-balanced "
+"member interfaces distribute more traffic out those with higher weights<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces. Names must be "
+"15 characters or less<br />Policies may not share the same name as "
+"configured interfaces, members or rules"
+msgstr ""
+"ãƒãƒªã‚·ãƒ¼ã¯ã€MWANãŒã©ã®ã‚ˆã†ã«ãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ã®åˆ†é…ã‚’è¡Œã†ã‹ã‚’制御ã™ã‚‹ã€1ã¤ä»¥ä¸Šã®ãƒ¡"
+"ンãƒãƒ¼ã‚’グループ化ã™ã‚‹ãƒ—ロファイルã§ã™ã€‚<br />最å°ã®ãƒ¡ãƒˆãƒªãƒƒã‚¯ã‚’æŒã¤ãƒ¡ãƒ³ãƒãƒ¼ "
+"インターフェースãŒæœ€åˆã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚åŒã˜ãƒ¡ãƒˆãƒªãƒƒã‚¯ã‚’æŒã¤è¤‡æ•°ã®ã‚¤ãƒ³ã‚¿ãƒ¼"
+"フェースã§ã¯ã€è² è·åˆ†æ•£ã‚’è¡Œã„ã¾ã™ã€‚<br />è² è·åˆ†æ•£ã«è¨­å®šã•ã‚ŒãŸãƒ¡ãƒ³ãƒãƒ¼ インター"
+"フェースã§ã¯ã€ã‚¦ã‚§ã‚¤ãƒˆã®å€¤ãŒå¤§ãã„æ–¹ã«ã‚ˆã‚Šå¤šãã®ãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ã‚’分é…ã—ã¾ã™ã€‚"
+"<br />åå‰ã¯ A-Z, a-z, 0-9, _ ã‚’å«ã‚€ã“ã¨ãŒã§ãã¾ã™ãŒã€ã‚¹ãƒšãƒ¼ã‚¹ã¯ä½¿ç”¨ã§ãã¾ã›"
+"ん。ã¾ãŸã€15文字以内ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。<br />ãƒãƒªã‚·ãƒ¼ã§ã¯ã€è¨­å®šæ¸ˆã¿ã®ã‚¤ãƒ³"
+"ターフェースやメンãƒãƒ¼ã€ãƒ«ãƒ¼ãƒ«ã¨åŒã˜åå‰ã‚’使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+
+msgid "Policy assigned"
+msgstr "アサイン済ã¿ãƒãƒªã‚·ãƒ¼"
+
+msgid "Protocol"
+msgstr "プロトコル"
+
+msgid "Recovery interval"
+msgstr "障害復旧 インターãƒãƒ«"
+
+msgid "Restart MWAN"
+msgstr "MWAN ã®å†èµ·å‹•"
+
+msgid "Restore default hotplug script"
+msgstr "デフォルトã®ãƒ›ãƒƒãƒˆãƒ—ラグ スクリプトã®å¾©å…ƒ"
+
+msgid "Restore..."
+msgstr "復元..."
+
+msgid "Rules"
+msgstr "ルール"
+
+msgid ""
+"Rules specify which traffic will use a particular MWAN policy based on IP "
+"address, port or protocol<br />Rules are matched from top to bottom. Rules "
+"below a matching rule are ignored. Traffic not matching any rule is routed "
+"using the main routing table<br />Traffic destined for known (other than "
+"default) networks is handled by the main routing table. Traffic matching a "
+"rule, but all WAN interfaces for that policy are down will be blackholed<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />Rules may "
+"not share the same name as configured interfaces, members or policies"
+msgstr ""
+"ルール㯠IP アドレスやãƒãƒ¼ãƒˆã€ãƒ—ロトコルを基ã«ã€ãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ãŒã©ã® MWAN ãƒãƒª"
+"シーを使用ã™ã‚‹ã‹ã‚’設定ã—ã¾ã™ã€‚<br />ルールã¯ä¸Šã‹ã‚‰ä¸‹ã¸ãƒžãƒƒãƒãƒ³ã‚°ãŒè¡Œã‚ã‚Œã€åˆ"
+"致ã—ãŸãƒ«ãƒ¼ãƒ«ã‚ˆã‚Šä¸‹ã®ãƒ«ãƒ¼ãƒ«ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚å…¨ã¦ã®ãƒ«ãƒ¼ãƒ«ã«åˆè‡´ã—ãªã„トラフィッ"
+"クã¯ã€ãƒ¡ã‚¤ãƒ³ã®ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚° テーブルを使用ã—ã¦ãƒ«ãƒ¼ãƒˆãŒæ±ºå®šã•ã‚Œã¾ã™ã€‚<br />既知"
+"(デフォルト以外)ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸ã®ãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ã¯ã€ãƒ¡ã‚¤ãƒ³ã®ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚° テー"
+"ブルã«ã‚ˆã£ã¦åˆ¶å¾¡ã•ã‚Œã¾ã™ã€‚ルールã«åˆè‡´ã—ãŸãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ã§ã‚‚ã€å½“該ãƒãƒªã‚·ãƒ¼ã®å…¨ "
+"WAN インターフェース㌠Down 状態ã®å ´åˆã¯ blackhole 状態ã¨ãªã‚Šã¾ã™ã€‚<br />åå‰"
+"㯠A-Z, a-z, 0-9, _ ã‚’å«ã‚€ã“ã¨ãŒã§ãã¾ã™ãŒã€ã‚¹ãƒšãƒ¼ã‚¹ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。<br />"
+"ルールã¯ã€è¨­å®šæ¸ˆã¿ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚„メンãƒãƒ¼ã€ãƒãƒªã‚·ãƒ¼ã¨åŒã˜åå‰ã‚’使用ã™ã‚‹"
+"ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+
+msgid "Seconds. Acceptable values: 1-1000000. Defaults to 600 if not set"
+msgstr "秒。利用å¯èƒ½ãªå€¤: 1-1000000。空欄ã®å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯600ã§ã™ã€‚"
+
+msgid "Source address"
+msgstr "é€ä¿¡å…ƒã‚¢ãƒ‰ãƒ¬ã‚¹"
+
+msgid "Source port"
+msgstr "é€ä¿¡å…ƒãƒãƒ¼ãƒˆ"
+
+msgid "Start MWAN"
+msgstr "MWAN ã®èµ·å‹•"
+
+msgid "Sticky"
+msgstr "Sticky"
+
+msgid "Sticky timeout"
+msgstr "Sticky タイムアウト"
+
+msgid "Stop MWAN"
+msgstr "MWAN ã®åœæ­¢"
+
+msgid "Supports CIDR notation (eg \"192.168.100.0/24\") without quotes"
+msgstr "CIDR 表記ã®ã‚µãƒãƒ¼ãƒˆï¼ˆä¾‹: \"192.168.100.0/24\")"
+
+msgid "There are currently %d of 250 supported interfaces configured"
+msgstr "ç¾åœ¨ã€250個中 %d 個ã®ã‚µãƒãƒ¼ãƒˆã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ãŒè¨­å®šæ¸ˆã¿ã§ã™ã€‚"
+
+msgid ""
+"This IP address will be pinged to dermine if the link is up or down. Leave "
+"blank to assume interface is always online"
+msgstr ""
+"ã“れらã¯ã€ãƒªãƒ³ã‚¯ã® Up ã¾ãŸã¯ Down を判定ã™ã‚‹ãŸã‚ã« Ping ãŒé€ä¿¡ã•ã‚Œã‚‹IP アドレ"
+"スã§ã™ã€‚常ã«ã‚ªãƒ³ãƒ©ã‚¤ãƒ³ã¨ã™ã‚‹å ´åˆã€ç©ºæ¬„ã®ã¾ã¾ã«ã—ã¾ã™ã€‚"
+
+msgid ""
+"This displays the metric assigned to this interface in /etc/config/network"
+msgstr ""
+"/etc/config/network ã§ã€ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒˆãƒªãƒƒã‚¯ã§ã™ã€‚"
+
+msgid "This section allows you to modify the contents of /etc/config/mwan3"
+msgstr ""
+"ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ /etc/config/mwan3 ã®å†…容を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid "This section allows you to modify the contents of /etc/config/network"
+msgstr ""
+"ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ /etc/config/network ã®å†…容を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid "This section allows you to modify the contents of /etc/config/wireless"
+msgstr ""
+"ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ /etc/config/wireless ã®å†…容を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"This section allows you to modify the contents of /etc/hotplug.d/iface/16-"
+"mwancustom<br />This is useful for running system commands and/or scripts "
+"based on interface ifup or ifdown hotplug events<br /><br />Notes:<br />The "
+"first line of the script must be &#34;#!/bin/sh&#34; without quotes<br /"
+">Lines beginning with # are comments and are not executed<br /><br /"
+">Available variables:<br />$ACTION is the hotplug event (ifup, ifdown)<br />"
+"$INTERFACE is the interface name (wan1, wan2, etc.)<br />$DEVICE is the "
+"device name attached to the interface (eth0.1, eth1, etc.)"
+msgstr ""
+"ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ /etc/hotplug.d/iface/16-mwancustom ã®å†…容を変更ã™ã‚‹ã“ã¨"
+"ãŒã§ãã¾ã™ã€‚<br />ã“ã‚Œã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã® ifup ã¾ãŸã¯ ifdown ホットプラグ "
+"イベント時ã«ã‚·ã‚¹ãƒ†ãƒ ã‚³ãƒžãƒ³ãƒ‰ã¾ãŸã¯ã‚¹ã‚¯ãƒªãƒ—トã€ã‚‚ã—ãã¯ãã®ä¸¡æ–¹ã‚’実行ã™ã‚‹ã“ã¨"
+"ã«å½¹ç«‹ã¡ã¾ã™ã€‚<br /><br />注æ„:<br />スクリプトã®1行目ã¯ã€&#34;#!bin/sh&#34; "
+"ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ï¼ˆã‚¯ã‚ªãƒ¼ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ä¸è¦ï¼‰ã€‚<br /># ã§å§‹ã¾ã‚‹è¡Œã¯ã‚³ãƒ¡ãƒ³ãƒˆã¨"
+"ã—ã¦èªè­˜ã•ã‚Œã€å®Ÿè¡Œã•ã‚Œã¾ã›ã‚“。<br /><br />利用å¯èƒ½ãªå¤‰æ•°:<br />$ACTION - ホッ"
+"トプラグ イベント (ifup, ifdown)<br />$INTERFACE - インターフェースå(wan1, "
+"wan2, ãã®ä»–)<br />$DEVICE - インターフェースã«ã‚¢ã‚¿ãƒƒãƒã•ã‚ŒãŸãƒ‡ãƒã‚¤ã‚¹ã®åå‰"
+"(eth0.1, eth1, ãã®ä»–)"
+
+msgid "Tracking IP"
+msgstr "追跡 IP"
+
+msgid "Tracking reliability"
+msgstr "追跡ã®ä¿¡é ¼æ€§"
+
+msgid "Traffic Rules"
+msgstr "トラフィック ルール"
+
+msgid ""
+"Traffic from the same source IP address that previously matched this rule "
+"within the sticky timeout period will use the same WAN interface"
+msgstr ""
+"以å‰ã“ã®ãƒ«ãƒ¼ãƒ«ã«ãƒžãƒƒãƒã—ãŸåŒã˜ã‚¢ã‚¯ã‚»ã‚¹å…ƒ IP アドレスã‹ã‚‰ã®ãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ãŒã€å†"
+"度 Sticky 制é™æ™‚間内ã«ãƒžãƒƒãƒã—ãŸå ´åˆã«ã¯ã€åŒã˜ WAN インターフェースãŒä½¿ç”¨ã•ã‚Œ"
+"ã¾ã™ã€‚"
+
+msgid "Troubleshooting"
+msgstr "トラブルシューティング"
+
+msgid "Troubleshooting Data"
+msgstr "トラブルシューティング データ"
+
+msgid "View the contents of /etc/protocols for protocol descriptions"
+msgstr "プロトコルã®èª¬æ˜Žã«ã¤ã„ã¦ã¯ã€ /etc/protocols ã®å†…容を確èªã—ã¦ãã ã•ã„。"
+
+msgid "WARNING: %d interfaces are configured exceeding the maximum of 250!"
+msgstr ""
+"警告: %d 個ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ãŒã€æœ€å¤§å€‹æ•°ã® 250個 を超ãˆã¦è¨­å®šã•ã‚Œã¦ã„ã¾ã™ï¼"
+
+msgid ""
+"WARNING: Some policies have names exceeding the maximum of 15 characters!"
+msgstr ""
+"警告: 最大文字数㮠15 文字を超ãˆã‚‹åå‰ãŒè¨­å®šã•ã‚Œã¦ã„ã‚‹ãƒãƒªã‚·ãƒ¼ãŒã‚ã‚Šã¾ã™ï¼"
+
+msgid ""
+"WARNING: some interfaces are configured incorrectly or not at all in /etc/"
+"config/network!"
+msgstr ""
+"警告: 設定を誤ã£ã¦ã„ã‚‹ã‹ã€ã‚‚ã—ãã¯å®Œå…¨ã«è¨­å®šã•ã‚Œã¦ã„ãªã„インターフェースãŒã‚"
+"ã‚Šã¾ã™ï¼"
+
+msgid ""
+"WARNING: some interfaces have a higher reliability requirement than there "
+"are tracking IP addresses!"
+msgstr ""
+"警告: 追跡 IP アドレスã®å€‹æ•°ã‚ˆã‚Šå¤§ãã„追跡信頼性ã®å€¤ãŒè¨­å®šã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼"
+"フェースãŒã‚ã‚Šã¾ã™ï¼"
+
+msgid ""
+"WARNING: some interfaces have duplicate metrics configured in /etc/config/"
+"network!"
+msgstr ""
+"警告: /etc/config/network ã§ã€é‡è¤‡ã™ã‚‹ãƒ¡ãƒˆãƒªãƒƒã‚¯ã‚’設定ã•ã‚Œã¦ã„るインター"
+"フェースãŒã‚ã‚Šã¾ã™ï¼"
+
+msgid ""
+"WARNING: some interfaces have no default route in the main routing table!"
+msgstr ""
+"警告: メインã®ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚° テーブルã§ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆ ルートを設定ã•ã‚Œã¦ã„ãªã„イ"
+"ンターフェースãŒã‚ã‚Šã¾ã™ï¼"
+
+msgid ""
+"WARNING: some interfaces have no metric configured in /etc/config/network!"
+msgstr ""
+"警告: /etc/config/network ã§ã€ãƒ¡ãƒˆãƒªãƒƒã‚¯ã‚’設定ã•ã‚Œã¦ã„ãªã„インターフェースãŒ"
+"ã‚ã‚Šã¾ã™ï¼"
+
+msgid ""
+"WARNING: some rules have a port configured with no or improper protocol "
+"specified! Please configure a specific protocol!"
+msgstr ""
+"警告: ä¸é©åˆ‡ãªãƒ—ロトコルãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã€ã¾ãŸã¯ä½•ã‚‚指定ã•ã‚Œã¦ã„ãªã„ãƒãƒ¼ãƒˆã‚’"
+"設定ã•ã‚ŒãŸãƒ«ãƒ¼ãƒ«ãŒã‚ã‚Šã¾ã™ï¼ãƒ—ロトコルを指定ã—ç›´ã—ã¦ãã ã•ã„ï¼"
+
+msgid ""
+"WARNING: this and other interfaces have duplicate metrics configured in /etc/"
+"config/network!"
+msgstr ""
+"警告: ã“ã‚Œã¨ä»–ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã§é‡è¤‡ã™ã‚‹ãƒ¡ãƒˆãƒªãƒƒã‚¯ãŒ /etc/config/network ã«"
+"設定ã•ã‚Œã¦ã„ã¾ã™ï¼"
+
+msgid ""
+"WARNING: this interface has a higher reliability requirement than there are "
+"tracking IP addresses!"
+msgstr ""
+"警告: ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¯ã€è¿½è·¡ IP アドレスã®å€‹æ•°ã‚ˆã‚Šå¤§ãã„追跡信頼性ã®å€¤"
+"を設定ã•ã‚Œã¦ã„ã¾ã™ï¼"
+
+msgid "WARNING: this interface has no default route in the main routing table!"
+msgstr ""
+"警告: ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¯ã€ãƒ¡ã‚¤ãƒ³ã®ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚° テーブルã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆ ルー"
+"トãŒè¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“ï¼"
+
+msgid ""
+"WARNING: this interface has no metric configured in /etc/config/network!"
+msgstr ""
+"警告: ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¯ã€ /etc/config/network ã§ãƒ¡ãƒˆãƒªãƒƒã‚¯ãŒè¨­å®šã•ã‚Œã¦ã„"
+"ã¾ã›ã‚“ï¼"
+
+msgid ""
+"WARNING: this interface is configured incorrectly or not at all in /etc/"
+"config/network!"
+msgstr ""
+"警告: ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¯ /etc/config/network ã§è¨­å®šãŒèª¤ã£ã¦ã„ã‚‹ã‹ã€ã‚‚ã—ã"
+"ã¯å®Œå…¨ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“ï¼"
+
+msgid ""
+"WARNING: this policy's name is %d characters exceeding the maximum of 15!"
+msgstr ""
+"警告: ã“ã®ãƒãƒªã‚·ãƒ¼ã®åå‰ã¯ã€æœ€å¤§æ–‡å­—æ•° 15 文字を超ãˆã‚‹ %d 文字ãŒè¨­å®šã•ã‚Œã¦ã„"
+"ã¾ã™ï¼"
+
+msgid ""
+"WARNING: this rule is incorrectly configured with no or improper protocol "
+"specified! Please configure a specific protocol!"
+msgstr ""
+"警告: ã“ã®ãƒ«ãƒ¼ãƒ«ã¯ä¸é©åˆ‡ãªãƒ—ロトコルãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã‹ã€ã¾ãŸã¯ä½•ã‚‚指定ã•ã‚Œã¦"
+"ã„ã¾ã›ã‚“ï¼ãƒ—ロトコルを指定ã—ç›´ã—ã¦ãã ã•ã„ï¼"
+
+msgid "Weight"
+msgstr "ウエイト"
+
+msgid ""
+"When all policy members are offline use this behavior for matched traffic"
+msgstr ""
+"ãƒãƒªã‚·ãƒ¼ã®å…¨ãƒ¡ãƒ³ãƒãƒ¼ãŒã‚ªãƒ•ãƒ©ã‚¤ãƒ³ã®å ´åˆã€åˆè‡´ã—ãŸãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ã«å¯¾ã—ã¦ã“ã®ãµã‚‹"
+"ã¾ã„ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚"
+
+msgid "Wireless Config"
+msgstr "無線設定"
+
+msgid "Yes"
+msgstr "ã¯ã„"
+
+msgid "always"
+msgstr "always"
+
+msgid "blackhole (drop)"
+msgstr "blackhole (drop)"
+
+msgid "default (use main routing table)"
+msgstr "デフォルト(メインã®ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚° テーブルを使用)"
+
+msgid "ifdown"
+msgstr "ifdown"
+
+msgid "ifup"
+msgstr "ifup"
+
+msgid "never"
+msgstr "never"
+
+msgid "unreachable (reject)"
+msgstr "unreachable (reject)"
diff --git a/applications/luci-app-mwan3/po/templates/mwan3.pot b/applications/luci-app-mwan3/po/templates/mwan3.pot
new file mode 100644
index 000000000..0bda248fa
--- /dev/null
+++ b/applications/luci-app-mwan3/po/templates/mwan3.pot
@@ -0,0 +1,464 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "%d hour"
+msgstr ""
+
+msgid "%d minute"
+msgstr ""
+
+msgid "%d minutes"
+msgstr ""
+
+msgid "%d second"
+msgstr ""
+
+msgid "%d seconds"
+msgstr ""
+
+msgid ""
+"Acceptable values: 1-100. This many Tracking IP addresses must respond for "
+"the link to be deemed up"
+msgstr ""
+
+msgid "Acceptable values: 1-1000. Defaults to 1 if not set"
+msgstr ""
+
+msgid "Advanced"
+msgstr ""
+
+msgid "Check IP rules"
+msgstr ""
+
+msgid "Check routing table"
+msgstr ""
+
+msgid "Configuration"
+msgstr ""
+
+msgid "Currently Configured Interfaces"
+msgstr ""
+
+msgid "Currently Configured Members"
+msgstr ""
+
+msgid "Currently Configured Policies"
+msgstr ""
+
+msgid "Destination address"
+msgstr ""
+
+msgid "Destination port"
+msgstr ""
+
+msgid "Detailed Status"
+msgstr ""
+
+msgid "Diagnostic Results"
+msgstr ""
+
+msgid "Diagnostics"
+msgstr ""
+
+msgid ""
+"Downed interface will be deemed up after this many successful ping tests"
+msgstr ""
+
+msgid "Enabled"
+msgstr ""
+
+msgid "Errors"
+msgstr ""
+
+msgid "Failure interval"
+msgstr ""
+
+msgid "Flush conntrack table"
+msgstr ""
+
+msgid "Flush global firewall conntrack table on interface events"
+msgstr ""
+
+msgid "Hotplug Script"
+msgstr ""
+
+msgid "Hotplug ifdown"
+msgstr ""
+
+msgid "Hotplug ifup"
+msgstr ""
+
+msgid "IPset"
+msgstr ""
+
+msgid "IPv4"
+msgstr ""
+
+msgid "IPv6"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid "Interface Status"
+msgstr ""
+
+msgid "Interface down"
+msgstr ""
+
+msgid "Interface up"
+msgstr ""
+
+msgid "Interface will be deemed down after this many failed ping tests"
+msgstr ""
+
+msgid "Interfaces"
+msgstr ""
+
+msgid "Internet Protocol"
+msgstr ""
+
+msgid "Last resort"
+msgstr ""
+
+msgid "Load Balancing"
+msgstr ""
+
+msgid "Loading"
+msgstr ""
+
+msgid "MWAN Config"
+msgstr ""
+
+msgid "MWAN Detailed Status"
+msgstr ""
+
+msgid "MWAN Interface Configuration"
+msgstr ""
+
+msgid "MWAN Interface Configuration - %s"
+msgstr ""
+
+msgid "MWAN Interface Diagnostics"
+msgstr ""
+
+msgid "MWAN Interface Live Status"
+msgstr ""
+
+msgid "MWAN Interface Systemlog"
+msgstr ""
+
+msgid "MWAN Member Configuration"
+msgstr ""
+
+msgid "MWAN Member Configuration - %s"
+msgstr ""
+
+msgid "MWAN Policy Configuration"
+msgstr ""
+
+msgid "MWAN Policy Configuration - %s"
+msgstr ""
+
+msgid "MWAN Rule Configuration"
+msgstr ""
+
+msgid "MWAN Rule Configuration - %s"
+msgstr ""
+
+msgid "MWAN Service Control"
+msgstr ""
+
+msgid ""
+"MWAN supports up to 250 physical and/or logical interfaces<br />MWAN "
+"requires that all interfaces have a unique metric configured in /etc/config/"
+"network<br />Names must match the interface name found in /etc/config/"
+"network (see advanced tab)<br />Names may contain characters A-Z, a-z, 0-9, "
+"_ and no spaces<br />Interfaces may not share the same name as configured "
+"members, policies or rules"
+msgstr ""
+
+msgid ""
+"May be entered as a single or multiple port(s) (eg \"22\" or \"80,443\") or "
+"as a portrange (eg \"1024:2048\") without quotes"
+msgstr ""
+
+msgid "Member used"
+msgstr ""
+
+msgid "Members"
+msgstr ""
+
+msgid ""
+"Members are profiles attaching a metric and weight to an MWAN interface<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />Members "
+"may not share the same name as configured interfaces, policies or rules"
+msgstr ""
+
+msgid "Members assigned"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid ""
+"Name of IPset rule. Requires IPset rule in /etc/dnsmasq.conf (eg \"ipset=/"
+"youtube.com/youtube\")"
+msgstr ""
+
+msgid "Network Config"
+msgstr ""
+
+msgid "No"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Ping count"
+msgstr ""
+
+msgid "Ping default gateway"
+msgstr ""
+
+msgid "Ping interval"
+msgstr ""
+
+msgid "Ping interval during failure detection"
+msgstr ""
+
+msgid "Ping interval during failure recovering"
+msgstr ""
+
+msgid "Ping size"
+msgstr ""
+
+msgid "Ping timeout"
+msgstr ""
+
+msgid "Ping tracking IP"
+msgstr ""
+
+msgid "Policies"
+msgstr ""
+
+msgid ""
+"Policies are profiles grouping one or more members controlling how MWAN "
+"distributes traffic<br />Member interfaces with lower metrics are used "
+"first. Interfaces with the same metric load-balance<br />Load-balanced "
+"member interfaces distribute more traffic out those with higher weights<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces. Names must be "
+"15 characters or less<br />Policies may not share the same name as "
+"configured interfaces, members or rules"
+msgstr ""
+
+msgid "Policy assigned"
+msgstr ""
+
+msgid "Protocol"
+msgstr ""
+
+msgid "Recovery interval"
+msgstr ""
+
+msgid "Restart MWAN"
+msgstr ""
+
+msgid "Restore default hotplug script"
+msgstr ""
+
+msgid "Restore..."
+msgstr ""
+
+msgid "Rules"
+msgstr ""
+
+msgid ""
+"Rules specify which traffic will use a particular MWAN policy based on IP "
+"address, port or protocol<br />Rules are matched from top to bottom. Rules "
+"below a matching rule are ignored. Traffic not matching any rule is routed "
+"using the main routing table<br />Traffic destined for known (other than "
+"default) networks is handled by the main routing table. Traffic matching a "
+"rule, but all WAN interfaces for that policy are down will be blackholed<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />Rules may "
+"not share the same name as configured interfaces, members or policies"
+msgstr ""
+
+msgid "Seconds. Acceptable values: 1-1000000. Defaults to 600 if not set"
+msgstr ""
+
+msgid "Source address"
+msgstr ""
+
+msgid "Source port"
+msgstr ""
+
+msgid "Start MWAN"
+msgstr ""
+
+msgid "Sticky"
+msgstr ""
+
+msgid "Sticky timeout"
+msgstr ""
+
+msgid "Stop MWAN"
+msgstr ""
+
+msgid "Supports CIDR notation (eg \"192.168.100.0/24\") without quotes"
+msgstr ""
+
+msgid "There are currently %d of 250 supported interfaces configured"
+msgstr ""
+
+msgid ""
+"This IP address will be pinged to dermine if the link is up or down. Leave "
+"blank to assume interface is always online"
+msgstr ""
+
+msgid ""
+"This displays the metric assigned to this interface in /etc/config/network"
+msgstr ""
+
+msgid "This section allows you to modify the contents of /etc/config/mwan3"
+msgstr ""
+
+msgid "This section allows you to modify the contents of /etc/config/network"
+msgstr ""
+
+msgid "This section allows you to modify the contents of /etc/config/wireless"
+msgstr ""
+
+msgid ""
+"This section allows you to modify the contents of /etc/hotplug.d/iface/16-"
+"mwancustom<br />This is useful for running system commands and/or scripts "
+"based on interface ifup or ifdown hotplug events<br /><br />Notes:<br />The "
+"first line of the script must be &#34;#!/bin/sh&#34; without quotes<br /"
+">Lines beginning with # are comments and are not executed<br /><br /"
+">Available variables:<br />$ACTION is the hotplug event (ifup, ifdown)<br />"
+"$INTERFACE is the interface name (wan1, wan2, etc.)<br />$DEVICE is the "
+"device name attached to the interface (eth0.1, eth1, etc.)"
+msgstr ""
+
+msgid "Tracking IP"
+msgstr ""
+
+msgid "Tracking reliability"
+msgstr ""
+
+msgid "Traffic Rules"
+msgstr ""
+
+msgid ""
+"Traffic from the same source IP address that previously matched this rule "
+"within the sticky timeout period will use the same WAN interface"
+msgstr ""
+
+msgid "Troubleshooting"
+msgstr ""
+
+msgid "Troubleshooting Data"
+msgstr ""
+
+msgid "View the contents of /etc/protocols for protocol descriptions"
+msgstr ""
+
+msgid "WARNING: %d interfaces are configured exceeding the maximum of 250!"
+msgstr ""
+
+msgid ""
+"WARNING: Some policies have names exceeding the maximum of 15 characters!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces are configured incorrectly or not at all in /etc/"
+"config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have a higher reliability requirement than there "
+"are tracking IP addresses!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have duplicate metrics configured in /etc/config/"
+"network!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have no default route in the main routing table!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have no metric configured in /etc/config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: some rules have a port configured with no or improper protocol "
+"specified! Please configure a specific protocol!"
+msgstr ""
+
+msgid ""
+"WARNING: this and other interfaces have duplicate metrics configured in /etc/"
+"config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: this interface has a higher reliability requirement than there are "
+"tracking IP addresses!"
+msgstr ""
+
+msgid "WARNING: this interface has no default route in the main routing table!"
+msgstr ""
+
+msgid ""
+"WARNING: this interface has no metric configured in /etc/config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: this interface is configured incorrectly or not at all in /etc/"
+"config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: this policy's name is %d characters exceeding the maximum of 15!"
+msgstr ""
+
+msgid ""
+"WARNING: this rule is incorrectly configured with no or improper protocol "
+"specified! Please configure a specific protocol!"
+msgstr ""
+
+msgid "Weight"
+msgstr ""
+
+msgid ""
+"When all policy members are offline use this behavior for matched traffic"
+msgstr ""
+
+msgid "Wireless Config"
+msgstr ""
+
+msgid "Yes"
+msgstr ""
+
+msgid "always"
+msgstr ""
+
+msgid "blackhole (drop)"
+msgstr ""
+
+msgid "default (use main routing table)"
+msgstr ""
+
+msgid "ifdown"
+msgstr ""
+
+msgid "ifup"
+msgstr ""
+
+msgid "never"
+msgstr ""
+
+msgid "unreachable (reject)"
+msgstr ""
diff --git a/applications/luci-app-mwan3/po/zh-cn/mwan3.po b/applications/luci-app-mwan3/po/zh-cn/mwan3.po
new file mode 100644
index 000000000..b8948b316
--- /dev/null
+++ b/applications/luci-app-mwan3/po/zh-cn/mwan3.po
@@ -0,0 +1,510 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"Last-Translator: Hsing-Wang Liao <kuoruan@gmail.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.0\n"
+"Last-Translator: \n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: zh_CN\n"
+
+msgid "%d hour"
+msgstr "%d å°æ—¶"
+
+msgid "%d minute"
+msgstr "%d 分钟"
+
+msgid "%d minutes"
+msgstr "%d 分钟"
+
+msgid "%d second"
+msgstr "%d 秒"
+
+msgid "%d seconds"
+msgstr "%d 秒"
+
+msgid ""
+"Acceptable values: 1-100. This many Tracking IP addresses must respond for "
+"the link to be deemed up"
+msgstr ""
+"接å—的值: 1-100。这个设置项指定了当多少个IP地å€èƒ½å¤Ÿè¿žé€šæ—¶æŽ¥å£ä¼šè¢«è®¤ä¸ºåœ¨çº¿"
+
+msgid "Acceptable values: 1-1000. Defaults to 1 if not set"
+msgstr "接å—的值: 1-100。如果ä¸å¡«å†™ï¼Œé»˜è®¤å€¼ä¸º 1"
+
+msgid "Advanced"
+msgstr "高级"
+
+msgid "Check IP rules"
+msgstr "检查IP规则"
+
+msgid "Check routing table"
+msgstr "检查路由表"
+
+msgid "Configuration"
+msgstr "é…ç½®"
+
+msgid "Currently Configured Interfaces"
+msgstr "当å‰é…置的接å£"
+
+msgid "Currently Configured Members"
+msgstr "当å‰é…置的æˆå‘˜"
+
+msgid "Currently Configured Policies"
+msgstr "当å‰é…置的策略"
+
+msgid "Destination address"
+msgstr "目标地å€"
+
+msgid "Destination port"
+msgstr "目标端å£"
+
+msgid "Detailed Status"
+msgstr "详细状æ€"
+
+msgid "Diagnostic Results"
+msgstr "诊断结果"
+
+msgid "Diagnostics"
+msgstr "诊断"
+
+msgid ""
+"Downed interface will be deemed up after this many successful ping tests"
+msgstr "当 Ping æˆåŠŸæ¬¡æ•°è¾¾åˆ°è¿™ä¸ªæ•°å€¼åŽï¼Œå·²ç»è¢«è®¤ä¸ºç¦»çº¿çš„接å£å°†ä¼šé‡æ–°ä¸Šçº¿"
+
+msgid "Enabled"
+msgstr "å¯ç”¨"
+
+msgid "Errors"
+msgstr "错误"
+
+msgid "Failure interval"
+msgstr "故障检测间隔"
+
+msgid "Flush conntrack table"
+msgstr "刷新连接跟踪表"
+
+msgid "Flush global firewall conntrack table on interface events"
+msgstr "在接å£äº‹ä»¶è§¦å‘时刷新全局防ç«å¢™è¿žæŽ¥è·Ÿè¸ªè¡¨"
+
+msgid "Hotplug Script"
+msgstr "Hotplug 脚本"
+
+msgid "Hotplug ifdown"
+msgstr "Hotplug ifdown"
+
+msgid "Hotplug ifup"
+msgstr "Hotplug ifup"
+
+msgid "IPset"
+msgstr "IPset"
+
+msgid "IPv4"
+msgstr "IPv4"
+
+msgid "IPv6"
+msgstr "IPv6"
+
+msgid "Interface"
+msgstr "接å£"
+
+msgid "Interface Status"
+msgstr "接å£çŠ¶æ€"
+
+msgid "Interface down"
+msgstr "接å£ç¦»çº¿"
+
+msgid "Interface up"
+msgstr "接å£ä¸Šçº¿"
+
+msgid "Interface will be deemed down after this many failed ping tests"
+msgstr "当 Ping 失败次数达到这个数值åŽæŽ¥å£ä¼šè¢«è®¤ä¸ºç¦»çº¿"
+
+msgid "Interfaces"
+msgstr "接å£"
+
+msgid "Internet Protocol"
+msgstr "互è”网åè®®"
+
+msgid "Last resort"
+msgstr "备用æˆå‘˜"
+
+msgid "Load Balancing"
+msgstr "è´Ÿè½½å‡è¡¡"
+
+msgid "Loading"
+msgstr "载入中"
+
+msgid "MWAN Config"
+msgstr "MWAN é…置文件"
+
+msgid "MWAN Detailed Status"
+msgstr "MWAN 详细状æ€"
+
+msgid "MWAN Interface Configuration"
+msgstr "MWAN 接å£é…ç½®"
+
+msgid "MWAN Interface Configuration - %s"
+msgstr "MWAN 接å£é…ç½® - %s"
+
+msgid "MWAN Interface Diagnostics"
+msgstr "MWAN 接å£è¯Šæ–­"
+
+msgid "MWAN Interface Live Status"
+msgstr "MWAN 接å£å®žæ—¶çŠ¶æ€"
+
+msgid "MWAN Interface Systemlog"
+msgstr "MWAN 接å£ç³»ç»Ÿæ—¥å¿—"
+
+msgid "MWAN Member Configuration"
+msgstr "MWAN æˆå‘˜é…ç½®"
+
+msgid "MWAN Member Configuration - %s"
+msgstr "MWAN æˆå‘˜é…ç½® - %s"
+
+msgid "MWAN Policy Configuration"
+msgstr "MWAN ç­–ç•¥é…ç½®"
+
+msgid "MWAN Policy Configuration - %s"
+msgstr "MWAN ç­–ç•¥é…ç½® - %s"
+
+msgid "MWAN Rule Configuration"
+msgstr "MWAN 规则é…ç½®"
+
+msgid "MWAN Rule Configuration - %s"
+msgstr "MWAN 规则é…ç½® - %s"
+
+msgid "MWAN Service Control"
+msgstr "MWAN æœåŠ¡æŽ§åˆ¶"
+
+msgid ""
+"MWAN supports up to 250 physical and/or logical interfaces<br />MWAN "
+"requires that all interfaces have a unique metric configured in /etc/config/"
+"network<br />Names must match the interface name found in /etc/config/"
+"network (see advanced tab)<br />Names may contain characters A-Z, a-z, 0-9, "
+"_ and no spaces<br />Interfaces may not share the same name as configured "
+"members, policies or rules"
+msgstr ""
+"MWAN 支æŒæœ€å¤š 250 个物ç†æˆ–逻辑接å£ã€‚<br />MWAN è¦æ±‚所有接å£å¿…须在 /etc/"
+"config/network 中设定唯一的网关跃点。<br />å称必须与 /etc/config/network 中"
+"的接å£å称匹é…。(å¯æŸ¥çœ‹â€œé«˜çº§â€é€‰é¡¹å¡)<br />å称å…许包括A-Zã€a-zã€0-9ã€_ 但是ä¸"
+"能有空格。<br />接å£ä¸åº”该与æˆå‘˜ã€ç­–ç•¥ã€è§„则中的任æ„一个设置项使用相åŒçš„å称"
+
+msgid ""
+"May be entered as a single or multiple port(s) (eg \"22\" or \"80,443\") or "
+"as a portrange (eg \"1024:2048\") without quotes"
+msgstr ""
+"å¯ä»¥è¾“å…¥ä¸€ä¸ªæˆ–å¤šä¸ªç«¯å£ (例如 \"22\" 或者 \"80,443\") 或者是一个端å£èŒƒå›´ (例"
+"如 \"1024:2048\") ä¸å«å¼•å·"
+
+msgid "Member used"
+msgstr "使用的æˆå‘˜"
+
+msgid "Members"
+msgstr "æˆå‘˜"
+
+msgid ""
+"Members are profiles attaching a metric and weight to an MWAN interface<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />Members "
+"may not share the same name as configured interfaces, policies or rules"
+msgstr ""
+"“æˆå‘˜â€ç”¨æ¥è®¾ç½®æ¯ä¸€ä¸ª MWAN 接å£çš„跃点数 (å³æŽ¥å£ä¼˜å…ˆçº§) 和所å æ¯”é‡ã€‚<br />å称"
+"å…许包括 A-Z〠a-ã€0-9ã€_ 但是ä¸èƒ½æœ‰ç©ºæ ¼ã€‚<br />æˆå‘˜ä¸åº”该与接å£ã€ç­–ç•¥ã€è§„则"
+"中的任æ„一个设置项使用相åŒçš„å称"
+
+msgid "Members assigned"
+msgstr "分é…çš„æˆå‘˜"
+
+msgid "Metric"
+msgstr "跃点数"
+
+msgid ""
+"Name of IPset rule. Requires IPset rule in /etc/dnsmasq.conf (eg \"ipset=/"
+"youtube.com/youtube\")"
+msgstr ""
+"åŒ¹é… IPset 规则列表å称。需è¦å…ˆé…ç½® /etc/dnsmasq.conf 中的 IPset 规则 (例如: "
+"\"ipset=/youtube.com/youtube\")"
+
+msgid "Network Config"
+msgstr "网络é…置文件"
+
+msgid "No"
+msgstr "å¦"
+
+msgid "Overview"
+msgstr "概况"
+
+msgid "Ping count"
+msgstr "Ping 计数"
+
+msgid "Ping default gateway"
+msgstr "Ping 默认网关"
+
+msgid "Ping interval"
+msgstr "Ping é—´éš”"
+
+msgid "Ping interval during failure detection"
+msgstr "故障检测期间的 Ping 间隔"
+
+msgid "Ping interval during failure recovering"
+msgstr "æ•…éšœæ¢å¤æœŸé—´çš„ Ping é—´éš”"
+
+msgid "Ping size"
+msgstr "Ping 大å°"
+
+msgid "Ping timeout"
+msgstr "Ping 超时"
+
+msgid "Ping tracking IP"
+msgstr "Ping 跟踪 IP"
+
+msgid "Policies"
+msgstr "ç­–ç•¥"
+
+msgid ""
+"Policies are profiles grouping one or more members controlling how MWAN "
+"distributes traffic<br />Member interfaces with lower metrics are used "
+"first. Interfaces with the same metric load-balance<br />Load-balanced "
+"member interfaces distribute more traffic out those with higher weights<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces. Names must be "
+"15 characters or less<br />Policies may not share the same name as "
+"configured interfaces, members or rules"
+msgstr ""
+"“策略â€æŠŠæˆå‘˜è¿›è¡Œåˆ†ç»„,告诉 MWAN 如何分é…“规则â€ä¸­ä½¿ç”¨è¿™ä¸€ç­–略的æµé‡<br />拥有"
+"较低跃点数的æˆå‘˜å°†ä¼šè¢«ä¼˜å…ˆä½¿ç”¨ã€‚拥有相åŒè·ƒç‚¹æ•°çš„æˆå‘˜æŠŠæµé‡è¿›è¡Œè´Ÿè½½å‡è¡¡ã€‚<br /"
+">进行负载å‡è¡¡çš„æˆå‘˜ä¹‹é—´æ‹¥æœ‰è¾ƒé«˜æ¯”é‡çš„æˆå‘˜å°†ä¼šè¢«åˆ†é…到更多æµé‡ã€‚<br />å称å…许"
+"包括A-Zã€a-zã€0-9ã€_ 但是ä¸èƒ½æœ‰ç©ºæ ¼ã€‚å称应该在 15 个字符以内<br />ç­–ç•¥ä¸åº”该"
+"与接å£ã€æˆå‘˜ã€è§„则中的任æ„一个设置项使用相åŒçš„å称"
+
+msgid "Policy assigned"
+msgstr "分é…çš„ç­–ç•¥"
+
+msgid "Protocol"
+msgstr "通信åè®®"
+
+msgid "Recovery interval"
+msgstr "æ•…éšœæ¢å¤é—´éš”"
+
+msgid "Restart MWAN"
+msgstr "é‡å¯ MWAN"
+
+msgid "Restore default hotplug script"
+msgstr "æ¢å¤é»˜è®¤çš„ hotplug 脚本"
+
+msgid "Restore..."
+msgstr "æ¢å¤..."
+
+msgid "Rules"
+msgstr "规则"
+
+msgid ""
+"Rules specify which traffic will use a particular MWAN policy based on IP "
+"address, port or protocol<br />Rules are matched from top to bottom. Rules "
+"below a matching rule are ignored. Traffic not matching any rule is routed "
+"using the main routing table<br />Traffic destined for known (other than "
+"default) networks is handled by the main routing table. Traffic matching a "
+"rule, but all WAN interfaces for that policy are down will be blackholed<br /"
+">Names may contain characters A-Z, a-z, 0-9, _ and no spaces<br />Rules may "
+"not share the same name as configured interfaces, members or policies"
+msgstr ""
+"“规则â€åŸºäºŽ IP 地å€ã€åè®®ã€ç«¯å£æŠŠæµé‡åˆ’分到指定的“策略â€ä¸­ã€‚<br />规则按照从上"
+"到下的顺åºè¿›è¡ŒåŒ¹é…。除了第一æ¡èƒ½å¤ŸåŒ¹é…一次通信的规则以外,其它规则将被忽略。"
+"ä¸åŒ¹é…任何规则的通信将会由系统默认路由表进行。<br />æ¥è‡ªå·²çŸ¥çš„网络的转å‘æµé‡"
+"ç”±ç³»ç»Ÿé»˜è®¤è·¯ç”±è¡¨æŽ¥æ‰‹ï¼Œç„¶åŽ MWAN 从中匹é…出相应的æµé‡å¹¶è½¬ç§»åˆ° MWAN 自己的路由"
+"表。但是所有被划分到一个无法使用的策略的æµé‡å°†ä¼šæ— æ³•æ­£å¸¸è¿›è¡Œè·¯ç”±ã€‚<br />å称"
+"å…许包括A-Zã€a-zã€0-9ã€_ 但是ä¸èƒ½æœ‰ç©ºæ ¼ã€‚<br />规则ä¸åº”该与接å£ã€æˆå‘˜ã€ç­–略中"
+"çš„ä»»æ„一个设置项使用相åŒçš„å称"
+
+msgid "Seconds. Acceptable values: 1-1000000. Defaults to 600 if not set"
+msgstr "å•ä½ä¸ºç§’。接å—的值: 1-1000000。留空则使用默认值 600 秒"
+
+msgid "Source address"
+msgstr "æºåœ°å€"
+
+msgid "Source port"
+msgstr "æºç«¯å£"
+
+msgid "Start MWAN"
+msgstr "å¯åŠ¨ MWAN"
+
+msgid "Sticky"
+msgstr "粘滞模å¼"
+
+msgid "Sticky timeout"
+msgstr "粘滞超时"
+
+msgid "Stop MWAN"
+msgstr "åœæ­¢ MWAN"
+
+msgid "Supports CIDR notation (eg \"192.168.100.0/24\") without quotes"
+msgstr "æ”¯æŒ CIDR 记法 (例如: \"192.168.100.0/24\") ä¸å«å¼•å·"
+
+msgid "There are currently %d of 250 supported interfaces configured"
+msgstr ""
+
+msgid ""
+"This IP address will be pinged to dermine if the link is up or down. Leave "
+"blank to assume interface is always online"
+msgstr ""
+"MWAN 将会通过 Ping 这些 IP 地å€æ¥ç¡®å®šæŽ¥å£æ˜¯å¦ä¸Šçº¿ã€‚如果留空,则 MWAN 认为该接"
+"å£æ°¸è¿œåœ¨çº¿"
+
+msgid ""
+"This displays the metric assigned to this interface in /etc/config/network"
+msgstr "这里显示了这个接å£åœ¨ /etc/config/network 中é…置的跃点数"
+
+msgid "This section allows you to modify the contents of /etc/config/mwan3"
+msgstr "这里å…许你修改 /etc/config/mwan3 的内容"
+
+msgid "This section allows you to modify the contents of /etc/config/network"
+msgstr "这里å…许你修改 /etc/config/network 的内容"
+
+msgid "This section allows you to modify the contents of /etc/config/wireless"
+msgstr "这里å…许你修改 /etc/config/wireless 的内容"
+
+msgid ""
+"This section allows you to modify the contents of /etc/hotplug.d/iface/16-"
+"mwancustom<br />This is useful for running system commands and/or scripts "
+"based on interface ifup or ifdown hotplug events<br /><br />Notes:<br />The "
+"first line of the script must be &#34;#!/bin/sh&#34; without quotes<br /"
+">Lines beginning with # are comments and are not executed<br /><br /"
+">Available variables:<br />$ACTION is the hotplug event (ifup, ifdown)<br />"
+"$INTERFACE is the interface name (wan1, wan2, etc.)<br />$DEVICE is the "
+"device name attached to the interface (eth0.1, eth1, etc.)"
+msgstr ""
+"这里å…许你修改/etc/hotplug.d/iface/16-mwancustom 的内容<br />è¿™å¯ä»¥åœ¨æŽ¥å£ "
+"ifup 或 ifdown Hotplug 事件时è¿è¡Œç³»ç»Ÿå‘½ä»¤æˆ–脚本<br /><br />注æ„:<br />脚本的"
+"第一行必须是 &#34;#!/bin/sh&#34; ä¸å«å¼•å·<br />以#开头的行是注释,ä¸ä¼šæ‰§è¡Œ"
+"<br /><br />å¯ç”¨å˜é‡:<br />$ACTION 是 Hotplug 事件 (ifup, ifdown)<br />"
+"$INTERFACE 是接å£å称 (wan1ã€wan2 ç­‰)<br />$DEVICE 是连接到接å£çš„设备å称 "
+"(eth0.1ã€eth1 ç­‰)"
+
+msgid "Tracking IP"
+msgstr "跟踪的 IP"
+
+msgid "Tracking reliability"
+msgstr "跟踪å¯é æ€§"
+
+msgid "Traffic Rules"
+msgstr "æµé‡è§„则"
+
+msgid ""
+"Traffic from the same source IP address that previously matched this rule "
+"within the sticky timeout period will use the same WAN interface"
+msgstr ""
+"æ¥è‡ªç›¸åŒæº IP çš„æµé‡ï¼Œå¦‚果已ç»åŒ¹é…过此规则并且在粘滞超时时间内,将会使用相åŒ"
+"çš„ WAN 接å£"
+
+msgid "Troubleshooting"
+msgstr "故障排除"
+
+msgid "Troubleshooting Data"
+msgstr "故障排除数æ®"
+
+msgid "View the contents of /etc/protocols for protocol descriptions"
+msgstr "请查看 /etc/protocols 获å–å¯é€‰å议详情"
+
+msgid "WARNING: %d interfaces are configured exceeding the maximum of 250!"
+msgstr ""
+
+msgid ""
+"WARNING: Some policies have names exceeding the maximum of 15 characters!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces are configured incorrectly or not at all in /etc/"
+"config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have a higher reliability requirement than there "
+"are tracking IP addresses!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have duplicate metrics configured in /etc/config/"
+"network!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have no default route in the main routing table!"
+msgstr ""
+
+msgid ""
+"WARNING: some interfaces have no metric configured in /etc/config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: some rules have a port configured with no or improper protocol "
+"specified! Please configure a specific protocol!"
+msgstr ""
+
+msgid ""
+"WARNING: this and other interfaces have duplicate metrics configured in /etc/"
+"config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: this interface has a higher reliability requirement than there are "
+"tracking IP addresses!"
+msgstr ""
+
+msgid "WARNING: this interface has no default route in the main routing table!"
+msgstr ""
+
+msgid ""
+"WARNING: this interface has no metric configured in /etc/config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: this interface is configured incorrectly or not at all in /etc/"
+"config/network!"
+msgstr ""
+
+msgid ""
+"WARNING: this policy's name is %d characters exceeding the maximum of 15!"
+msgstr ""
+
+msgid ""
+"WARNING: this rule is incorrectly configured with no or improper protocol "
+"specified! Please configure a specific protocol!"
+msgstr ""
+
+msgid "Weight"
+msgstr "比é‡"
+
+msgid ""
+"When all policy members are offline use this behavior for matched traffic"
+msgstr "当所有策略æˆå‘˜éƒ½æ— æ³•ä½¿ç”¨çš„时候,对使用该策略的æµé‡ä½¿ç”¨è¿™ä¸ªæ“作"
+
+msgid "Wireless Config"
+msgstr "无线é…ç½®"
+
+msgid "Yes"
+msgstr "是"
+
+msgid "always"
+msgstr "总是"
+
+msgid "blackhole (drop)"
+msgstr "黑洞 (丢弃)"
+
+msgid "default (use main routing table)"
+msgstr "默认 (使用主路由表)"
+
+msgid "ifdown"
+msgstr "ifdown"
+
+msgid "ifup"
+msgstr "ifup"
+
+msgid "never"
+msgstr "从ä¸"
+
+msgid "unreachable (reject)"
+msgstr "ä¸å¯è¾¾ (æ‹’ç»)"
diff --git a/applications/luci-app-mwan3/root/etc/hotplug.d/iface/16-mwancustombak b/applications/luci-app-mwan3/root/etc/hotplug.d/iface/16-mwancustombak
new file mode 100755
index 000000000..6e2875e3d
--- /dev/null
+++ b/applications/luci-app-mwan3/root/etc/hotplug.d/iface/16-mwancustombak
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+# to enable this script uncomment the case loop at the bottom
+# to report mwan status on interface hotplug ifup/ifdown events modify the lines in the send_alert function
+
+send_alert()
+{
+ # variable "$1" stores the MWAN status information
+ # insert your code here to send the contents of "$1"
+ echo "$1"
+}
+
+gather_event_info()
+{
+ # create event information message
+ local EVENT_INFO="Interface [ "$INTERFACE" ($DEVICE) ] on router [ "$(uci -p /var/state get system.@system[0].hostname)" ] has triggered a hotplug [ "$ACTION" ] event on "$(date +"%a %b %d %Y %T %Z")""
+
+ # get current interface, policy and rule status
+ local CURRENT_STATUS="$(/usr/sbin/mwan3 status)"
+
+ # get last 50 MWAN systemlog messages
+ local MWAN_LOG="$(echo -e "Last 50 MWAN systemlog entries. Newest entries sorted at the top:\n$(logread | grep mwan3 | tail -n 50 | sed 'x;1!H;$!d;x')")"
+
+ # pass event info to send_alert function
+ send_alert "$(echo -e "$EVENT_INFO\n\n$CURRENT_STATUS\n\n$MWAN_LOG")"
+}
+
+#case "$ACTION" in
+# ifup)
+# gather_event_info
+# ;;
+#
+# ifdown)
+# gather_event_info
+# ;;
+#esac
+
+exit 0
diff --git a/applications/luci-app-mwan3/root/etc/uci-defaults/60_luci-mwan3 b/applications/luci-app-mwan3/root/etc/uci-defaults/60_luci-mwan3
new file mode 100755
index 000000000..ff9a229ed
--- /dev/null
+++ b/applications/luci-app-mwan3/root/etc/uci-defaults/60_luci-mwan3
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+# replace existing mwan ucitrack entry
+uci -q batch <<-EOF >/dev/null
+ del ucitrack.@mwan3[-1]
+ add ucitrack mwan3
+ set ucitrack.@mwan3[-1].exec="/usr/sbin/mwan3 restart"
+ commit ucitrack
+EOF
+
+# remove LuCI cache
+rm -rf /tmp/luci-indexcache /tmp/luci-modulecache
+
+exit 0
diff --git a/applications/luci-app-olsr/luasrc/controller/olsr.lua b/applications/luci-app-olsr/luasrc/controller/olsr.lua
index 9a997bdc1..0564bd4ea 100644
--- a/applications/luci-app-olsr/luasrc/controller/olsr.lua
+++ b/applications/luci-app-olsr/luasrc/controller/olsr.lua
@@ -87,8 +87,8 @@ function action_json()
local v4_port = uci:get("olsrd", "olsrd_jsoninfo", "port") or 9090
local v6_port = uci:get("olsrd6", "olsrd_jsoninfo", "port") or 9090
- jsonreq4 = utl.exec("(echo /status | nc 127.0.0.1 " .. v4_port .. ") 2>/dev/null" )
- jsonreq6 = utl.exec("(echo /status | nc ::1 " .. v6_port .. ") 2>/dev/null")
+ jsonreq4 = utl.exec("(echo /status | nc 127.0.0.1 " .. v4_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null" )
+ jsonreq6 = utl.exec("(echo /status | nc ::1 " .. v6_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null")
http.prepare_content("application/json")
if not jsonreq4 or jsonreq4 == "" then
jsonreq4 = "{}"
@@ -375,8 +375,8 @@ function fetch_jsoninfo(otable)
local v4_port = uci:get("olsrd", "olsrd_jsoninfo", "port") or 9090
local v6_port = uci:get("olsrd6", "olsrd_jsoninfo", "port") or 9090
- jsonreq4 = utl.exec("(echo /" .. otable .. " | nc 127.0.0.1 " .. v4_port .. ") 2>/dev/null")
- jsonreq6 = utl.exec("(echo /" .. otable .. " | nc ::1 " .. v6_port .. ") 2>/dev/null")
+ jsonreq4 = utl.exec("(echo /" .. otable .. " | nc 127.0.0.1 " .. v4_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null")
+ jsonreq6 = utl.exec("(echo /" .. otable .. " | nc ::1 " .. v6_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null")
local jsondata4 = {}
local jsondata6 = {}
local data4 = {}
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm
index 31dd7d05a..c077c2048 100644
--- a/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm
+++ b/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm
@@ -12,8 +12,8 @@ local i = 1
if luci.http.formvalue("status") == "1" then
local rv = {}
for k, link in ipairs(links) do
- link.linkCost = tonumber(link.linkCost)/1024 or 0
- if link.linkCost == 4096 then
+ link.linkCost = tonumber(link.linkCost) or 0
+ if link.linkCost == 4194304 then
link.linkCost = 0
end
local color = olsrtools.etx_color(link.linkCost)
@@ -129,8 +129,8 @@ end
<tbody id="olsr_neigh_table">
<% local i = 1
for k, link in ipairs(links) do
- link.linkCost = tonumber(link.linkCost)/1024 or 0
- if link.linkCost == 4096 then
+ link.linkCost = tonumber(link.linkCost) or 0
+ if link.linkCost == 4194304 then
link.linkCost = 0
end
diff --git a/applications/luci-app-olsr/po/pt-br/olsr.po b/applications/luci-app-olsr/po/pt-br/olsr.po
index 1461c1dd8..499176c16 100644
--- a/applications/luci-app-olsr/po/pt-br/olsr.po
+++ b/applications/luci-app-olsr/po/pt-br/olsr.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-10 03:41+0200\n"
-"PO-Revision-Date: 2014-06-21 19:36+0200\n"
-"Last-Translator: Éder <eder.grigorio@openmailbox.org>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-02-20 18:01-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "Active MID announcements"
msgstr ""
@@ -59,7 +59,6 @@ msgstr ""
"Somente pode ser um endereço IPv4 ou IPv6 válidos ou um endereço 'padrão'"
# 20140621: edersg: tradução
-#, fuzzy
msgid "Can only be a valid IPv6 address or 'default'"
msgstr ""
"Somente pode ser um endereço IPv4 ou IPv6 válidos ou um endereço 'padrão'"
@@ -173,7 +172,6 @@ msgstr ""
"Validade do <abbr title=\"Host and network association, Associação de "
"equipamentos e redes\">HNA</abbr>"
-#, fuzzy
msgid "HNA6 Announcements"
msgstr ""
"Anúncios do <abbr title=\"Host and network association, Associação de "
@@ -215,7 +213,6 @@ msgstr ""
"Equipamentos em uma rede roteada por OLSR podem anunciar conectividade para "
"redes externas usando mensagens HNA."
-#, fuzzy
msgid ""
"Hosts in a OLSR routed network can announce connecitivity to external "
"networks using HNA6 messages."
@@ -496,7 +493,6 @@ msgstr ""
"> reduzir LQ para todos os nós nesta interface em 20%: padrão 0.8"
# 20140621: edersg: tradução
-#, fuzzy
msgid ""
"Multiply routes with the factor given here. Allowed values are between 0.01 "
"and 1.0. It is only used when LQ-Level is greater than 0. Examples:<br /"
@@ -551,7 +547,6 @@ msgstr ""
"OLSR - Anúncios <abbr title=\"Host and network association, Associação de "
"equipamentos e redes\">HNA</abbr>"
-#, fuzzy
msgid "OLSR - HNA6-Announcements"
msgstr ""
"OLSR - Anúncios <abbr title=\"Host and network association, Associação de "
@@ -654,7 +649,6 @@ msgstr ""
"durante o funcionamento do olsrd. O padrão é 0.0.0.0, que faz com que o "
"endereço da primeira interface seja usado."
-#, fuzzy
msgid ""
"Sets the main IP (originator ip) of the router. This IP will NEVER change "
"during the uptime of olsrd. Default is ::, which triggers usage of the IP of "
@@ -857,7 +851,6 @@ msgstr ""
"and network association, Associação de equipamentos e redes\">HNA</abbr> "
"local de 0.0.0.0/0, ::ffff:0:0/96 ou 2000::/3. O padrão é \"ambos\"."
-#, fuzzy
msgid ""
"Which kind of uplink is exported to the other mesh nodes. An uplink is "
"detected by looking for a local HNA6 ::ffff:0:0/96 or 2000::/3. Default "
diff --git a/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua b/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
index 1bbee83c3..7865881cb 100644
--- a/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
+++ b/applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
@@ -7,192 +7,721 @@ require("luci.model.uci")
local knownParams = {
--
- -- Widget Name Default(s) Description Option(s)
- --
+ --Widget
+ -- Name
+ -- Default(s)
+ -- Description
+ -- Option(s)
{ "Service", {
- -- initialisation and daemon options
- { ListValue, "verb", { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }, translate("Set output verbosity") },
- { Flag, "mlock", 0, translate("Disable Paging") },
- { Flag, "disable_occ", 0, translate("Disable options consistency check") },
- -- { Value, "user", "root", translate("Set UID to user") },
- -- { Value, "group", "root", translate("Set GID to group") },
- { Value, "cd", "/etc/openvpn", translate("Change to directory before initialization") },
- { Value, "chroot", "/var/run", translate("Chroot to directory after initialization") },
- -- { Value, "daemon", "Instance-Name", translate("Daemonize after initialization") },
- -- { Value, "syslog", "Instance-Name", translate("Output to syslog and do not daemonize") },
- { Flag, "passtos", 0, translate("TOS passthrough (applies to IPv4 only)") },
- -- { Value, "inetd", "nowait Instance-Name", translate("Run as an inetd or xinetd server") },
- { Value, "log", "/var/log/openvpn.log", translate("Write log to file") },
- { Value, "log_append", "/var/log/openvpn.log", translate("Append log to file") },
- { Flag, "suppress_timestamps", 0, translate("Don't log timestamps") },
- -- { Value, "writepid", "/var/run/openvpn.pid", translate("Write process ID to file") },
- { Value, "nice", 0, translate("Change process priority") },
- { Flag, "fast_io", 0, translate("Optimize TUN/TAP/UDP writes") },
- { Value, "echo", "some params echoed to log", translate("Echo parameters to log") },
- { ListValue, "remap_usr1", { "SIGHUP", "SIGTERM" }, translate("Remap SIGUSR1 signals") },
- { Value, "status", "/var/run/openvpn.status 5", translate("Write status to file every n seconds") },
- { Value, "status_version", { 1, 2 }, translate("Status file format version") }, -- status
- { Value, "mute", 5, translate("Limit repeated log messages") },
-
- { Value, "up", "/usr/bin/ovpn-up", translate("Shell cmd to execute after tun device open") },
- { Value, "up_delay", 5, translate("Delay tun/tap open and up script execution") },
- { Value, "down", "/usr/bin/ovpn-down", translate("Shell cmd to run after tun device close") },
- { Flag, "down_pre", 0, translate("Call down cmd/script before TUN/TAP close") },
- { Flag, "up_restart", 0, translate("Run up/down scripts for all restarts") },
- { Value, "route_up", "/usr/bin/ovpn-routeup", translate("Execute shell cmd after routes are added") },
- { Value, "ipchange", "/usr/bin/ovpn-ipchange", translate("Execute shell command on remote ip change"), { mode="p2p" } },
- { DynamicList, "setenv", { "VAR1 value1", "VAR2 value2" }, translate("Pass environment variables to script") },
- { Value, "tls_verify", "/usr/bin/ovpn-tlsverify", translate("Shell command to verify X509 name") },
- { Value, "client_connect", "/usr/bin/ovpn-clientconnect", translate("Run script cmd on client connection") },
- { Flag, "client_disconnect", 0, translate("Run script cmd on client disconnection") },
- { Value, "learn_address", "/usr/bin/ovpn-learnaddress", translate("Executed in server mode whenever an IPv4 address/route or MAC address is added to OpenVPN's internal routing table") },
- { Value, "auth_user_pass_verify", "/usr/bin/ovpn-userpass via-env", translate("Executed in server mode on new client connections, when the client is still untrusted") },
- { ListValue, "script_security", { 0, 1, 2, 3 }, translate("Policy level over usage of external programs and scripts") },
+ -- initialisation and daemon options
+ { ListValue,
+ "verb",
+ { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 },
+ translate("Set output verbosity") },
+ { Flag,
+ "mlock",
+ 0,
+ translate("Disable Paging") },
+ { Flag,
+ "disable_occ",
+ 0,
+ translate("Disable options consistency check") },
+ -- { Value,
+ -- "user",
+ -- "root",
+ -- translate("Set UID to user") },
+ -- { Value,
+ -- "group",
+ -- "root",
+ -- translate("Set GID to group") },
+ { Value,
+ "cd",
+ "/etc/openvpn",
+ translate("Change to directory before initialization") },
+ { Value,
+ "chroot",
+ "/var/run",
+ translate("Chroot to directory after initialization") },
+ -- { Value,
+ -- "daemon",
+ -- "Instance-Name",
+ -- translate("Daemonize after initialization") },
+ -- { Value,
+ -- "syslog",
+ -- "Instance-Name",
+ -- translate("Output to syslog and do not daemonize") },
+ { Flag,
+ "passtos",
+ 0,
+ translate("TOS passthrough (applies to IPv4 only)") },
+ -- { Value,
+ -- "inetd",
+ -- "nowait Instance-Name",
+ -- translate("Run as an inetd or xinetd server") },
+ { Value,
+ "log",
+ "/var/log/openvpn.log",
+ translate("Write log to file") },
+ { Value,
+ "log_append",
+ "/var/log/openvpn.log",
+ translate("Append log to file") },
+ { Flag,
+ "suppress_timestamps",
+ 0,
+ translate("Don't log timestamps") },
+ -- { Value,
+ -- "writepid",
+ -- "/var/run/openvpn.pid",
+ -- translate("Write process ID to file") },
+ { Value,
+ "nice",
+ 0,
+ translate("Change process priority") },
+ { Flag,
+ "fast_io",
+ 0,
+ translate("Optimize TUN/TAP/UDP writes") },
+ { Value,
+ "echo",
+ "some params echoed to log",
+ translate("Echo parameters to log") },
+ { ListValue,
+ "remap_usr1",
+ { "SIGHUP", "SIGTERM" },
+ translate("Remap SIGUSR1 signals") },
+ { Value,
+ "status",
+ "/var/run/openvpn.status 5",
+ translate("Write status to file every n seconds") },
+ { Value,
+ "status_version",
+ { 1, 2 },
+ translate("Status file format version") }, -- status
+ { Value,
+ "mute",
+ 5,
+ translate("Limit repeated log messages") },
+ { Value,
+ "up",
+ "/usr/bin/ovpn-up",
+ translate("Shell cmd to execute after tun device open") },
+ { Value,
+ "up_delay",
+ 5,
+ translate("Delay tun/tap open and up script execution") },
+ { Value,
+ "down",
+ "/usr/bin/ovpn-down",
+ translate("Shell cmd to run after tun device close") },
+ { Flag,
+ "down_pre",
+ 0,
+ translate("Call down cmd/script before TUN/TAP close") },
+ { Flag,
+ "up_restart",
+ 0,
+ translate("Run up/down scripts for all restarts") },
+ { Value,
+ "route_up",
+ "/usr/bin/ovpn-routeup",
+ translate("Execute shell cmd after routes are added") },
+ { Value,
+ "ipchange",
+ "/usr/bin/ovpn-ipchange",
+ translate("Execute shell command on remote ip change"),
+ { mode="p2p" } },
+ { DynamicList,
+ "setenv",
+ { "VAR1 value1", "VAR2 value2" },
+ translate("Pass environment variables to script") },
+ { Value,
+ "tls_verify",
+ "/usr/bin/ovpn-tlsverify",
+ translate("Shell command to verify X509 name") },
+ { Value,
+ "client_connect",
+ "/usr/bin/ovpn-clientconnect",
+ translate("Run script cmd on client connection") },
+ { Flag,
+ "client_disconnect",
+ 0,
+ translate("Run script cmd on client disconnection") },
+ { Value,
+ "learn_address",
+ "/usr/bin/ovpn-learnaddress",
+ translate("Executed in server mode whenever an IPv4 address/route or MAC address is added to OpenVPN's internal routing table") },
+ { Value,
+ "auth_user_pass_verify",
+ "/usr/bin/ovpn-userpass via-env",
+ translate("Executed in server mode on new client connections, when the client is still untrusted") },
+ { ListValue,
+ "script_security",
+ { 0, 1, 2, 3 },
+ translate("Policy level over usage of external programs and scripts") },
} },
{ "Networking", {
- -- socket config
- { ListValue, "mode", { "p2p", "server" }, translate("Major mode") },
- { Value, "local", "0.0.0.0", translate("Local host name or ip address") },
- { Value, "port", 1194, translate("TCP/UDP port # for both local and remote") },
- { Value, "lport", 1194, translate("TCP/UDP port # for local (default=1194)") },
- { Value, "rport", 1194, translate("TCP/UDP port # for remote (default=1194)") },
- { Flag, "float", 0, translate("Allow remote to change its IP or port") },
- { Flag, "nobind", 0, translate("Do not bind to local address and port") },
-
- { Value, "dev", "tun0", translate("tun/tap device") },
- { ListValue, "dev_type", { "tun", "tap" }, translate("Type of used device") },
- { Value, "dev_node", "/dev/net/tun", translate("Use tun/tap device node") },
- { Flag, "tun_ipv6", 0, translate("Make tun device IPv6 capable") },
-
- { Value, "ifconfig", "10.200.200.3 10.200.200.1", translate("Set tun/tap adapter parameters") },
- { Flag, "ifconfig_noexec", 0, translate("Don't actually execute ifconfig") },
- { Flag, "ifconfig_nowarn", 0, translate("Don't warn on ifconfig inconsistencies") },
-
- { DynamicList, "route", "10.123.0.0 255.255.0.0", translate("Add route after establishing connection") },
- { Value, "route_gateway", "10.234.1.1", translate("Specify a default gateway for routes") },
- { Value, "route_delay", 0, translate("Delay n seconds after connection") },
- { Flag, "route_noexec", 0, translate("Don't add routes automatically") },
- { Flag, "route_nopull", 0, translate("Don't pull routes automatically") },
-
- { ListValue, "mtu_disc", { "yes", "maybe", "no" }, translate("Enable Path MTU discovery") },
- { Flag, "mtu_test", 0, translate("Empirically measure MTU") },
- { ListValue, "comp_lzo", { "yes", "no", "adaptive" }, translate("Use fast LZO compression") },
- { Flag, "comp_noadapt", 0, translate("Don't use adaptive lzo compression"), { comp_lzo=1 } },
- { Value, "link_mtu", 1500, translate("Set TCP/UDP MTU") },
- { Value, "tun_mtu", 1500, translate("Set tun/tap device MTU") },
- { Value, "tun_mtu_extra", 1500, translate("Set tun/tap device overhead") },
- { Value, "fragment", 1500, translate("Enable internal datagram fragmentation"), { proto="udp" } },
- { Value, "mssfix", 1500, translate("Set upper bound on TCP MSS"), { proto="udp" } },
- { Value, "sndbuf", 65536, translate("Set the TCP/UDP send buffer size") },
- { Value, "rcvbuf", 65536, translate("Set the TCP/UDP receive buffer size") },
- { Value, "txqueuelen", 100, translate("Set tun/tap TX queue length") },
- { Value, "shaper", 10240, translate("Shaping for peer bandwidth") },
-
- { Value, "inactive", 240, translate("tun/tap inactivity timeout") },
- { Value, "keepalive", "10 60", translate("Helper directive to simplify the expression of --ping and --ping-restart in server mode configurations") },
- { Value, "ping", 30, translate("Ping remote every n seconds over TCP/UDP port") },
- { Value, "ping_exit", 120, translate("Remote ping timeout") },
- { Value, "ping_restart", 60, translate("Restart after remote ping timeout") },
- { Flag, "ping_timer_rem", 0, translate("Only process ping timeouts if routes exist") },
-
- { Flag, "persist_tun", 0, translate("Keep tun/tap device open on restart") },
- { Flag, "persist_key", 0, translate("Don't re-read key on restart") },
- { Flag, "persist_local_ip", 0, translate("Keep local IP address on restart") },
- { Flag, "persist_remote_ip", 0, translate("Keep remote IP address on restart") },
-
- -- management channel
- { Value, "management", "127.0.0.1 31194 /etc/openvpn/mngmt-pwds", translate("Enable management interface on <em>IP</em> <em>port</em>") },
- { Flag, "management_query_passwords", 0, translate("Query management channel for private key") }, -- management
- { Flag, "management_hold", 0, translate("Start OpenVPN in a hibernating state") }, -- management
- { Value, "management_log_cache", 100, translate("Number of lines for log file history") }, -- management
- { ListValue, "topology", { "net30", "p2p", "subnet" }, translate("'net30', 'p2p', or 'subnet'"), {dev_type="tun" } },
+ -- socket config
+ { ListValue,
+ "mode",
+ { "p2p", "server" },
+ translate("Major mode") },
+ { Value,
+ "local",
+ "0.0.0.0",
+ translate("Local host name or ip address") },
+ { Value,
+ "port",
+ 1194,
+ translate("TCP/UDP port # for both local and remote") },
+ { Value,
+ "lport",
+ 1194,
+ translate("TCP/UDP port # for local (default=1194)") },
+ { Value,
+ "rport",
+ 1194,
+ translate("TCP/UDP port # for remote (default=1194)") },
+ { Flag,
+ "float",
+ 0,
+ translate("Allow remote to change its IP or port") },
+ { Flag,
+ "nobind",
+ 0,
+ translate("Do not bind to local address and port") },
+ { Value,
+ "dev",
+ "tun0",
+ translate("tun/tap device") },
+ { ListValue,
+ "dev_type",
+ { "tun", "tap" },
+ translate("Type of used device") },
+ { Value,
+ "dev_node",
+ "/dev/net/tun",
+ translate("Use tun/tap device node") },
+ { Flag,
+ "tun_ipv6",
+ 0,
+ translate("Make tun device IPv6 capable") },
+ { Value,
+ "ifconfig",
+ "10.200.200.3 10.200.200.1",
+ translate("Set tun/tap adapter parameters") },
+ { Flag,
+ "ifconfig_noexec",
+ 0,
+ translate("Don't actually execute ifconfig") },
+ { Flag,
+ "ifconfig_nowarn",
+ 0,
+ translate("Don't warn on ifconfig inconsistencies") },
+ { DynamicList,
+ "route",
+ "10.123.0.0 255.255.0.0",
+ translate("Add route after establishing connection") },
+ { Value,
+ "route_gateway",
+ "10.234.1.1",
+ translate("Specify a default gateway for routes") },
+ { Value,
+ "route_delay",
+ 0,
+ translate("Delay n seconds after connection") },
+ { Flag,
+ "route_noexec",
+ 0,
+ translate("Don't add routes automatically") },
+ { Flag,
+ "route_nopull",
+ 0,
+ translate("Don't pull routes automatically") },
+ { ListValue,
+ "mtu_disc",
+ { "yes", "maybe", "no" },
+ translate("Enable Path MTU discovery") },
+ { Flag,
+ "mtu_test",
+ 0,
+ translate("Empirically measure MTU") },
+ { ListValue,
+ "comp_lzo",
+ { "yes", "no", "adaptive" },
+ translate("Use fast LZO compression") },
+ { Flag,
+ "comp_noadapt",
+ 0,
+ translate("Don't use adaptive lzo compression"),
+ { comp_lzo=1 } },
+ { Value,
+ "link_mtu",
+ 1500,
+ translate("Set TCP/UDP MTU") },
+ { Value,
+ "tun_mtu",
+ 1500,
+ translate("Set tun/tap device MTU") },
+ { Value,
+ "tun_mtu_extra",
+ 1500,
+ translate("Set tun/tap device overhead") },
+ { Value,
+ "fragment",
+ 1500,
+ translate("Enable internal datagram fragmentation"),
+ { proto="udp" } },
+ { Value,
+ "mssfix",
+ 1500,
+ translate("Set upper bound on TCP MSS"),
+ { proto="udp" } },
+ { Value,
+ "sndbuf",
+ 65536,
+ translate("Set the TCP/UDP send buffer size") },
+ { Value,
+ "rcvbuf",
+ 65536,
+ translate("Set the TCP/UDP receive buffer size") },
+ { Value,
+ "txqueuelen",
+ 100,
+ translate("Set tun/tap TX queue length") },
+ { Value,
+ "shaper",
+ 10240,
+ translate("Shaping for peer bandwidth") },
+ { Value,
+ "inactive",
+ 240,
+ translate("tun/tap inactivity timeout") },
+ { Value,
+ "keepalive",
+ "10 60",
+ translate("Helper directive to simplify the expression of --ping and --ping-restart in server mode configurations") },
+ { Value,
+ "ping",
+ 30,
+ translate("Ping remote every n seconds over TCP/UDP port") },
+ { Value,
+ "ping_exit",
+ 120,
+ translate("Remote ping timeout") },
+ { Value,
+ "ping_restart",
+ 60,
+ translate("Restart after remote ping timeout") },
+ { Flag,
+ "ping_timer_rem",
+ 0,
+ translate("Only process ping timeouts if routes exist") },
+ { Flag,
+ "persist_tun",
+ 0,
+ translate("Keep tun/tap device open on restart") },
+ { Flag,
+ "persist_key",
+ 0,
+ translate("Don't re-read key on restart") },
+ { Flag,
+ "persist_local_ip",
+ 0,
+ translate("Keep local IP address on restart") },
+ { Flag,
+ "persist_remote_ip",
+ 0,
+ translate("Keep remote IP address on restart") },
+ -- management channel
+ { Value,
+ "management",
+ "127.0.0.1 31194 /etc/openvpn/mngmt-pwds",
+ translate("Enable management interface on <em>IP</em> <em>port</em>") },
+ -- management
+ { Flag,
+ "management_query_passwords",
+ 0,
+ translate("Query management channel for private key") },
+ -- management
+ { Flag,
+ "management_hold",
+ 0,
+ translate("Start OpenVPN in a hibernating state") },
+ -- management
+ { Value,
+ "management_log_cache",
+ 100,
+ translate("Number of lines for log file history") },
+ { ListValue,
+ "topology",
+ { "net30", "p2p", "subnet" },
+ translate("'net30', 'p2p', or 'subnet'"),
+ {dev_type="tun" } },
} },
{ "VPN", {
- { Value, "server", "10.200.200.0 255.255.255.0", translate("Configure server mode"), { server_mode="1" } },
- { Value, "server_bridge", "10.200.200.1 255.255.255.0 10.200.200.200 10.200.200.250", translate("Configure server bridge"), { server_mode="1" } },
- { DynamicList, "push", { "redirect-gateway", "comp-lzo" }, translate("Push options to peer"), { server_mode="1" } },
- { Flag, "push_reset", 0, translate("Don't inherit global push options"), { server_mode="1" } },
- { Flag, "disable", 0, translate("Client is disabled"), { server_mode="1" } },
- { Value, "ifconfig_pool", "10.200.200.100 10.200.200.150 255.255.255.0", translate("Set aside a pool of subnets"), { server_mode="1" } },
- { Value, "ifconfig_pool_persist", "/etc/openvpn/ipp.txt 600", translate("Persist/unpersist ifconfig-pool"), { server_mode="1" } },
--- { Flag, "ifconfig_pool_linear", 0, translate("Use individual addresses rather than /30 subnets"), { server_mode="1" } }, -- deprecated and replaced by --topology p2p
- { Value, "ifconfig_push", "10.200.200.1 255.255.255.255", translate("Push an ifconfig option to remote"), { server_mode="1" } },
- { Value, "iroute", "10.200.200.0 255.255.255.0", translate("Route subnet to client"), { server_mode="1" } },
- { Flag, "client_to_client", 0, translate("Allow client-to-client traffic"), { server_mode="1" } },
- { Flag, "duplicate_cn", 0, translate("Allow multiple clients with same certificate"), { server_mode="1" } },
- { Value, "client_config_dir", "/etc/openvpn/ccd", translate("Directory for custom client config files"), { server_mode="1" } },
- { Flag, "ccd_exclusive", 0, translate("Refuse connection if no custom client config"), { server_mode="1" } },
- { Value, "tmp_dir", "/var/run/openvpn", translate("Temporary directory for client-connect return file"), { server_mode="1" } },
- { Value, "hash_size", "256 256", translate("Set size of real and virtual address hash tables"), { server_mode="1" } },
- { Value, "bcast_buffers", 256, translate("Number of allocated broadcast buffers"), { server_mode="1" } },
- { Value, "tcp_queue_limit", 64, translate("Maximum number of queued TCP output packets"), { server_mode="1" } },
- { Value, "max_clients", 10, translate("Allowed maximum of connected clients"), { server_mode="1" } },
- { Value, "max_routes_per_client", 256, translate("Allowed maximum of internal"), { server_mode="1" } },
- { Value, "connect_freq", "3 10", translate("Allowed maximum of new connections"), { server_mode="1" } },
- { Flag, "client_cert_not_required", 0, translate("Don't require client certificate"), { server_mode="1" } },
- { Flag, "username_as_common_name", 0, translate("Use username as common name"), { server_mode="1" } },
- { Flag, "client", 0, translate("Configure client mode"), { server_mode="0" }, { server_mode="" } },
- { Flag, "pull", 0, translate("Accept options pushed from server"), { client="1" } },
- { Value, "auth_user_pass", "/etc/openvpn/userpass.txt", translate("Authenticate using username/password"), { client="1" } },
- { ListValue, "auth_retry", { "none", "nointeract", "interact" }, translate("Handling of authentication failures"), { client="1" } },
- { Value, "explicit_exit_notify", 1, translate("Send notification to peer on disconnect"), { client="1" } },
- { DynamicList, "remote", "1.2.3.4", translate("Remote host name or ip address"), { client="1" } },
- { Flag, "remote_random", 1, translate("Randomly choose remote server"), { client="1" } },
- { ListValue, "proto", { "udp", "tcp-client", "tcp-server" }, translate("Use protocol"), { client="1" } },
- { Value, "connect_retry", 5, translate("Connection retry interval"), { proto="tcp-client" }, { client="1" } },
- { Value, "http_proxy", "192.168.1.100 8080", translate("Connect to remote host through an HTTP proxy"), { client="1" } },
- { Flag, "http_proxy_retry", 0, translate("Retry indefinitely on HTTP proxy errors"), { client="1" } },
- { Value, "http_proxy_timeout", 5, translate("Proxy timeout in seconds"), { client="1" } },
- { DynamicList, "http_proxy_option", { "VERSION 1.0", "AGENT OpenVPN/2.0.9" }, translate("Set extended HTTP proxy options"), { client="1" } },
- { Value, "socks_proxy", "192.168.1.200 1080", translate("Connect through Socks5 proxy"), { client="1" } },
- { Value, "socks_proxy_retry", 5, translate("Retry indefinitely on Socks proxy errors"), { client="1" } }, -- client && socks_proxy
- { Value, "resolv_retry", "infinite", translate("If hostname resolve fails, retry"), { client="1" } },
- { ListValue, "redirect_gateway", { "", "local", "def1", "local def1" }, translate("Automatically redirect default route"), { client="1" } },
+ { Value,
+ "server",
+ "10.200.200.0 255.255.255.0",
+ translate("Configure server mode"),
+ { client="0" }, { client="" } },
+ { Value,
+ "server_bridge",
+ "10.200.200.1 255.255.255.0 10.200.200.200 10.200.200.250",
+ translate("Configure server bridge"),
+ { client="0" }, { client="" } },
+ { DynamicList,
+ "push",
+ { "redirect-gateway", "comp-lzo" },
+ translate("Push options to peer"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "push_reset",
+ 0,
+ translate("Don't inherit global push options"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "disable",
+ 0,
+ translate("Client is disabled"),
+ { client="0" }, { client="" } },
+ { Value,
+ "ifconfig_pool",
+ "10.200.200.100 10.200.200.150 255.255.255.0",
+ translate("Set aside a pool of subnets"),
+ { client="0" }, { client="" } },
+ { Value,
+ "ifconfig_pool_persist",
+ "/etc/openvpn/ipp.txt 600",
+ translate("Persist/unpersist ifconfig-pool"),
+ { client="0" }, { client="" } },
+ -- deprecated and replaced by --topology p2p
+ -- { Flag,
+ -- "ifconfig_pool_linear",
+ -- 0,
+ -- translate("Use individual addresses rather than /30 subnets"),
+ -- { client="0" }, { client="" } },
+ { Value,
+ "ifconfig_push",
+ "10.200.200.1 255.255.255.255",
+ translate("Push an ifconfig option to remote"),
+ { client="0" }, { client="" } },
+ { Value,
+ "iroute",
+ "10.200.200.0 255.255.255.0",
+ translate("Route subnet to client"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "client_to_client",
+ 0,
+ translate("Allow client-to-client traffic"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "duplicate_cn",
+ 0,
+ translate("Allow multiple clients with same certificate"),
+ { client="0" }, { client="" } },
+ { Value,
+ "client_config_dir",
+ "/etc/openvpn/ccd",
+ translate("Directory for custom client config files"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "ccd_exclusive",
+ 0,
+ translate("Refuse connection if no custom client config"),
+ { client="0" }, { client="" } },
+ { Value,
+ "tmp_dir",
+ "/var/run/openvpn",
+ translate("Temporary directory for client-connect return file"),
+ { client="0" }, { client="" } },
+ { Value,
+ "hash_size",
+ "256 256",
+ translate("Set size of real and virtual address hash tables"),
+ { client="0" }, { client="" } },
+ { Value,
+ "bcast_buffers",
+ 256,
+ translate("Number of allocated broadcast buffers"),
+ { client="0" }, { client="" } },
+ { Value,
+ "tcp_queue_limit",
+ 64,
+ translate("Maximum number of queued TCP output packets"),
+ { client="0" }, { client="" } },
+ { Value,
+ "max_clients",
+ 10,
+ translate("Allowed maximum of connected clients"),
+ { client="0" }, { client="" } },
+ { Value,
+ "max_routes_per_client",
+ 256,
+ translate("Allowed maximum of internal"),
+ { client="0" }, { client="" } },
+ { Value,
+ "connect_freq",
+ "3 10",
+ translate("Allowed maximum of new connections"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "client_cert_not_required",
+ 0,
+ translate("Don't require client certificate"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "username_as_common_name",
+ 0,
+ translate("Use username as common name"),
+ { client="0" }, { client="" } },
+ { Flag,
+ "client",
+ 0,
+ translate("Configure client mode") },
+ { Flag,
+ "pull",
+ 0,
+ translate("Accept options pushed from server"),
+ { client="1" } },
+ { Value,
+ "auth_user_pass",
+ "/etc/openvpn/userpass.txt",
+ translate("Authenticate using username/password"),
+ { client="1" } },
+ { ListValue,
+ "auth_retry",
+ { "none", "nointeract", "interact" },
+ translate("Handling of authentication failures"),
+ { client="1" } },
+ { Value,
+ "explicit_exit_notify",
+ 1,
+ translate("Send notification to peer on disconnect"),
+ { client="1" } },
+ { DynamicList,
+ "remote",
+ "1.2.3.4",
+ translate("Remote host name or ip address"),
+ { client="1" } },
+ { Flag,
+ "remote_random",
+ 0,
+ translate("Randomly choose remote server"),
+ { client="1" } },
+ { ListValue,
+ "proto",
+ { "udp", "tcp-client", "tcp-server" },
+ translate("Use protocol"),
+ { client="1" } },
+ { Value,
+ "connect_retry",
+ 5,
+ translate("Connection retry interval"),
+ { proto="tcp-client" }, { client="1" } },
+ { Value,
+ "http_proxy",
+ "192.168.1.100 8080",
+ translate("Connect to remote host through an HTTP proxy"),
+ { client="1" } },
+ { Flag,
+ "http_proxy_retry",
+ 0,
+ translate("Retry indefinitely on HTTP proxy errors"),
+ { client="1" } },
+ { Value,
+ "http_proxy_timeout",
+ 5,
+ translate("Proxy timeout in seconds"),
+ { client="1" } },
+ { DynamicList,
+ "http_proxy_option",
+ { "VERSION 1.0", "AGENT OpenVPN/2.0.9" },
+ translate("Set extended HTTP proxy options"),
+ { client="1" } },
+ { Value,
+ "socks_proxy",
+ "192.168.1.200 1080",
+ translate("Connect through Socks5 proxy"),
+ { client="1" } },
+ -- client && socks_proxy
+ { Value,
+ "socks_proxy_retry",
+ 5,
+ translate("Retry indefinitely on Socks proxy errors"),
+ { client="1" } },
+ { Value,
+ "resolv_retry",
+ "infinite",
+ translate("If hostname resolve fails, retry"),
+ { client="1" } },
+ { ListValue,
+ "redirect_gateway",
+ { "", "local", "def1", "local def1" },
+ translate("Automatically redirect default route"),
+ { client="1" } },
} },
{ "Cryptography", {
- { FileUpload, "secret", "/etc/openvpn/secret.key", translate("Enable Static Key encryption mode (non-TLS)") },
- { Value, "auth", "SHA1", translate("HMAC authentication for packets") }, -- parse
- { Value, "cipher", "BF-CBC", translate("Encryption cipher for packets") }, -- parse
- { Value, "keysize", 1024, translate("Size of cipher key") }, -- parse
- { Value, "engine", "dynamic", translate("Enable OpenSSL hardware crypto engines") }, -- parse
- { Flag, "no_replay", 0, translate("Disable replay protection") },
- { Value, "replay_window", "64 15", translate("Replay protection sliding window size") },
- { Flag, "mute_replay_warnings", 0, translate("Silence the output of replay warnings") },
- { Value, "replay_persist", "/var/run/openvpn-replay-state", translate("Persist replay-protection state") },
- { Flag, "no_iv", 0, translate("Disable cipher initialisation vector") },
- { Flag, "tls_server", 0, translate("Enable TLS and assume server role"), { tls_client="" }, { tls_client="0" } },
- { Flag, "tls_client", 0, translate("Enable TLS and assume client role"), { tls_server="" }, { tls_server="0" } },
- { FileUpload, "ca", "/etc/easy-rsa/keys/ca.crt", translate("Certificate authority") },
- { FileUpload, "dh", "/etc/easy-rsa/keys/dh1024.pem", translate("Diffie Hellman parameters") },
- { FileUpload, "cert", "/etc/easy-rsa/keys/some-client.crt", translate("Local certificate") },
- { FileUpload, "key", "/etc/easy-rsa/keys/some-client.key", translate("Local private key") },
- { FileUpload, "pkcs12", "/etc/easy-rsa/keys/some-client.pk12", translate("PKCS#12 file containing keys") },
- { ListValue, "key_method", { 1, 2 }, translate("Enable TLS and assume client role") },
- { Value, "tls_cipher", "DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:AES128-SHA:RC4-SHA:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC4-MD5",
- translate("TLS cipher") },
- { Value, "tls_timeout", 2, translate("Retransmit timeout on TLS control channel") },
- { Value, "reneg_bytes", 1024, translate("Renegotiate data chan. key after bytes") },
- { Value, "reneg_pkts", 100, translate("Renegotiate data chan. key after packets") },
- { Value, "reneg_sec", 3600, translate("Renegotiate data chan. key after seconds") },
- { Value, "hand_window", 60, translate("Timeframe for key exchange") },
- { Value, "tran_window", 3600, translate("Key transition window") },
- { Flag, "single_session", 0, translate("Allow only one session") },
- { Flag, "tls_exit", 0, translate("Exit on TLS negotiation failure") },
- { Value, "tls_auth", "/etc/openvpn/tlsauth.key", translate("Additional authentication over TLS") },
- --{ Value, "askpass", "[file]", translate("Get PEM password from controlling tty before we daemonize") },
- { Flag, "auth_nocache", 0, translate("Don't cache --askpass or --auth-user-pass passwords") },
- { Value, "tls_remote", "remote_x509_name", translate("Only accept connections from given X509 name") },
- { ListValue, "ns_cert_type", { "client", "server" }, translate("Require explicit designation on certificate") },
- { ListValue, "remote_cert_tls", { "client", "server" }, translate("Require explicit key usage on certificate") },
- { Value, "crl_verify", "/etc/easy-rsa/keys/crl.pem", translate("Check peer certificate against a CRL") },
- { Value, "tls_version_min", "1.0", translate("The lowest supported TLS version") },
- { Value, "tls_version_max", "1.2", translate("The highest supported TLS version") },
- { Value, "key_direction", "1", translate("The key direction for 'tls-auth' and 'secret' options") },
- } }
+ { FileUpload,
+ "secret",
+ "/etc/openvpn/secret.key",
+ translate("Enable Static Key encryption mode (non-TLS)") },
+ -- parse
+ { Value,
+ "auth",
+ "SHA1",
+ translate("HMAC authentication for packets") },
+ -- parse
+ { Value,
+ "cipher",
+ "BF-CBC",
+ translate("Encryption cipher for packets") },
+ -- parse
+ { Value,
+ "keysize",
+ 1024,
+ translate("Size of cipher key") },
+ -- parse
+ { Value,
+ "engine",
+ "dynamic",
+ translate("Enable OpenSSL hardware crypto engines") },
+ { Flag,
+ "no_replay",
+ 0,
+ translate("Disable replay protection") },
+ { Value,
+ "replay_window",
+ "64 15",
+ translate("Replay protection sliding window size") },
+ { Flag,
+ "mute_replay_warnings",
+ 0,
+ translate("Silence the output of replay warnings") },
+ { Value,
+ "replay_persist",
+ "/var/run/openvpn-replay-state",
+ translate("Persist replay-protection state") },
+ { Flag,
+ "no_iv",
+ 0,
+ translate("Disable cipher initialisation vector") },
+ { Flag,
+ "tls_server",
+ 0,
+ translate("Enable TLS and assume server role"),
+ { tls_client="" }, { tls_client="0" } },
+ { Flag,
+ "tls_client",
+ 0,
+ translate("Enable TLS and assume client role"),
+ { tls_server="" }, { tls_server="0" } },
+ { FileUpload,
+ "ca",
+ "/etc/easy-rsa/keys/ca.crt",
+ translate("Certificate authority") },
+ { FileUpload,
+ "dh",
+ "/etc/easy-rsa/keys/dh1024.pem",
+ translate("Diffie Hellman parameters") },
+ { FileUpload,
+ "cert",
+ "/etc/easy-rsa/keys/some-client.crt",
+ translate("Local certificate") },
+ { FileUpload,
+ "key",
+ "/etc/easy-rsa/keys/some-client.key",
+ translate("Local private key") },
+ { FileUpload,
+ "pkcs12",
+ "/etc/easy-rsa/keys/some-client.pk12",
+ translate("PKCS#12 file containing keys") },
+ { ListValue,
+ "key_method",
+ { 1, 2 },
+ translate("Enable TLS and assume client role") },
+ { Value,
+ "tls_cipher",
+ "DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:AES128-SHA:RC4-SHA:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC4-MD5",
+ translate("TLS cipher") },
+ { Value,
+ "tls_timeout",
+ 2,
+ translate("Retransmit timeout on TLS control channel") },
+ { Value,
+ "reneg_bytes",
+ 1024,
+ translate("Renegotiate data chan. key after bytes") },
+ { Value,
+ "reneg_pkts",
+ 100,
+ translate("Renegotiate data chan. key after packets") },
+ { Value,
+ "reneg_sec",
+ 3600,
+ translate("Renegotiate data chan. key after seconds") },
+ { Value,
+ "hand_window",
+ 60,
+ translate("Timeframe for key exchange") },
+ { Value,
+ "tran_window",
+ 3600,
+ translate("Key transition window") },
+ { Flag,
+ "single_session",
+ 0,
+ translate("Allow only one session") },
+ { Flag,
+ "tls_exit",
+ 0,
+ translate("Exit on TLS negotiation failure") },
+ { Value,
+ "tls_auth",
+ "/etc/openvpn/tlsauth.key",
+ translate("Additional authentication over TLS") },
+ -- { Value,
+ -- "askpass",
+ -- "[file]",
+ -- translate("Get PEM password from controlling tty before we daemonize") },
+ { Flag,
+ "auth_nocache",
+ 0,
+ translate("Don't cache --askpass or --auth-user-pass passwords") },
+ { Value,
+ "tls_remote",
+ "remote_x509_name",
+ translate("Only accept connections from given X509 name") },
+ { ListValue,
+ "ns_cert_type",
+ { "client", "server" },
+ translate("Require explicit designation on certificate") },
+ { ListValue,
+ "remote_cert_tls",
+ { "client", "server" },
+ translate("Require explicit key usage on certificate") },
+ { Value,
+ "crl_verify",
+ "/etc/easy-rsa/keys/crl.pem",
+ translate("Check peer certificate against a CRL") },
+ { Value,
+ "tls_version_min",
+ "1.0",
+ translate("The lowest supported TLS version") },
+ { Value,
+ "tls_version_max",
+ "1.2",
+ translate("The highest supported TLS version") },
+ { Value,
+ "key_direction",
+ "1",
+ translate("The key direction for 'tls-auth' and 'secret' options") },
+ } }
}
diff --git a/applications/luci-app-openvpn/po/pt-br/openvpn.po b/applications/luci-app-openvpn/po/pt-br/openvpn.po
index 916370e7f..84b054058 100644
--- a/applications/luci-app-openvpn/po/pt-br/openvpn.po
+++ b/applications/luci-app-openvpn/po/pt-br/openvpn.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-10 03:41+0200\n"
-"PO-Revision-Date: 2014-03-29 23:19+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-02-20 18:04-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "%s"
msgstr "%s"
@@ -154,7 +154,7 @@ msgid "Don't log timestamps"
msgstr "Não registar a data/hora"
msgid "Don't pull routes automatically"
-msgstr ""
+msgstr "Não puxe as rotas automaticamente"
msgid "Don't re-read key on restart"
msgstr "Não reler a chave entre os reinícios"
@@ -505,13 +505,13 @@ msgid "Temporary directory for client-connect return file"
msgstr "Diretório temporário para arquivo de retorno de conexão-cliente"
msgid "The highest supported TLS version"
-msgstr ""
+msgstr "A mais alta versão suporta do TLS"
msgid "The key direction for 'tls-auth' and 'secret' options"
-msgstr ""
+msgstr "A direção da chave para as opções 'tls-auth' e 'secret'"
msgid "The lowest supported TLS version"
-msgstr ""
+msgstr "A mais baixa versão suporta do TLS"
msgid "Timeframe for key exchange"
msgstr "Janela temporal para troca de chaves"
diff --git a/applications/luci-app-openvpn/po/zh-cn/openvpn.po b/applications/luci-app-openvpn/po/zh-cn/openvpn.po
index 899b4d238..3904ac4bf 100644
--- a/applications/luci-app-openvpn/po/zh-cn/openvpn.po
+++ b/applications/luci-app-openvpn/po/zh-cn/openvpn.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-19 19:35+0200\n"
-"PO-Revision-Date: 2013-10-10 06:09+0200\n"
-"Last-Translator: Tanyingyu <Tanyingyu@163.com>\n"
+"PO-Revision-Date: 2017-04-14 17:26-0600\n"
+"Last-Translator: liushuyu <liushuyu011@gmail.com>\n"
"Language-Team: QQ Group 75543259 <axishero@foxmail.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 2.0.1\n"
msgid "%s"
msgstr "%s"
@@ -498,13 +498,13 @@ msgid "Temporary directory for client-connect return file"
msgstr "客户端连接返回文件的临时目录"
msgid "The highest supported TLS version"
-msgstr ""
+msgstr "最高支æŒçš„ TLS 版本"
msgid "The key direction for 'tls-auth' and 'secret' options"
msgstr ""
msgid "The lowest supported TLS version"
-msgstr ""
+msgstr "最低支æŒçš„ TLS 版本"
msgid "Timeframe for key exchange"
msgstr "密钥交æ¢æ—¶é—´è¡¨"
diff --git a/applications/luci-app-p910nd/po/ja/p910nd.po b/applications/luci-app-p910nd/po/ja/p910nd.po
index 42335cefa..28ffc3817 100644
--- a/applications/luci-app-p910nd/po/ja/p910nd.po
+++ b/applications/luci-app-p910nd/po/ja/p910nd.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-19 19:36+0200\n"
-"PO-Revision-Date: 2011-11-04 18:11+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2016-12-22 01:08+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.4\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "Bidirectional mode"
msgstr "åŒæ–¹å‘モード"
@@ -27,7 +27,7 @@ msgstr ""
"ã‚‹ãŸã‚ã®ãƒ‘ッケージをインストールã—ã¦ãã ã•ã„。"
msgid "Interface"
-msgstr ""
+msgstr "インターフェース"
msgid "Port"
msgstr "ãƒãƒ¼ãƒˆç•ªå·"
@@ -36,7 +36,7 @@ msgid "Settings"
msgstr "設定"
msgid "Specifies the interface to listen on."
-msgstr ""
+msgstr "å¾…ã¡å—ã‘るインターフェースを指定ã—ã¾ã™ã€‚"
msgid "TCP listener port."
msgstr "TCP接続待ã¡ãƒãƒ¼ãƒˆ"
diff --git a/applications/luci-app-privoxy/po/pt-br/privoxy.po b/applications/luci-app-privoxy/po/pt-br/privoxy.po
new file mode 100644
index 000000000..8d3eee20d
--- /dev/null
+++ b/applications/luci-app-privoxy/po/pt-br/privoxy.po
@@ -0,0 +1,516 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid ""
+"A URL to be displayed in the error page that users will see if access to an "
+"untrusted page is denied."
+msgstr ""
+"A URL a ser exibida na página de erro que os usuários verão se o acesso a "
+"uma página não confiável é negado."
+
+msgid ""
+"A URL to documentation about the local Privoxy setup, configuration or "
+"policies."
+msgstr ""
+"A URL para a documentação sobre o Privoxy local, configuração ou políticas."
+
+msgid "A directory where Privoxy can create temporary files."
+msgstr "Um diretório onde Privoxy pode criar arquivos temporários."
+
+msgid "Access Control"
+msgstr "Controle de Acesso"
+
+msgid "Actions that are applied to all sites and maybe overruled later on."
+msgstr ""
+"Ações que são aplicadas a todos as páginas e talvez descartado mais tarde."
+
+msgid "An alternative directory where the templates are loaded from."
+msgstr "Um diretório alternativo de onde os modelos são carregados."
+
+msgid "An email address to reach the Privoxy administrator."
+msgstr "Um endereço de e-mail para alcançar o administrador do Privoxy."
+
+msgid ""
+"Assumed server-side keep-alive timeout (in seconds) if not specified by the "
+"server."
+msgstr ""
+"Tempo limite, em segundos, da manutenção da conexão (keep-alive) do servidor "
+"se não for especificado."
+
+msgid "Boot delay"
+msgstr "Atraso de iniciação"
+
+msgid "CGI user interface"
+msgstr "Interface de usuário CGI"
+
+msgid "Common Log Format"
+msgstr "Formato de registros (log) comum"
+
+msgid ""
+"Configure here the routing of HTTP requests through a chain of multiple "
+"proxies. Note that parent proxies can severely decrease your privacy level. "
+"Also specified here are SOCKS proxies."
+msgstr ""
+"Configure aqui o encaminhamento de pedidos HTTP através de uma cadeia de "
+"múltiplos proxies. Note-se que proxies pai pode diminuir muito o nível de "
+"privacidade. Também serão aceitos proxies SOCKS."
+
+msgid "Debug GIF de-animation"
+msgstr "Depurar de-animação GIF"
+
+msgid "Debug force feature"
+msgstr "Recurso de depuração forçado"
+
+msgid "Debug redirects"
+msgstr "Redirecionamentos de depuração"
+
+msgid "Debug regular expression filters"
+msgstr "Depuração de filtros de expressão regular"
+
+msgid "Delay (in seconds) during system boot before Privoxy start"
+msgstr ""
+"Atraso (em segundos) durante a inicialização do sistema antes do Privoxy "
+"iniciar"
+
+msgid "Directory does not exist!"
+msgstr "O diretório não existe!"
+
+msgid "Disabled == Transparent Proxy Mode"
+msgstr "Desativado == Modo Proxy Transparente"
+
+msgid "Documentation"
+msgstr "Documentação"
+
+msgid "During delay ifup-events are not monitored !"
+msgstr "Durante a espera, eventos ifup não serão monitorados!"
+
+msgid "Enable proxy authentication forwarding"
+msgstr "Habilitar o encaminhamento de autenticação de proxy"
+
+msgid ""
+"Enable/Disable autostart of Privoxy on system startup and interface events"
+msgstr ""
+"Ativar/Desativar a iniciação automática do Privoxy junto com a iniciação do "
+"sistema ou eventos de interface"
+
+msgid "Enable/Disable filtering when Privoxy starts."
+msgstr "Ativar / Desativar filtragem quando Privoxy iniciar."
+
+msgid "Enabled"
+msgstr "Habilitado"
+
+msgid ""
+"Enabling this option is NOT recommended if there is no parent proxy that "
+"requires authentication!"
+msgstr ""
+"A ativação dessa opção não é recomendado se não houver nenhum proxy pai que "
+"requer autenticação!"
+
+msgid "File '%s' not found inside Configuration Directory"
+msgstr "O arquivo '%s' não foi encontrado dentro do Diretório de Configuração"
+
+msgid "File not found or empty"
+msgstr "Arquivo não encontrado ou vazio"
+
+msgid "Files and Directories"
+msgstr "Arquivos e diretórios"
+
+msgid "For help use link at the relevant option"
+msgstr "Para ajuda, use o link na respectiva opção"
+
+msgid "Forwarding"
+msgstr "Encaminhando"
+
+msgid ""
+"If enabled, Privoxy hides the 'go there anyway' link. The user obviously "
+"should not be able to bypass any blocks."
+msgstr ""
+"Se ativado, Privoxy esconde o link \"ir lá de qualquer maneira\". O usuário, "
+"obviamente, não deve ser capaz de contornar qualquer bloqueio."
+
+msgid ""
+"If you intend to operate Privoxy for more users than just yourself, it might "
+"be a good idea to let them know how to reach you, what you block and why you "
+"do that, your policies, etc."
+msgstr ""
+"Se você pretende operar Privoxy para mais usuários do que apenas a si mesmo, "
+"pode ser uma boa ideia para que eles saibam como falar com você, o que você "
+"bloquear e por que você faz isso, as suas políticas, etc."
+
+msgid "Invalid email address"
+msgstr "Endereço de e-mail inválido"
+
+msgid "It is NOT recommended for the casual user."
+msgstr "Não é recomendado para o usuário casual."
+
+msgid "Location of the Privoxy User Manual."
+msgstr "Localização do Manual do Usuário do Privoxy."
+
+msgid "Log File Viewer"
+msgstr "Visualizador de arquivo de registros (log)"
+
+msgid "Log all data read from the network"
+msgstr "Registrar todos os dados lidos da rede"
+
+msgid "Log all data written to the network"
+msgstr "Registrar todos os dados gravados na rede"
+
+msgid "Log the applying actions"
+msgstr "Registrar as ações aplicadas"
+
+msgid ""
+"Log the destination for each request Privoxy let through. See also 'Debug "
+"1024'."
+msgstr ""
+"Registrar o destino para cada pedido que o Privoxy deixou passar. Consulte "
+"também 'Debug 1024'."
+
+msgid ""
+"Log the destination for requests Privoxy didn't let through, and the reason "
+"why."
+msgstr ""
+"Registrar o destino para os pedidos que o Privoxy não deixou passar, e a "
+"razão pela qual."
+
+msgid "Logging"
+msgstr "Registrando (logging)"
+
+msgid "Main actions file"
+msgstr "Arquivo principal de ações"
+
+msgid "Mandatory Input: No Data given!"
+msgstr "Entrada obrigatória: Dados não foram informados!"
+
+msgid "Mandatory Input: No Directory given!"
+msgstr "Entrada obrigatória: Nenhum Diretório foi informado!"
+
+msgid "Mandatory Input: No File given!"
+msgstr "Entrada obrigatória: Nenhum Arquivo foi informado!"
+
+msgid "Mandatory Input: No Port given!"
+msgstr "Entrada obrigatória: Nenhuma Porta foi informado!"
+
+msgid "Mandatory Input: No files given!"
+msgstr "Entrada obrigatória: Nenhum Arquivo foi informado!"
+
+msgid "Mandatory Input: No valid IPv4 address or host given!"
+msgstr ""
+"Entrada obrigatória: Nenhum endereço IPv4 ou nome de equipamento válido foi "
+"fornecido!"
+
+msgid "Mandatory Input: No valid IPv6 address given!"
+msgstr "Entrada obrigatória: Nenhum endereço IPv6 válido foi informado!"
+
+msgid "Mandatory Input: No valid Port given!"
+msgstr "Entrada obrigatória: Nenhuma porta válida foi informada!"
+
+msgid "Maximum number of client connections that will be served."
+msgstr "O número máximo de conexões de cliente que será aceito."
+
+msgid "Maximum size (in KB) of the buffer for content filtering."
+msgstr "Tamanho máximo (em KB) do buffer para filtragem de conteúdo."
+
+msgid "Miscellaneous"
+msgstr "Diversos"
+
+msgid "NOT installed"
+msgstr "NÃO instalado"
+
+msgid "No trailing '/', please."
+msgstr "Sem '/' final, por favor."
+
+msgid "Non-fatal errors - *we highly recommended enabling this*"
+msgstr "Erros não fatais - *é altamente recomendado ativar isto*"
+
+msgid ""
+"Number of seconds after which a socket times out if no data is received."
+msgstr ""
+"Número de segundos após o qual uma conexão expira se nenhum dado for "
+"recebido."
+
+msgid ""
+"Number of seconds after which an open connection will no longer be reused."
+msgstr ""
+"Número de segundos após o qual uma conexão aberta deixará de ser reutilizada."
+
+msgid ""
+"Only when using 'external filters', Privoxy has to create temporary files."
+msgstr ""
+"Somente quando for usado os \"filtros externos\". O Privoxy tem que criar "
+"arquivos temporários."
+
+msgid "Please install current version !"
+msgstr "Por favor, instale a versão atual!"
+
+msgid "Please press [Read] button"
+msgstr "Por favor, pressione o botão [Ler]"
+
+msgid "Please read Privoxy manual for details!"
+msgstr "Por favor, leia o manual do Privoxy para mais detalhes!"
+
+msgid "Please update to the current version!"
+msgstr "Por favor, atualize para a versão atual!"
+
+msgid "Privoxy WEB proxy"
+msgstr "Privoxy Web Proxy"
+
+msgid ""
+"Privoxy can (and normally does) use a number of other files for additional "
+"configuration, help and logging. This section of the configuration file "
+"tells Privoxy where to find those other files."
+msgstr ""
+"Privoxy pode (e normalmente o faz) utilizar uma série de outros arquivos de "
+"configuração, ajuda e de registros. Esta seção do arquivo de configuração "
+"informa o Privoxy onde encontrar os outros arquivos."
+
+msgid ""
+"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
+"enhancing privacy, modifying web page data and HTTP headers, controlling "
+"access, and removing ads and other obnoxious Internet junk."
+msgstr ""
+"Privoxy é um proxy web sem cache com capacidades avançadas de filtragem para "
+"aumentar a privacidade, modificar dados de páginas web e cabeçalhos HTTP, "
+"controlar o acesso e remover anúncios e outras porcarias detestável da "
+"Internet."
+
+msgid "Read / Reread log file"
+msgstr "Ler / Ler novamente o arquivo de registros (log)"
+
+msgid "Show I/O status"
+msgstr "Mostrar status de Entrada/Saída"
+
+msgid "Show each connection status"
+msgstr "Mostrar cada estado de conexão"
+
+msgid "Show header parsing"
+msgstr "Mostrar análise do cabeçalho"
+
+msgid "Software package '%s' is not installed."
+msgstr "O pacote de software '%s' não está instalado."
+
+msgid "Software package '%s' is outdated."
+msgstr "O pacote '%' está desatualizado."
+
+msgid "Start"
+msgstr "Iniciar"
+
+msgid "Start / Stop"
+msgstr "Iniciar / Parar"
+
+msgid "Start/Stop Privoxy WEB Proxy"
+msgstr "Inicia / Para o Privoxy Web Proxy"
+
+msgid "Startup banner and warnings."
+msgstr "Mensagens e avisos iniciais."
+
+msgid "Syntax:"
+msgstr "Sintaxe:"
+
+msgid "Syntax: Client header names delimited by spaces."
+msgstr "Sintaxe: nomes de cabeçalho do cliente delimitados por espaços."
+
+msgid "Syntax: target_pattern http_parent[:port]"
+msgstr "Sintaxe: padrão_alvo http_superior[:porta]"
+
+msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
+msgstr "Sintaxe: padrão_alvo proxy_socks[:porta] http_superior[:porta]"
+
+msgid "System"
+msgstr "Sistema"
+
+msgid ""
+"The actions file(s) to use. Multiple actionsfile lines are permitted, and "
+"are in fact recommended!"
+msgstr ""
+"O(s) arquivo(s) ações a ser usado. Várias linhas no arquivo são permitidas, "
+"e são, de fato, recomendadas!"
+
+msgid ""
+"The address and TCP port on which Privoxy will listen for client requests."
+msgstr ""
+"O endereço e porta TCP em que Privoxy vai esperar por pedidos dos clientes."
+
+msgid ""
+"The compression level that is passed to the zlib library when compressing "
+"buffered content."
+msgstr ""
+"O nível de compressão que é passada para a biblioteca zlib ao comprimir o "
+"conteúdo em buffer."
+
+msgid ""
+"The directory where all logging takes place (i.e. where the logfile is "
+"located)."
+msgstr ""
+"O diretório onde todos os registros ocorrem (ex: onde o arquivo de log está "
+"localizado)."
+
+msgid "The directory where the other configuration files are located."
+msgstr "O diretório onde os outros arquivos de configuração estão localizados."
+
+msgid ""
+"The filter files contain content modification rules that use regular "
+"expressions."
+msgstr ""
+"Os arquivos de filtro contêm regras de modificação de conteúdo que usam "
+"expressões regulares."
+
+msgid "The hostname shown on the CGI pages."
+msgstr "O nome da máquina mostrado nas páginas de CGI."
+
+msgid "The log file to use. File name, relative to log directory."
+msgstr ""
+"O arquivo de registros a ser usado. O nome do arquivo, relativo ao diretório "
+"de log."
+
+msgid "The order in which client headers are sorted before forwarding them."
+msgstr ""
+"A ordem em que os cabeçalhos dos clientes são classificados antes de "
+"encaminhá-los."
+
+msgid ""
+"The status code Privoxy returns for pages blocked with +handle-as-empty-"
+"document."
+msgstr ""
+"O código de status Privoxy retorna para páginas bloqueadas com +handle-as-"
+"empty-document."
+
+msgid ""
+"The trust mechanism is an experimental feature for building white-lists and "
+"should be used with care."
+msgstr ""
+"O mecanismo de confiança é um recurso experimental para a construção de "
+"listas de destinos confiáveis e deve ser usado com cuidado."
+
+msgid ""
+"The value of this option only matters if the experimental trust mechanism "
+"has been activated."
+msgstr ""
+"O valor desta opção só importa se o mecanismo de confiança experimental foi "
+"ativado."
+
+msgid ""
+"This option is only there for debugging purposes. It will drastically reduce "
+"performance."
+msgstr ""
+"Esta opção só está lá para fins de depuração. Ele irá reduzir drasticamente "
+"o desempenho."
+
+msgid ""
+"This option will be removed in future releases as it has been obsoleted by "
+"the more general header taggers."
+msgstr ""
+"Esta opção será removida em versões futuras, uma vez que ficou obsoleta "
+"pelos marcadores de cabeçalho mais genéricos."
+
+msgid ""
+"This tab controls the security-relevant aspects of Privoxy's configuration."
+msgstr ""
+"Esta guia controla os aspectos da configuração do Privoxy relevantes para a "
+"segurança."
+
+msgid ""
+"Through which SOCKS proxy (and optionally to which parent HTTP proxy) "
+"specific requests should be routed."
+msgstr ""
+"Através de qual Proxy SOCKS (e, opcionalmente, para o qual proxy HTTP "
+"superior) pedidos específicos devem ser encaminhados."
+
+msgid "To which parent HTTP proxy specific requests should be routed."
+msgstr ""
+"Para qual proxy HTTP superior os pedidos específicos devem ser encaminhados."
+
+msgid "User customizations"
+msgstr "Personalizações do usuário"
+
+msgid "Value is not a number"
+msgstr "O valor não é um número"
+
+msgid "Value not between 0 and 300"
+msgstr "Valor não está entre 0 e 300"
+
+msgid "Value not between 0 and 9"
+msgstr "Valor não está entre 0 e 9"
+
+msgid "Value not between 1 and 4096"
+msgstr "Valor não entre 1 e 4096"
+
+msgid "Value not greater 0 or empty"
+msgstr "Valor não é maior que 0 ou vazio"
+
+msgid "Value range 1 to 4096, no entry defaults to 4096"
+msgstr "Faixa do valor de 1 até 4096. Se vazio, será 4096"
+
+msgid "Version"
+msgstr "Versão"
+
+msgid "Version Information"
+msgstr "Informação da Versão"
+
+msgid "Whether intercepted requests should be treated as valid."
+msgstr "Se as solicitações interceptados deve ser tratadas como válidas."
+
+msgid ""
+"Whether or not Privoxy recognizes special HTTP headers to change toggle "
+"state."
+msgstr ""
+"Se o Privoxy deve reconhecer cabeçalhos HTTP especiais para mudar de "
+"alternância do estado."
+
+msgid "Whether or not buffered content is compressed before delivery."
+msgstr "Se o conteúdo em buffer é comprimido antes da entrega."
+
+msgid ""
+"Whether or not outgoing connections that have been kept alive should be "
+"shared between different incoming connections."
+msgstr ""
+"Se as conexões de saída que foram mantidas vivas devem ser compartilhadas "
+"entre diferentes conexões de entrada."
+
+msgid "Whether or not pipelined requests should be served."
+msgstr "Se os pedidos de pipeline deve ser aceitos."
+
+msgid "Whether or not proxy authentication through Privoxy should work."
+msgstr "Se a autenticação de proxy através do Privoxy deve funcionar."
+
+msgid "Whether or not the web-based actions file editor may be used."
+msgstr "Se o editor de arquivos de ações baseadas na web deve ser utilizado."
+
+msgid "Whether or not the web-based toggle feature may be used."
+msgstr "Se deve ser usado o recurso de alternância baseado na web."
+
+msgid "Whether requests to Privoxy's CGI pages can be blocked or redirected."
+msgstr ""
+"Se as solicitações para páginas CGI do Privoxy podem ser bloqueadas ou "
+"redirecionadas."
+
+msgid ""
+"Whether the CGI interface should stay compatible with broken HTTP clients."
+msgstr ""
+"Se a interface CGI deve se manter compatível com clientes HTTP mal "
+"implementados."
+
+msgid "Whether to run only one server thread."
+msgstr "Se deseja executar o servidor como apenas uma thread."
+
+msgid "Who can access what."
+msgstr "Quem pode acessar o quê."
+
+msgid "installed"
+msgstr "instalado"
+
+msgid "or higher"
+msgstr "ou maior"
+
+msgid "required"
+msgstr "necessário"
diff --git a/applications/luci-app-privoxy/po/zh-cn/privoxy.po b/applications/luci-app-privoxy/po/zh-cn/privoxy.po
index 75d1a921c..778422b8b 100644
--- a/applications/luci-app-privoxy/po/zh-cn/privoxy.po
+++ b/applications/luci-app-privoxy/po/zh-cn/privoxy.po
@@ -2,14 +2,14 @@ msgid ""
msgstr ""
"Project-Id-Version: luci-app-privoxy\n"
"POT-Creation-Date: 2015-06-10 20:16+0100\n"
-"PO-Revision-Date: 2015-06-10 20:16+0100\n"
+"PO-Revision-Date: 2017-01-05 18:01+0800\n"
"Last-Translator: maz-1 <ohmygod19993 at gmail dotcom>\n"
"Language-Team: \n"
-"Language: zh-cn\n"
+"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.5.4\n"
+"X-Generator: Poedit 1.8.11\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
@@ -21,10 +21,10 @@ msgstr "当用户试图访问ä¸å—信任的页é¢æ—¶ï¼Œé”™è¯¯é¡µé¢æ‰€æ˜¾ç¤ºçš„
msgid ""
"A URL to documentation about the local Privoxy setup, configuration or "
"policies."
-msgstr "指å‘Privoxy安装ã€è®¾ç½®å’Œè§„则说明文档的URL"
+msgstr "æŒ‡å‘ Privoxy 安装ã€è®¾ç½®å’Œè§„则说明文档的 URL"
msgid "A directory where Privoxy can create temporary files."
-msgstr "Privoxy存放临时文件的目录。"
+msgstr "Privoxy 存放临时文件的目录。"
msgid "Access Control"
msgstr "访问控制"
@@ -36,18 +36,18 @@ msgid "An alternative directory where the templates are loaded from."
msgstr "å¯é€‰çš„目录,放在里é¢çš„模æ¿ä¼šè¢«åŠ è½½ã€‚"
msgid "An email address to reach the Privoxy administrator."
-msgstr "用于è”ç³»privoxy管ç†å‘˜çš„邮箱地å€ã€‚"
+msgstr "用于è”ç³» Privoxy 管ç†å‘˜çš„邮箱地å€ã€‚"
msgid ""
"Assumed server-side keep-alive timeout (in seconds) if not specified by the "
"server."
-msgstr "当æœåŠ¡ç«¯æ²¡æœ‰æŒ‡å®šè¶…时时间时å‡å®šçš„超时时间(å•ä½ç§’)。"
+msgstr "当æœåŠ¡ç«¯æ²¡æœ‰æŒ‡å®šè¶…时时间时å‡å®šçš„超时时间(å•ä½ï¼šç§’)。"
msgid "Boot delay"
-msgstr ""
+msgstr "å¯åŠ¨å»¶æ—¶"
msgid "CGI user interface"
-msgstr "CGI用户界é¢"
+msgstr "CGI 用户界é¢"
msgid "Common Log Format"
msgstr "通用日志格å¼"
@@ -57,14 +57,14 @@ msgid ""
"proxies. Note that parent proxies can severely decrease your privacy level. "
"Also specified here are SOCKS proxies."
msgstr ""
-"在这里设置http请求所ç»è¿‡çš„多é‡ä»£ç†é“¾ã€‚注æ„父级代ç†å¯èƒ½ä¸¥é‡é™ä½Žä½ çš„éšç§å®‰å…¨"
-"度。在这里还å¯ä»¥è®¾ç½®SOCKS代ç†ã€‚"
+"在这里设置 HTTP 请求所ç»è¿‡çš„多é‡ä»£ç†é“¾ã€‚注æ„:父级代ç†å¯èƒ½ä¸¥é‡é™ä½Žä½ çš„éšç§å®‰"
+"全度。在这里还å¯ä»¥è®¾ç½® SOCKS 代ç†ã€‚"
msgid "Debug GIF de-animation"
msgstr "GIF动画日志"
msgid "Debug force feature"
-msgstr "force feature日志"
+msgstr "Force feature 日志"
msgid "Debug redirects"
msgstr "é‡å®šå‘日志"
@@ -73,7 +73,7 @@ msgid "Debug regular expression filters"
msgstr "正则表达å¼æ—¥å¿—"
msgid "Delay (in seconds) during system boot before Privoxy start"
-msgstr ""
+msgstr "Privoxy 自å¯åŠ¨å»¶è¿Ÿæ—¶é—´ï¼ˆå•ä½ï¼šç§’)"
msgid "Directory does not exist!"
msgstr "目录ä¸å­˜åœ¨ï¼"
@@ -82,20 +82,20 @@ msgid "Disabled == Transparent Proxy Mode"
msgstr "ç¦ç”¨ == é€æ˜Žä»£ç†æ¨¡å¼"
msgid "Documentation"
-msgstr ""
+msgstr "记录信æ¯"
msgid "During delay ifup-events are not monitored !"
-msgstr ""
+msgstr "在延迟期间无法检测到 ifup 事件ï¼"
msgid "Enable proxy authentication forwarding"
msgstr "å…许转å‘代ç†è®¤è¯"
msgid ""
"Enable/Disable autostart of Privoxy on system startup and interface events"
-msgstr "å¼€å¯/关闭Privoxy在系统å¯åŠ¨æˆ–者设置界é¢æ›´æ”¹æ—¶è‡ªåŠ¨å¯åŠ¨ã€‚"
+msgstr "å¼€å¯/关闭 Privoxy 在系统å¯åŠ¨æˆ–接å£äº‹ä»¶æ—¶è‡ªåŠ¨å¯åŠ¨ã€‚"
msgid "Enable/Disable filtering when Privoxy starts."
-msgstr "Privoxyå¯åŠ¨æ—¶å¼€å¯/关闭过滤。"
+msgstr "Privoxy å¯åŠ¨æ—¶å¼€å¯/关闭过滤。"
msgid "Enabled"
msgstr "已开å¯"
@@ -103,10 +103,10 @@ msgstr "已开å¯"
msgid ""
"Enabling this option is NOT recommended if there is no parent proxy that "
"requires authentication!"
-msgstr "父级代ç†ä¸éœ€è¦è®¤è¯æ—¶ä¸æŽ¨èå¼€å¯è¿™ä¸ªé€‰é¡¹ï¼"
+msgstr "如果没有需è¦è®¤è¯çš„父级代ç†æ—¶ï¼Œä¸æŽ¨èå¼€å¯è¿™ä¸ªé€‰é¡¹ï¼"
msgid "File '%s' not found inside Configuration Directory"
-msgstr "文件 '%s' 没有在设置目录中找到ï¼"
+msgstr "在设置目录中未找到文件 '%S'ï¼"
msgid "File not found or empty"
msgstr "文件ä¸å­˜åœ¨æˆ–为空"
@@ -115,7 +115,7 @@ msgid "Files and Directories"
msgstr "文件和目录"
msgid "For help use link at the relevant option"
-msgstr "在相应选项下的连接å¯èŽ·å–帮助。"
+msgstr "点击相应选项的连接å¯èŽ·å–帮助。"
msgid "Forwarding"
msgstr "转å‘"
@@ -123,15 +123,15 @@ msgstr "转å‘"
msgid ""
"If enabled, Privoxy hides the 'go there anyway' link. The user obviously "
"should not be able to bypass any blocks."
-msgstr "如果å¯ç”¨ï¼ŒPrivoxy会éšè—'go there anyway'链接。用户显然ä¸åº”能绕过å±è”½ã€‚"
+msgstr "如果å¯ç”¨ï¼ŒPrivoxy 会éšè— 'go there anyway' 链接,用户就ä¸èƒ½ç»•è¿‡å±è”½ã€‚"
msgid ""
"If you intend to operate Privoxy for more users than just yourself, it might "
"be a good idea to let them know how to reach you, what you block and why you "
"do that, your policies, etc."
msgstr ""
-"如果除了你还有其他用户通过privoxy连接,让他们知é“如何è”系你ã€ä»€ä¹ˆå†…容被å±è”½"
-"了ã€ä½ ä¸ºä»€ä¹ˆè¦è¿™ä¹ˆåšã€ä½ æ‰€åˆ¶å®šçš„规范等等是一个好主æ„。"
+"如果除了你还有其他用户使用 Privoxy 连接,最好让他们知é“如何è”系你,你å±è”½ä»€"
+"么,你为什么这样åšï¼Œä½ çš„政策等等。"
msgid "Invalid email address"
msgstr "邮箱地å€æ— æ•ˆ"
@@ -140,29 +140,29 @@ msgid "It is NOT recommended for the casual user."
msgstr "ä¸æŽ¨è新手使用。"
msgid "Location of the Privoxy User Manual."
-msgstr "Privoxy用户手册ä½ç½®"
+msgstr "Privoxy 用户手册ä½ç½®"
msgid "Log File Viewer"
msgstr "日志查看器"
msgid "Log all data read from the network"
-msgstr "记录所有从网络接收的数æ®"
+msgstr "记录所有接收的网络数æ®"
msgid "Log all data written to the network"
-msgstr "记录所有å‘é€ç»™ç½‘络的数æ®"
+msgstr "记录所有å‘é€çš„网络数æ®"
msgid "Log the applying actions"
-msgstr "记录被应用的规则"
+msgstr "记录é…ç½®ä¿å­˜åŠ¨ä½œ"
msgid ""
"Log the destination for each request Privoxy let through. See also 'Debug "
"1024'."
-msgstr "记录Privoxy所å…许的所有请求。å¦è¯·å‚考'Debug 1024'。"
+msgstr "记录 Privoxy å…许的所有请求。å¦è¯·å‚考 'Debug 1024'。"
msgid ""
"Log the destination for requests Privoxy didn't let through, and the reason "
"why."
-msgstr "记录被Privoxyæ‹’ç»çš„请求目标以åŠæ‹’ç»åŽŸå› ã€‚"
+msgstr "记录 Privoxy æ‹’ç»çš„请求目标以åŠæ‹’ç»åŽŸå› ã€‚"
msgid "Logging"
msgstr "日志"
@@ -198,40 +198,40 @@ msgid "Maximum number of client connections that will be served."
msgstr "客户端数é‡ä¸Šé™ã€‚"
msgid "Maximum size (in KB) of the buffer for content filtering."
-msgstr "内容过滤的最大缓冲(å•ä½KB)。"
+msgstr "内容过滤的最大缓冲(å•ä½ï¼šKB)。"
msgid "Miscellaneous"
msgstr "æ‚项"
msgid "NOT installed"
-msgstr ""
+msgstr "未安装"
msgid "No trailing '/', please."
-msgstr "路径结尾ä¸è¦åŠ '/' ."
+msgstr "路径结尾ä¸è¦åŠ  '/' 。"
msgid "Non-fatal errors - *we highly recommended enabling this*"
-msgstr "éžè‡´å‘½æ€§é”™è¯¯ - * å»ºè®®å¼€å¯ *"
+msgstr "éžè‡´å‘½æ€§é”™è¯¯ - * å¼ºçƒˆå»ºè®®å¼€å¯ *"
msgid ""
"Number of seconds after which a socket times out if no data is received."
-msgstr "socket连接未收到数æ®çš„超时时间。"
+msgstr "Socket 连接未收到数æ®çš„超时时间。"
msgid ""
"Number of seconds after which an open connection will no longer be reused."
-msgstr "一个开放的连接ä¸å†é‡å¤ä½¿ç”¨çš„超时时间。"
+msgstr "开放的连接ä¸å†é‡å¤ä½¿ç”¨çš„超时时间。"
msgid ""
"Only when using 'external filters', Privoxy has to create temporary files."
-msgstr "åªæœ‰ä½¿ç”¨å¤–置规则时,privoxyæ‰éœ€è¦åˆ›å»ºä¸´æ—¶æ–‡ä»¶ã€‚"
+msgstr "åªæœ‰ä½¿ç”¨å¤–置规则时,Privoxy æ‰éœ€è¦åˆ›å»ºä¸´æ—¶æ–‡ä»¶ã€‚"
msgid "Please install current version !"
-msgstr ""
+msgstr "请安装当å‰ç‰ˆæœ¬ï¼"
msgid "Please press [Read] button"
-msgstr "请点击[读å–]按钮"
+msgstr "请点击 [读å–] 按钮"
msgid "Please read Privoxy manual for details!"
-msgstr "请阅读Privoxy手册以了解详情ï¼"
+msgstr "请阅读 Privoxy 手册以了解详情ï¼"
msgid "Please update to the current version!"
msgstr "请å‡çº§åˆ°å½“å‰ç‰ˆæœ¬ï¼"
@@ -244,16 +244,16 @@ msgid ""
"configuration, help and logging. This section of the configuration file "
"tells Privoxy where to find those other files."
msgstr ""
-"Privoxyå¯ä»¥ä½¿ç”¨å…¶ä»–一些文件用于附加设置,帮助和日志。这个区域用æ¥å‘Šè¯‰Privoxy"
-"从哪里找到这些文件。"
+"Privoxy å¯ä»¥ä½¿ç”¨å…¶ä»–一些文件用于附加设置,帮助和日志。这个区域用æ¥å‘Šè¯‰ "
+"Privoxy 从哪里找到这些文件。"
msgid ""
"Privoxy is a non-caching web proxy with advanced filtering capabilities for "
"enhancing privacy, modifying web page data and HTTP headers, controlling "
"access, and removing ads and other obnoxious Internet junk."
msgstr ""
-"Privoxy是一个无缓存的网络代ç†ï¼Œå…·æœ‰é«˜çº§è¿‡æ»¤åŠŸèƒ½ï¼Œèƒ½å¤Ÿä¿®æ”¹ç½‘页数æ®å’ŒHTTP头,控"
-"制访问,移除广告等。"
+"Privoxy 是一个无缓存的网络代ç†ï¼Œå…·æœ‰é«˜çº§è¿‡æ»¤åŠŸèƒ½ï¼Œèƒ½å¤Ÿä¿®æ”¹ç½‘页数æ®å’Œ HTTP 请"
+"求头,控制访问,移除广告等。"
msgid "Read / Reread log file"
msgstr "读å–/刷新日志文件"
@@ -265,13 +265,13 @@ msgid "Show each connection status"
msgstr "显示æ¯ä¸ªè¿žæŽ¥çš„状æ€"
msgid "Show header parsing"
-msgstr "Show header parsing"
+msgstr "显示请求头 解æž"
msgid "Software package '%s' is not installed."
-msgstr ""
+msgstr "软件包 '%s' 未安装"
msgid "Software package '%s' is outdated."
-msgstr ""
+msgstr "软件包 '%s' 已过时"
msgid "Start"
msgstr "å¯åŠ¨"
@@ -289,7 +289,7 @@ msgid "Syntax:"
msgstr "æ ¼å¼:"
msgid "Syntax: Client header names delimited by spaces."
-msgstr "æ ¼å¼: Client header names delimited by spaces."
+msgstr "æ ¼å¼: 由空格分隔的客户端请求头å称。"
msgid "Syntax: target_pattern http_parent[:port]"
msgstr "æ ¼å¼: target_pattern http_parent[:port]"
@@ -298,7 +298,7 @@ msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]"
msgstr "æ ¼å¼: target_pattern socks_proxy[:port] http_parent[:port]"
msgid "System"
-msgstr ""
+msgstr "系统"
msgid ""
"The actions file(s) to use. Multiple actionsfile lines are permitted, and "
@@ -307,12 +307,12 @@ msgstr "所使用的规则文件。å…许并且推è使用多个规则文件。
msgid ""
"The address and TCP port on which Privoxy will listen for client requests."
-msgstr "Privoxy接收客户端请求时监å¬çš„地å€å’ŒTCP端å£ã€‚"
+msgstr "Privoxy 接收客户端请求时监å¬çš„地å€å’Œ TCP 端å£ã€‚"
msgid ""
"The compression level that is passed to the zlib library when compressing "
"buffered content."
-msgstr "使用zlib压缩缓冲内容时的压缩级别。"
+msgstr "使用 zlib 压缩缓冲内容时的压缩级别。"
msgid ""
"The directory where all logging takes place (i.e. where the logfile is "
@@ -334,14 +334,14 @@ msgid "The log file to use. File name, relative to log directory."
msgstr "日志文件å称,与日志路径相对。"
msgid "The order in which client headers are sorted before forwarding them."
-msgstr "转å‘æ•°æ®å‰ï¼Œclient headers的排åºã€‚"
+msgstr "转å‘æ•°æ®å‰ï¼Œå®¢æˆ·ç«¯è¯·æ±‚头的排åºã€‚"
msgid ""
"The status code Privoxy returns for pages blocked with +handle-as-empty-"
"document."
msgstr ""
-"当页é¢å› ä¸ºhandle-as-empty-document规则被阻止时返回的状æ€ç ï¼ˆé€‰ä¸Šä¸º200 OK,ä¸"
-"选上为403 Forbidden)"
+"当页é¢å› ä¸º handle-as-empty-document 规则被阻止时返回的状æ€ç ï¼ˆé€‰ä¸Šä¸º 200 OK,"
+"ä¸é€‰ä¸Šä¸º 403 Forbidden)"
msgid ""
"The trust mechanism is an experimental feature for building white-lists and "
@@ -361,19 +361,20 @@ msgstr "这个选项仅用于调试,开å¯åŽä¼šæžå¤§åœ°é™ä½Žæ€§èƒ½ã€‚"
msgid ""
"This option will be removed in future releases as it has been obsoleted by "
"the more general header taggers."
-msgstr "这个选项在以åŽçš„版本中将被移除,因为它被header taggers所å–代了。"
+msgstr "这个选项在以åŽçš„版本中将被移除,因为它被 header taggers 所å–代了。"
msgid ""
"This tab controls the security-relevant aspects of Privoxy's configuration."
-msgstr "这个标签用于设置与安全相关的Privoxy选项。"
+msgstr "这个标签用于设置与安全相关的 Privoxy 选项。"
msgid ""
"Through which SOCKS proxy (and optionally to which parent HTTP proxy) "
"specific requests should be routed."
-msgstr "指定的请求应该通过哪一个SOCKS代ç†ï¼ˆå¹¶ä¸”通过哪一个HTTP父代ç†ï¼Œå¯é€‰ï¼‰"
+msgstr ""
+"指定的请求应该通过哪一个 SOCKS 代ç†ï¼ˆå¹¶ä¸”通过哪一个 HTTP 父代ç†ï¼Œå¯é€‰ï¼‰"
msgid "To which parent HTTP proxy specific requests should be routed."
-msgstr "请求应转å‘至哪一个父级HTTP代ç†ã€‚"
+msgstr "请求应转å‘至哪一个父级 HTTP 代ç†ã€‚"
msgid "User customizations"
msgstr "用户自定义"
@@ -382,10 +383,10 @@ msgid "Value is not a number"
msgstr "输入值ä¸æ˜¯æ•°å­—"
msgid "Value not between 0 and 300"
-msgstr ""
+msgstr "输入值ä¸åœ¨0å’Œ300之间"
msgid "Value not between 0 and 9"
-msgstr "输入值ä¸åœ¨0å’Œ9之间。"
+msgstr "输入值ä¸åœ¨0å’Œ9之间"
msgid "Value not between 1 and 4096"
msgstr "输入值ä¸åœ¨1å’Œ4096之间"
@@ -408,7 +409,7 @@ msgstr "被拦截的请求是å¦åº”被当作有效的。"
msgid ""
"Whether or not Privoxy recognizes special HTTP headers to change toggle "
"state."
-msgstr "Privoxy是å¦è¯†åˆ«ç‰¹æ®Šçš„HTTP头以切æ¢çŠ¶æ€ã€‚"
+msgstr "Privoxy 是å¦è¯†åˆ«ç‰¹æ®Šçš„ HTTP 请求头以切æ¢çŠ¶æ€ã€‚"
msgid "Whether or not buffered content is compressed before delivery."
msgstr "缓冲内容在传递之å‰æ˜¯å¦åŽ‹ç¼©ã€‚"
@@ -422,7 +423,7 @@ msgid "Whether or not pipelined requests should be served."
msgstr "是å¦å¤„ç†ç®¡é“化的请求。"
msgid "Whether or not proxy authentication through Privoxy should work."
-msgstr "是å¦å¯ä»¥é€šè¿‡Privoxy进行代ç†éªŒè¯ã€‚"
+msgstr "是å¦å¯ä»¥é€šè¿‡ Privoxy 进行代ç†éªŒè¯ã€‚"
msgid "Whether or not the web-based actions file editor may be used."
msgstr "是å¦ä½¿ç”¨åŸºäºŽç½‘页的规则编辑器。"
@@ -431,11 +432,11 @@ msgid "Whether or not the web-based toggle feature may be used."
msgstr "是å¦å¯ç”¨åŸºäºŽç½‘页的切æ¢åŠŸèƒ½ã€‚"
msgid "Whether requests to Privoxy's CGI pages can be blocked or redirected."
-msgstr "访问Privoxy CGI页é¢çš„请求是å¦å¯ä»¥è¢«æ‹¦æˆªæˆ–é‡å®šå‘。"
+msgstr "访问 Privoxy CGI 页é¢çš„请求是å¦å¯ä»¥è¢«æ‹¦æˆªæˆ–é‡å®šå‘。"
msgid ""
"Whether the CGI interface should stay compatible with broken HTTP clients."
-msgstr "CGIç•Œé¢æ˜¯å¦åº”兼容过时的HTTP客户端。"
+msgstr "CGI ç•Œé¢æ˜¯å¦åº”兼容过时的HTTP客户端。"
msgid "Whether to run only one server thread."
msgstr "是å¦åªè¿è¡Œä¸€ä¸ªæœåŠ¡çº¿ç¨‹ã€‚"
diff --git a/applications/luci-app-qos/po/ja/qos.po b/applications/luci-app-qos/po/ja/qos.po
index deeb23f60..a81a6e1ad 100644
--- a/applications/luci-app-qos/po/ja/qos.po
+++ b/applications/luci-app-qos/po/ja/qos.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-25 22:10+0100\n"
-"PO-Revision-Date: 2011-10-28 11:02+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2016-12-22 01:54+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.4\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "Calculate overhead"
msgstr "オーãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã‚’考慮ã™ã‚‹"
@@ -23,7 +23,7 @@ msgid "Classification group"
msgstr "区分グループ"
msgid "Comment"
-msgstr ""
+msgstr "コメント"
msgid "Destination host"
msgstr "宛先ホスト"
@@ -50,7 +50,7 @@ msgid "Protocol"
msgstr "プロトコル"
msgid "QoS"
-msgstr ""
+msgstr "QoS"
msgid "Quality of Service"
msgstr "Quality of Service"
diff --git a/applications/luci-app-radicale/po/pt-br/radicale.po b/applications/luci-app-radicale/po/pt-br/radicale.po
new file mode 100644
index 000000000..67bf58690
--- /dev/null
+++ b/applications/luci-app-radicale/po/pt-br/radicale.po
@@ -0,0 +1,432 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid ""
+"'AUTO' selects the highest protocol version that client and server support."
+msgstr "'AUTO' seleciona a versão mais alto protocolo que o cliente e o servidor suportar."
+
+msgid ""
+"'Hostname:Port' or 'IPv4:Port' or '[IPv6]:Port' Radicale should listen on"
+msgstr "'NomeDoEquipamento:porta' ou 'IPv4:Porta' ou '[IPv6]:Porta' em que o Radicale deve escutar"
+
+msgid "AUTO"
+msgstr "AUTO"
+
+msgid "Access-Control-Allow-Headers"
+msgstr "Access-Control-Allow-Headers"
+
+msgid "Access-Control-Allow-Methods"
+msgstr "Access-Control-Allow-Methods"
+
+msgid "Access-Control-Allow-Origin"
+msgstr "Access-Control-Allow-Origin"
+
+msgid "Access-Control-Expose-Headers"
+msgstr "Access-Control-Expose-Headers"
+
+msgid "Additional HTTP headers"
+msgstr "Additional HTTP headers"
+
+msgid "Address:Port"
+msgstr "Endereço: Porta"
+
+#, fuzzy
+msgid "Authentication"
+msgstr "Autenticação"
+
+msgid ""
+"Authentication login is matched against the 'user' key, and collection's "
+"path is matched against the 'collection' key."
+msgstr "O nome do usuário na autenticação é comparado com a chave do 'user', e o caminho da coleção é comparado com a chave 'coleção'."
+
+msgid "Authentication method"
+msgstr "Método de autenticação"
+
+msgid "Authentication method to allow access to Radicale server."
+msgstr "Método de autenticação para permitir o acesso ao servidor Radicale."
+
+msgid "Auto-start"
+msgstr "Iniciar automaticamente"
+
+msgid "Boot delay"
+msgstr "Atraso na iniciação"
+
+msgid "CalDAV/CardDAV"
+msgstr "CalDAV/CardDAV"
+
+msgid ""
+"Calendars and address books are available for both local and remote access, "
+"possibly limited through authentication policies."
+msgstr "Agendas e contados estão disponíveis tanto para acesso local como remoto, possivelmente limitado através das políticas de autenticação."
+
+msgid "Certificate file"
+msgstr "Arquivo do certificado"
+
+msgid ""
+"Change here the encoding Radicale will use instead of 'UTF-8' for responses "
+"to the client and/or to store data inside collections."
+msgstr "Mude aqui a codificação que o Radicale usará em vez de 'UTF-8' para respostas a clientes ou para armazenar dados dentro das coleções."
+
+msgid "Ciphers"
+msgstr "Cifras"
+
+msgid "Console Log level"
+msgstr "Nível de detalhamento dos registros (log)"
+
+msgid "Control the access to data collections."
+msgstr "Controlar o acesso às coleções de dados."
+
+#, fuzzy
+msgid "Critical"
+msgstr "Crítico"
+
+msgid ""
+"Cross-origin resource sharing (CORS) is a mechanism that allows restricted "
+"resources (e.g. fonts, JavaScript, etc.) on a web page to be requested from "
+"another domain outside the domain from which the resource originated."
+msgstr "O compartilhamento de recursos de origem cruzada (CORS) é um mecanismo que permite que os recursos de acesso restrito (por exemplo, fontes, JavaScript, etc.) em uma página web ser solicitado de outro domínio fora do domínio a partir do qual o recurso foi originado."
+
+msgid "Custom"
+msgstr "Personalizadas"
+
+msgid "Database"
+msgstr "Banco de Dados"
+
+#, fuzzy
+msgid "Debug"
+msgstr "Depuração"
+
+msgid "Delay (in seconds) during system boot before Radicale start"
+msgstr "Atraso (em segundos) durante a inicialização do sistema antes do Radicale iniciar"
+
+#, fuzzy
+msgid "Directory"
+msgstr "Diretório"
+
+msgid "Directory not exists/found !"
+msgstr "O diretório não foi encontrado!"
+
+msgid "Directory required !"
+msgstr "O diretório é necessário!"
+
+msgid "Directory where the rotating log-files are stored"
+msgstr "O diretório onde os registros(log) rotativos são armazenados"
+
+msgid "During delay ifup-events are not monitored !"
+msgstr "Durante a espera, eventos ifup não serão monitorados!"
+
+msgid "Enable HTTPS"
+msgstr "Ativar HTTPS"
+
+msgid ""
+"Enable/Disable auto-start of Radicale on system start-up and interface events"
+msgstr "Ativar/Desativar iniciação automática do Radicale na iniciação do sistema e em eventos de interface"
+
+msgid "Encoding"
+msgstr "Codificação"
+
+msgid "Encoding for responding requests."
+msgstr "Codificação para responder pedidos."
+
+msgid "Encoding for storing local collections."
+msgstr "Codificação para armazenar coleções locais."
+
+msgid "Encryption method"
+msgstr "Método de criptografia"
+
+#, fuzzy
+msgid "Error"
+msgstr "Erro"
+
+msgid "File '%s' not found !"
+msgstr "Arquivo '%s' não encontrado!"
+
+msgid "File Log level"
+msgstr "Nível de detalhamento dos registos(log) em arquivos"
+
+msgid "File not found !"
+msgstr "Arquivo não encontrado!"
+
+msgid "File-system"
+msgstr "Sistema de arquivos"
+
+msgid ""
+"For example, for the 'user' key, '.+' means 'authenticated user' and '.*' "
+"means 'anybody' (including anonymous users)."
+msgstr "Por exemplo, para a chave 'user', '.+' Significa 'usuário autenticado' e '.*' Significa 'qualquer um' (incluindo usuários anônimos)."
+
+msgid "Full access for Owner only"
+msgstr "Acesso completo somente para o proprietário"
+
+msgid "Full access for authenticated Users"
+msgstr "Acesso completo para usuários autenticados"
+
+msgid "Full access for everybody (including anonymous)"
+msgstr "Acesso completo para todos (incluindo anônimo)"
+
+msgid "Full path and file name of certificate"
+msgstr "Caminho completo e nome do arquivo do certificado"
+
+msgid "Full path and file name of private key"
+msgstr "Caminho e arquivo nome completo da chave privada"
+
+#, fuzzy
+msgid "Info"
+msgstr "Informações"
+
+msgid "Keep in mind to use the correct hashing algorithm !"
+msgstr "Fique atento para usar o algoritmo de resumo digital(hash) correto!"
+
+msgid "Leading or ending slashes are trimmed from collection's path."
+msgstr "Barras inicias e finais serão removidas do caminho da coleção."
+
+msgid "Log-backup Count"
+msgstr "Contagem Registro(log) de Backup"
+
+msgid "Log-file Viewer"
+msgstr "Visualizador de Arquivo de Registros(log)"
+
+msgid "Log-file directory"
+msgstr "Diretório do arquivo de registros(log)"
+
+msgid "Log-file size"
+msgstr "Tamanho do arquivo de registros(log)"
+
+#, fuzzy
+msgid "Logging"
+msgstr "Registrando os eventos"
+
+msgid "Logon message"
+msgstr "Mensagem de entrada"
+
+msgid "Maximum size of each rotation log-file."
+msgstr "Tamanho máximo para a rotação do arquivo de registros(log)"
+
+msgid "Message displayed in the client when a password is needed."
+msgstr "Mensagem exibida para o cliente quando uma senha é necessária."
+
+#, fuzzy
+msgid "NOT installed"
+msgstr "NÃO instalado"
+
+#, fuzzy
+msgid "None"
+msgstr "Nada"
+
+msgid "Number of backup files of log to create."
+msgstr "Número de backups dos arquivos de registros(log) a serem criados."
+
+msgid "OPTIONAL: See python's ssl module for available ciphers"
+msgstr "Opcional: veja o módulo SSL do python para conhecer as cifras disponíveis"
+
+msgid "One or more missing/invalid fields on tab"
+msgstr "Um ou campos inválidos/ausentes na aba"
+
+msgid "Owner allow write, authenticated users allow read"
+msgstr "O proprietário pode escrever, os usuários autenticados podem ler"
+
+msgid "Path/File required !"
+msgstr "O caminho/arquivo é necessário!"
+
+msgid ""
+"Place here the 'user:password' pairs for your users which should have access "
+"to Radicale."
+msgstr "Coloque aqui os pares 'usuário:senha' para os seus usuários que devem ter acesso a Radicale."
+
+msgid "Please install current version !"
+msgstr "Por favor, instale a versão atual!"
+
+msgid "Please press [Reload] button below to reread the file."
+msgstr "Por favor, pressione o botão [Recarregar] abaixo para reler o arquivo."
+
+msgid "Please update to current version !"
+msgstr "Por favor, atualize para a versão atual!"
+
+msgid "Port numbers below 1024 (Privileged ports) are not supported"
+msgstr "Os porta abaixo de 1024 (portas privilegiadas) não são suportadas"
+
+msgid "Private key file"
+msgstr "Arquivo da chave privada"
+
+msgid "Radicale CalDAV/CardDAV Server"
+msgstr "Radicale Servidor CalDAV/CardDAV"
+
+msgid "Radicale uses '/etc/radicale/rights' as regexp-based file."
+msgstr "Radicale usa o '/etc/radicale/rights' como arquivo baseado em expressão regular."
+
+msgid "Radicale uses '/etc/radicale/users' as htpasswd file."
+msgstr "Radicale usa o '/etc/radicale/users' como o arquivo htpasswd."
+
+msgid "Read only!"
+msgstr "Somente leitura!"
+
+msgid "RegExp file"
+msgstr "Arquivo de expressões regulares"
+
+msgid "Reload"
+msgstr "Recarregar"
+
+msgid "Response Encoding"
+msgstr "Codificação da Resposta"
+
+msgid "Rights"
+msgstr "Direitos"
+
+msgid "Rights are based on a regexp-based file"
+msgstr "Os direitos são baseados em um arquivo baseado em expressões regulares"
+
+msgid "Rights backend"
+msgstr "Serviço de Direitos"
+
+msgid "SHA-1"
+msgstr "SHA-1"
+
+msgid "SSL Protocol"
+msgstr "Protocolo SSL"
+
+#, fuzzy
+msgid "Save"
+msgstr "Salvar"
+
+msgid "Section names are only used for naming the rule."
+msgstr "Os nomes das seção são usados ​​apenas para nomear a regra."
+
+#, fuzzy
+msgid "Server"
+msgstr "Servidor"
+
+msgid "Setting this parameter to '0' will disable rotation of log-file."
+msgstr "Definindo este parâmetro para '0' irá desativar a rotação dos arquivos de registros(log)."
+
+msgid "Software package '%s' is not installed."
+msgstr "O pacote de software '%s' não está instalado."
+
+msgid "Software package '%s' is outdated."
+msgstr "O pacote '%' está desatualizado."
+
+#, fuzzy
+msgid "Software update required"
+msgstr "A atualização do software é necessária"
+
+#, fuzzy
+msgid "Start"
+msgstr "Iniciar"
+
+#, fuzzy
+msgid "Start / Stop"
+msgstr "Iniciar / Parar"
+
+msgid "Start/Stop Radicale server"
+msgstr "Iniciar/Parar o servidor Radicale"
+
+msgid "Storage"
+msgstr "Armazenamento"
+
+msgid "Storage Encoding"
+msgstr "Codificação do Armazenamento"
+
+msgid "Storage backend"
+msgstr "Serviço de armazenamento"
+
+msgid "Syslog Log level"
+msgstr "Nível de detalhamento do serviço de registro (syslog)"
+
+#, fuzzy
+msgid "System"
+msgstr "Sistema"
+
+msgid ""
+"The Radicale Project is a complete CalDAV (calendar) and CardDAV (contact) "
+"server solution."
+msgstr "O Projeto Radicale é uma solução completa de CalDAV (agenda) e CardDAV (contatos)."
+
+msgid ""
+"They can be viewed and edited by calendar and contact clients on mobile "
+"phones or computers."
+msgstr "Eles podem ser visualizados e editados pelos clientes de agenda e de contatos em telefones celulares ou computadores."
+
+msgid "To edit the file follow this link!"
+msgstr "Para editar o arquivo, siga este link!"
+
+msgid "To view latest log file follow this link!"
+msgstr "Para visualizar mais recente arquivo de registros(log), siga este link!"
+
+msgid "Value is not a number"
+msgstr "O valor não é um número"
+
+msgid "Value is not an Integer >= 0 !"
+msgstr "O valor não é um número natural (>=0)!"
+
+msgid "Value not between 0 and 300"
+msgstr "Valor não está entre 0 e 300"
+
+msgid "Value required ! Integer >= 0 !"
+msgstr "O valor é necessário! Número natural (>=0)!"
+
+#, fuzzy
+msgid "Version"
+msgstr "Versão"
+
+#, fuzzy
+msgid "Version Information"
+msgstr "Informação da Versão"
+
+msgid ""
+"WARNING: Only 'File-system' is documented and tested by Radicale development"
+msgstr "AVISO: Apenas 'Sistema de Arquivos "está documentado e testado pelo desenvolvimento do Radicale"
+
+#, fuzzy
+msgid "Warning"
+msgstr "Alerta"
+
+msgid ""
+"You can also get groups from the user regex in the collection with {0}, {1}, "
+"etc."
+msgstr "Você também pode obter grupos a partir da expressão regular do usuário na coleção com {0}, {1} , etc."
+
+msgid ""
+"You can use Python's ConfigParser interpolation values %(login)s and "
+"%(path)s."
+msgstr "Você pode usar a interpolação de valores %(login)s e %(path)s do ConfigParser do Python."
+
+msgid "crypt"
+msgstr "cifrar"
+
+msgid "custom"
+msgstr "personalizado"
+
+msgid "htpasswd file"
+msgstr "arquivo htpasswd"
+
+#, fuzzy
+msgid "installed"
+msgstr "instalado"
+
+msgid "no valid path given!"
+msgstr "Nenhum caminho válido foi informado!"
+
+#, fuzzy
+msgid "or higher"
+msgstr "ou maior"
+
+msgid "plain"
+msgstr "plano"
+
+#, fuzzy
+msgid "required"
+msgstr "necessário"
+
+msgid "salted SHA-1"
+msgstr "SHA-1 com salto"
+
diff --git a/applications/luci-app-samba/luasrc/model/cbi/samba.lua b/applications/luci-app-samba/luasrc/model/cbi/samba.lua
index 721191a7e..68a5b3a9b 100644
--- a/applications/luci-app-samba/luasrc/model/cbi/samba.lua
+++ b/applications/luci-app-samba/luasrc/model/cbi/samba.lua
@@ -13,9 +13,10 @@ s:tab("template", translate("Edit Template"))
s:taboption("general", Value, "name", translate("Hostname"))
s:taboption("general", Value, "description", translate("Description"))
s:taboption("general", Value, "workgroup", translate("Workgroup"))
-s:taboption("general", Value, "homes", translate("Share home-directories"),
+h = s:taboption("general", Flag, "homes", translate("Share home-directories"),
translate("Allow system users to reach their home directories via " ..
"network shares"))
+h.rmempty = false
tmpl = s:taboption("template", Value, "_tmpl",
translate("Edit the template that is used for generating the samba configuration."),
@@ -53,6 +54,12 @@ ro.rmempty = false
ro.enabled = "yes"
ro.disabled = "no"
+br = s:option(Flag, "browseable", translate("Browseable"))
+br.rmempty = false
+br.default = "yes"
+br.enabled = "yes"
+br.disabled = "no"
+
go = s:option(Flag, "guest_ok", translate("Allow guests"))
go.rmempty = false
go.enabled = "yes"
diff --git a/applications/luci-app-samba/po/ca/samba.po b/applications/luci-app-samba/po/ca/samba.po
index 0668b1b14..fadcbdfdb 100644
--- a/applications/luci-app-samba/po/ca/samba.po
+++ b/applications/luci-app-samba/po/ca/samba.po
@@ -26,6 +26,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Usuaris permesos"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Crea màscara"
diff --git a/applications/luci-app-samba/po/cs/samba.po b/applications/luci-app-samba/po/cs/samba.po
index fefb7ff87..4a00124fb 100644
--- a/applications/luci-app-samba/po/cs/samba.po
+++ b/applications/luci-app-samba/po/cs/samba.po
@@ -22,6 +22,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Povolení uživatelé"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Vytvořit masku"
diff --git a/applications/luci-app-samba/po/de/samba.po b/applications/luci-app-samba/po/de/samba.po
index a5ceb056c..1bcac0c9b 100644
--- a/applications/luci-app-samba/po/de/samba.po
+++ b/applications/luci-app-samba/po/de/samba.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Legitimierte Benutzer"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Berechtigungsmaske für neue Dateien"
diff --git a/applications/luci-app-samba/po/el/samba.po b/applications/luci-app-samba/po/el/samba.po
index 7cc722d59..9a15ad1e0 100644
--- a/applications/luci-app-samba/po/el/samba.po
+++ b/applications/luci-app-samba/po/el/samba.po
@@ -22,6 +22,9 @@ msgstr ""
msgid "Allowed users"
msgstr ""
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr ""
diff --git a/applications/luci-app-samba/po/en/samba.po b/applications/luci-app-samba/po/en/samba.po
index f524c1448..94cfdb516 100644
--- a/applications/luci-app-samba/po/en/samba.po
+++ b/applications/luci-app-samba/po/en/samba.po
@@ -22,6 +22,9 @@ msgstr "Allow system users to reach their home directories via network shares"
msgid "Allowed users"
msgstr "Allowed users"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Create mask"
diff --git a/applications/luci-app-samba/po/es/samba.po b/applications/luci-app-samba/po/es/samba.po
index 950a81797..c14ebd2c3 100644
--- a/applications/luci-app-samba/po/es/samba.po
+++ b/applications/luci-app-samba/po/es/samba.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Usuarios permitidos"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Crear máscara"
diff --git a/applications/luci-app-samba/po/fr/samba.po b/applications/luci-app-samba/po/fr/samba.po
index 88779009c..ff040b50d 100644
--- a/applications/luci-app-samba/po/fr/samba.po
+++ b/applications/luci-app-samba/po/fr/samba.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Utilisateurs autorisés"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Maque de création"
diff --git a/applications/luci-app-samba/po/he/samba.po b/applications/luci-app-samba/po/he/samba.po
index dd21a4a54..620f56cf8 100644
--- a/applications/luci-app-samba/po/he/samba.po
+++ b/applications/luci-app-samba/po/he/samba.po
@@ -17,6 +17,9 @@ msgstr ""
msgid "Allowed users"
msgstr ""
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr ""
diff --git a/applications/luci-app-samba/po/hu/samba.po b/applications/luci-app-samba/po/hu/samba.po
index 64d1e22a5..38a9a0843 100644
--- a/applications/luci-app-samba/po/hu/samba.po
+++ b/applications/luci-app-samba/po/hu/samba.po
@@ -22,6 +22,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Engedélyezett felhasználók"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Létrehozási maszk"
diff --git a/applications/luci-app-samba/po/it/samba.po b/applications/luci-app-samba/po/it/samba.po
index 464578251..a2bb9b673 100644
--- a/applications/luci-app-samba/po/it/samba.po
+++ b/applications/luci-app-samba/po/it/samba.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Utenti ammessi"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Mask di creazione dei file"
diff --git a/applications/luci-app-samba/po/ja/samba.po b/applications/luci-app-samba/po/ja/samba.po
index c5275075a..9f338defb 100644
--- a/applications/luci-app-samba/po/ja/samba.po
+++ b/applications/luci-app-samba/po/ja/samba.po
@@ -22,6 +22,9 @@ msgstr "sambaを介ã—ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ã‚¢ã‚¯ã
msgid "Allowed users"
msgstr "許å¯ã•ã‚ŒãŸãƒ¦ãƒ¼ã‚¶ãƒ¼"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "マスクã®ä½œæˆ"
diff --git a/applications/luci-app-samba/po/ms/samba.po b/applications/luci-app-samba/po/ms/samba.po
index e29133e1b..de4ed7c36 100644
--- a/applications/luci-app-samba/po/ms/samba.po
+++ b/applications/luci-app-samba/po/ms/samba.po
@@ -16,6 +16,9 @@ msgstr ""
msgid "Allowed users"
msgstr ""
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr ""
diff --git a/applications/luci-app-samba/po/no/samba.po b/applications/luci-app-samba/po/no/samba.po
index 1c5c8077f..7059d7748 100644
--- a/applications/luci-app-samba/po/no/samba.po
+++ b/applications/luci-app-samba/po/no/samba.po
@@ -13,6 +13,9 @@ msgstr "Tillat systembrukere å nå sine hjemmekataloger via nettverks mapper."
msgid "Allowed users"
msgstr "Tillatte brukere"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Opprett Maske"
diff --git a/applications/luci-app-samba/po/pl/samba.po b/applications/luci-app-samba/po/pl/samba.po
index 74826227b..bf54e78c3 100644
--- a/applications/luci-app-samba/po/pl/samba.po
+++ b/applications/luci-app-samba/po/pl/samba.po
@@ -23,6 +23,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Użytkownicy z prawem dostępu"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Utwórz maskę"
diff --git a/applications/luci-app-samba/po/pt-br/samba.po b/applications/luci-app-samba/po/pt-br/samba.po
index a7531522d..43ea3b9b9 100644
--- a/applications/luci-app-samba/po/pt-br/samba.po
+++ b/applications/luci-app-samba/po/pt-br/samba.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Usuários permitidos"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Máscara de criação"
diff --git a/applications/luci-app-samba/po/pt/samba.po b/applications/luci-app-samba/po/pt/samba.po
index 4c5a2cd24..6d4f00386 100644
--- a/applications/luci-app-samba/po/pt/samba.po
+++ b/applications/luci-app-samba/po/pt/samba.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Utilizadores Permitidos"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Criar Máscara"
diff --git a/applications/luci-app-samba/po/ro/samba.po b/applications/luci-app-samba/po/ro/samba.po
index 4bc341557..78c55e4eb 100644
--- a/applications/luci-app-samba/po/ro/samba.po
+++ b/applications/luci-app-samba/po/ro/samba.po
@@ -23,6 +23,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Utilizatori acceptati"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Creaza masca"
diff --git a/applications/luci-app-samba/po/ru/samba.po b/applications/luci-app-samba/po/ru/samba.po
index 82906e36e..4823dc46d 100644
--- a/applications/luci-app-samba/po/ru/samba.po
+++ b/applications/luci-app-samba/po/ru/samba.po
@@ -25,6 +25,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Разрешённые пользователи"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Создать маÑку"
diff --git a/applications/luci-app-samba/po/sk/samba.po b/applications/luci-app-samba/po/sk/samba.po
index 66ec9e030..2c511c815 100644
--- a/applications/luci-app-samba/po/sk/samba.po
+++ b/applications/luci-app-samba/po/sk/samba.po
@@ -17,6 +17,9 @@ msgstr ""
msgid "Allowed users"
msgstr ""
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr ""
diff --git a/applications/luci-app-samba/po/sv/samba.po b/applications/luci-app-samba/po/sv/samba.po
index b83dec506..549a69c5c 100644
--- a/applications/luci-app-samba/po/sv/samba.po
+++ b/applications/luci-app-samba/po/sv/samba.po
@@ -18,6 +18,9 @@ msgstr "Tillåt systemanvändare att nå deras hem-mappar via nätverksdelningar
msgid "Allowed users"
msgstr "Tillåtna användare"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Skapa mask"
diff --git a/applications/luci-app-samba/po/templates/samba.pot b/applications/luci-app-samba/po/templates/samba.pot
index d91400b0c..9e4ab7ff1 100644
--- a/applications/luci-app-samba/po/templates/samba.pot
+++ b/applications/luci-app-samba/po/templates/samba.pot
@@ -10,6 +10,9 @@ msgstr ""
msgid "Allowed users"
msgstr ""
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr ""
diff --git a/applications/luci-app-samba/po/tr/samba.po b/applications/luci-app-samba/po/tr/samba.po
index fda2f6e26..486768f2e 100644
--- a/applications/luci-app-samba/po/tr/samba.po
+++ b/applications/luci-app-samba/po/tr/samba.po
@@ -17,6 +17,9 @@ msgstr ""
msgid "Allowed users"
msgstr ""
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr ""
diff --git a/applications/luci-app-samba/po/uk/samba.po b/applications/luci-app-samba/po/uk/samba.po
index 6f2a92091..077315e21 100644
--- a/applications/luci-app-samba/po/uk/samba.po
+++ b/applications/luci-app-samba/po/uk/samba.po
@@ -23,6 +23,9 @@ msgstr ""
msgid "Allowed users"
msgstr "Дозволені кориÑтувачі"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "Створити маÑку"
diff --git a/applications/luci-app-samba/po/vi/samba.po b/applications/luci-app-samba/po/vi/samba.po
index 4e5638da2..c5f6e02df 100644
--- a/applications/luci-app-samba/po/vi/samba.po
+++ b/applications/luci-app-samba/po/vi/samba.po
@@ -28,6 +28,9 @@ msgstr ""
msgid "Allowed users"
msgstr "NgÆ°á»i sá»­ dụng được cho phép"
+msgid "Browseable"
+msgstr ""
+
#, fuzzy
msgid "Create mask"
msgstr "Tạo Mask"
diff --git a/applications/luci-app-samba/po/zh-cn/samba.po b/applications/luci-app-samba/po/zh-cn/samba.po
index 4ff671b85..2294b611a 100644
--- a/applications/luci-app-samba/po/zh-cn/samba.po
+++ b/applications/luci-app-samba/po/zh-cn/samba.po
@@ -22,6 +22,9 @@ msgstr "å…许系统用户通过网络共享访问他们的主目录"
msgid "Allowed users"
msgstr "å…许用户"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "创建æƒé™"
diff --git a/applications/luci-app-samba/po/zh-tw/samba.po b/applications/luci-app-samba/po/zh-tw/samba.po
index 6ec99ee20..bfa2d7d6d 100644
--- a/applications/luci-app-samba/po/zh-tw/samba.po
+++ b/applications/luci-app-samba/po/zh-tw/samba.po
@@ -20,6 +20,9 @@ msgstr "å…許系統使用者é€éŽç¶²è·¯åˆ†äº«å®¶ç›®éŒ„"
msgid "Allowed users"
msgstr "å…許使用者"
+msgid "Browseable"
+msgstr ""
+
msgid "Create mask"
msgstr "建立權é™"
@@ -70,7 +73,9 @@ msgid ""
"your samba configuration will be generated. Values enclosed by pipe symbols "
"('|') should not be changed. They get their values from the 'General "
"Settings' tab."
-msgstr "建立Samba設定的 \"/etc/samba/smb.conf.template\" 檔案內容。被('|')包åœçš„值å¯ä»¥åœ¨åŸºæœ¬è¨­å®šä¸­é€²è¡Œè¨­å®š"
+msgstr ""
+"建立Samba設定的 \"/etc/samba/smb.conf.template\" 檔案內容。被('|')包åœçš„值å¯"
+"以在基本設定中進行設定"
msgid "Workgroup"
msgstr "工作群組"
diff --git a/applications/luci-app-shadowsocks-libev/po/pt-br/shadowsocks-libev.po b/applications/luci-app-shadowsocks-libev/po/pt-br/shadowsocks-libev.po
new file mode 100644
index 000000000..f2b18e374
--- /dev/null
+++ b/applications/luci-app-shadowsocks-libev/po/pt-br/shadowsocks-libev.po
@@ -0,0 +1,97 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "Access Control"
+msgstr "Controle de Acesso"
+
+msgid "Allow all except listed"
+msgstr "Permitir todos, exceto os listados"
+
+msgid "Allow listed only"
+msgstr "Permitir somente os listados"
+
+msgid "Bypassed IP"
+msgstr "Endereços IP Ignorados"
+
+msgid "Connection Timeout"
+msgstr "Tempo limite de conexão"
+
+msgid "Custom"
+msgstr "Personalizado"
+
+msgid "Disabled"
+msgstr "Desabilitado"
+
+msgid "Enable"
+msgstr "Ativar"
+
+msgid "Enabled"
+msgstr "Ativado"
+
+msgid "Encrypt Method"
+msgstr "Método de Cifragem"
+
+msgid "Forwarded IP"
+msgstr "Endereço IP Encaminhado"
+
+msgid "Forwarding Tunnel"
+msgstr "Tunel para Encaminhamento"
+
+msgid "Global Setting"
+msgstr "Opções Globais"
+
+msgid "Ignore List"
+msgstr "Lista de Ignorados"
+
+msgid "LAN"
+msgstr "LAN"
+
+msgid "LAN IP List"
+msgstr "Lista de endereços IP da LAN"
+
+msgid "Local Port"
+msgstr "Porta Local"
+
+msgid "Password"
+msgstr "Senha"
+
+msgid "Relay Mode"
+msgstr "Modo de Retransmissor"
+
+msgid "Server Address"
+msgstr "Endereço do Servidor"
+
+msgid "Server Port"
+msgstr "Porta do servidor"
+
+msgid "ShadowSocks-libev"
+msgstr "ShadowSocks-libev"
+
+msgid "ShadowSocks-libev is not running"
+msgstr "O serviço ShadowSocks-libev está parado"
+
+msgid "ShadowSocks-libev is running"
+msgstr "O serviço ShadowSocks-libev está em execução."
+
+msgid "UDP Forward"
+msgstr "Encaminhamento UDP"
+
+msgid "UDP Local Port"
+msgstr "Porta Local UDP"
+
+msgid "UDP Relay"
+msgstr "Retransmissão UDP"
+
+msgid "WAN"
+msgstr "WAN"
diff --git a/applications/luci-app-shairplay/po/ja/shairplay.po b/applications/luci-app-shairplay/po/ja/shairplay.po
new file mode 100644
index 000000000..07fa7be6e
--- /dev/null
+++ b/applications/luci-app-shairplay/po/ja/shairplay.po
@@ -0,0 +1,54 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2017-01-03 15:06+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Language-Team: \n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"X-Poedit-Basepath: .\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+msgid "AO Device ID"
+msgstr "オーディオ出力 デãƒã‚¤ã‚¹ID"
+
+msgid "AO Device Name"
+msgstr "オーディオ出力 デãƒã‚¤ã‚¹å"
+
+msgid "AO Driver"
+msgstr "オーディオ出力 デãƒã‚¤ã‚¹ãƒ‰ãƒ©ã‚¤ãƒãƒ¼"
+
+msgid "Airport Name"
+msgstr "Airportå"
+
+msgid "Default"
+msgstr "デフォルト"
+
+msgid "Enabled"
+msgstr "有効"
+
+msgid "HW Address"
+msgstr "ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ アドレス"
+
+msgid "Password"
+msgstr "パスワード"
+
+msgid "Port"
+msgstr "ãƒãƒ¼ãƒˆ"
+
+msgid "Respawn"
+msgstr "リスãƒãƒ¼ãƒ³"
+
+msgid "Shairplay"
+msgstr ""
+
+msgid ""
+"Shairplay is a simple AirPlay server implementation, here you can configure "
+"the settings."
+msgstr ""
+"Shairplayã¯ã€ã‚·ãƒ³ãƒ—ルãªAirPlay サーãƒãƒ¼å®Ÿè£…ã§ã™ã€‚ã“ã“ã§ã¯ã€è¨­å®šã‚’è¡Œã†ã“ã¨ãŒã§"
+"ãã¾ã™ã€‚"
diff --git a/applications/luci-app-shairplay/po/pt-br/shairplay.po b/applications/luci-app-shairplay/po/pt-br/shairplay.po
new file mode 100644
index 000000000..c7d0ab18a
--- /dev/null
+++ b/applications/luci-app-shairplay/po/pt-br/shairplay.po
@@ -0,0 +1,54 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+"X-Poedit-Bookmarks: -1,5,-1,-1,-1,-1,-1,-1,-1,-1\n"
+
+msgid "AO Device ID"
+msgstr "Identificador do dispositivo AO"
+
+msgid "AO Device Name"
+msgstr "Nome do dispositivo AO"
+
+msgid "AO Driver"
+msgstr "Driver do AO"
+
+msgid "Airport Name"
+msgstr "Nome do Airport"
+
+msgid "Default"
+msgstr "Padrão"
+
+msgid "Enabled"
+msgstr "Habilitado"
+
+msgid "HW Address"
+msgstr "Endereço de Hardware"
+
+msgid "Password"
+msgstr "Senha"
+
+msgid "Port"
+msgstr "Porta"
+
+msgid "Respawn"
+msgstr "Redisparar"
+
+msgid "Shairplay"
+msgstr "Shairplay"
+
+msgid ""
+"Shairplay is a simple AirPlay server implementation, here you can configure "
+"the settings."
+msgstr ""
+"Shairplay é uma implementação simples de um servidor AirPlay. Aqui você pode "
+"configurá-lo."
diff --git a/applications/luci-app-shairplay/po/templates/shairplay.pot b/applications/luci-app-shairplay/po/templates/shairplay.pot
new file mode 100644
index 000000000..b3da99e0b
--- /dev/null
+++ b/applications/luci-app-shairplay/po/templates/shairplay.pot
@@ -0,0 +1,40 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "AO Device ID"
+msgstr ""
+
+msgid "AO Device Name"
+msgstr ""
+
+msgid "AO Driver"
+msgstr ""
+
+msgid "Airport Name"
+msgstr ""
+
+msgid "Default"
+msgstr ""
+
+msgid "Enabled"
+msgstr ""
+
+msgid "HW Address"
+msgstr ""
+
+msgid "Password"
+msgstr ""
+
+msgid "Port"
+msgstr ""
+
+msgid "Respawn"
+msgstr ""
+
+msgid "Shairplay"
+msgstr ""
+
+msgid ""
+"Shairplay is a simple AirPlay server implementation, here you can configure "
+"the settings."
+msgstr ""
diff --git a/applications/luci-app-simple-adblock/po/ja/simple-adblock.po b/applications/luci-app-simple-adblock/po/ja/simple-adblock.po
new file mode 100644
index 000000000..7926595b6
--- /dev/null
+++ b/applications/luci-app-simple-adblock/po/ja/simple-adblock.po
@@ -0,0 +1,93 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.12\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: ja\n"
+
+msgid "Blacklisted Domain URLs"
+msgstr "ドメイン ブラックリストã®URL"
+
+msgid "Blacklisted Domains"
+msgstr "ブラックリスト ドメイン"
+
+msgid "Blacklisted Hosts URLs"
+msgstr "hosts ブラックリストã®URL"
+
+msgid "Controls system log and console output verbosity"
+msgstr "システム ログã¨ã‚³ãƒ³ã‚½ãƒ¼ãƒ«å‡ºåŠ›ã®å†—長性を設定ã—ã¾ã™ã€‚"
+
+msgid "Enable/start service"
+msgstr "サービスã®æœ‰åŠ¹åŒ–/開始"
+
+msgid "Force Router DNS"
+msgstr "ルーターDNSã®å¼·åˆ¶"
+
+msgid "Force Router DNS server to all local devices"
+msgstr "全ローカル デãƒã‚¤ã‚¹ã«ãƒ«ãƒ¼ã‚¿ãƒ¼ DNSサーãƒãƒ¼ã®ä½¿ç”¨ã‚’強制"
+
+msgid "Forces Router DNS use on local devices, also known as DNS Hijacking"
+msgstr ""
+"ローカル デãƒã‚¤ã‚¹ã«å¯¾ã—ã€ãƒ«ãƒ¼ã‚¿ãƒ¼ä¸Šã®DNSサーãƒãƒ¼ã®ä½¿ç”¨ã‚’強制ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€"
+"DNS ãƒã‚¤ã‚¸ãƒ£ãƒƒã‚¯ã¨ã—ã¦ã‚‚知られã¦ã„ã¾ã™ã€‚"
+
+msgid "Individual domains to be blacklisted"
+msgstr "ブラックリストã«ç™»éŒ²ã™ã‚‹ã€å€‹ã€…ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã§ã™ã€‚"
+
+msgid "Individual domains to be whitelisted"
+msgstr "ホワイトリストã«ç™»éŒ²ã™ã‚‹ã€å€‹ã€…ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã§ã™ã€‚"
+
+msgid "LED to indicate status"
+msgstr "ステータスを表示ã™ã‚‹LED"
+
+msgid "Let local devices use their own DNS servers if set"
+msgstr "DNSサーãƒãƒ¼ã®ä½¿ç”¨ã‚’強制ã—ãªã„"
+
+msgid "Output Verbosity Setting"
+msgstr "出力詳細度ã®è¨­å®š"
+
+msgid "Pick the LED not already used in"
+msgstr "å³ã®è¨­å®šã§æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ãªã„LEDã‚’é¸æŠžã—ã¾ã™:"
+
+msgid "Simple AdBlock"
+msgstr "Simple AdBlock"
+
+msgid "Simple AdBlock Settings"
+msgstr "Simple AdBlock 設定"
+
+msgid "Some output"
+msgstr "軽é‡å‡ºåŠ›"
+
+msgid "Suppress output"
+msgstr "出力ã®æŠ‘制"
+
+msgid "System LED Configuration"
+msgstr "LED 設定"
+
+msgid "URLs to lists of domains to be blacklisted"
+msgstr "ブラックリストã«ç™»éŒ²ã™ã‚‹ãƒ‰ãƒ¡ã‚¤ãƒ³ã®ãƒªã‚¹ãƒˆã®URLã§ã™ã€‚"
+
+msgid "URLs to lists of domains to be whitelisted"
+msgstr "ホワイトリストã«ç™»éŒ²ã™ã‚‹ãƒ‰ãƒ¡ã‚¤ãƒ³ã®ãƒªã‚¹ãƒˆã®URLã§ã™ã€‚"
+
+msgid "URLs to lists of hosts to be blacklisted"
+msgstr "ブラックリストã«ç™»éŒ²ã™ã‚‹ãƒ‰ãƒ¡ã‚¤ãƒ³ãŒåˆ—挙ã•ã‚ŒãŸã€hostsファイルã®URLã§ã™ã€‚"
+
+msgid "Verbose output"
+msgstr "詳細出力"
+
+msgid "Whitelisted Domain URLs"
+msgstr "ドメイン ホワイトリストã®URL"
+
+msgid "Whitelisted Domains"
+msgstr "ホワイトリスト ドメイン"
+
+msgid "none"
+msgstr "ãªã—"
diff --git a/applications/luci-app-splash/Makefile b/applications/luci-app-splash/Makefile
index 345f8910f..5740aa5f7 100644
--- a/applications/luci-app-splash/Makefile
+++ b/applications/luci-app-splash/Makefile
@@ -9,6 +9,12 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Freifunk DHCP-Splash application
LUCI_DEPENDS:=+luci-lib-nixio +tc +kmod-sched +iptables-mod-nat-extra +iptables-mod-ipopt
+define Package/luci-app-splash/conffiles
+/etc/config/luci_splash
+/usr/lib/luci-splash/splashtext.html
+/usr/lib/luci-splash/splashtextinclude.html
+endef
+
include ../../luci.mk
# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-squid/Makefile b/applications/luci-app-squid/Makefile
new file mode 100644
index 000000000..82802c0e5
--- /dev/null
+++ b/applications/luci-app-squid/Makefile
@@ -0,0 +1,18 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=Squid LuCI Interface
+LUCI_DEPENDS:=+luci-mod-admin-full +squid
+
+PKG_MAINTAINER:=Marko Ratkaj <marko.ratkaj@sartura.hr>
+PKG_LICENSE:=Apache-2.0
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-squid/luasrc/controller/squid.lua b/applications/luci-app-squid/luasrc/controller/squid.lua
new file mode 100644
index 000000000..09946a151
--- /dev/null
+++ b/applications/luci-app-squid/luasrc/controller/squid.lua
@@ -0,0 +1,21 @@
+--[[
+
+LuCI Squid module
+
+Copyright (C) 2015, OpenWrt.org
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Marko Ratkaj <marko.ratkaj@sartura.hr>
+
+]]--
+
+module("luci.controller.squid", package.seeall)
+
+function index()
+ entry({"admin", "services", "squid"}, cbi("squid"), _("Squid"))
+end
diff --git a/applications/luci-app-squid/luasrc/model/cbi/squid.lua b/applications/luci-app-squid/luasrc/model/cbi/squid.lua
new file mode 100644
index 000000000..0ac554a3e
--- /dev/null
+++ b/applications/luci-app-squid/luasrc/model/cbi/squid.lua
@@ -0,0 +1,67 @@
+--[[
+
+LuCI Squid module
+
+Copyright (C) 2015, OpenWrt.org
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Author: Marko Ratkaj <marko.ratkaj@sartura.hr>
+
+]]--
+
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
+require "ubus"
+
+m = Map("squid", translate("Squid"))
+m.on_after_commit = function() luci.sys.call("/etc/init.d/squid restart") end
+
+s = m:section(TypedSection, "squid")
+s.anonymous = true
+s.addremove = false
+
+s:tab("general", translate("General Settings"))
+
+http_port = s:taboption("general", Value, "http_port", translate("Port"))
+http_port.datatype = "portrange"
+http_port.placeholder = "0-65535"
+
+visible_hostname = s:taboption("general", Value, "visible_hostname", translate("Visible Hostname"))
+visible_hostname.datatype="string"
+visible_hostname.placeholder = "OpenWrt"
+
+coredump_dir = s:taboption("general", Value, "coredump_dir", translate("Coredump files directory"))
+coredump_dir.datatype="string"
+coredump_dir.placeholder = "/tmp/squid"
+
+s:tab("advanced", translate("Advanced Settings"))
+
+squid_config_file = s:taboption("advanced", TextValue, "_data", "")
+squid_config_file.wrap = "off"
+squid_config_file.rows = 25
+squid_config_file.rmempty = false
+
+function squid_config_file.cfgvalue()
+ local uci = require "luci.model.uci".cursor_state()
+ local file = uci:get("squid", "squid", "config_file")
+ if file then
+ return fs.readfile(file) or ""
+ else
+ return ""
+ end
+end
+
+function squid_config_file.write(self, section, value)
+ if value then
+ local uci = require "luci.model.uci".cursor_state()
+ local file = uci:get("squid", "squid", "config_file")
+ fs.writefile(file, value:gsub("\r\n", "\n"))
+ end
+end
+
+return m
diff --git a/applications/luci-app-statistics/Makefile b/applications/luci-app-statistics/Makefile
index 6c0121e96..008792a5d 100644
--- a/applications/luci-app-statistics/Makefile
+++ b/applications/luci-app-statistics/Makefile
@@ -12,6 +12,10 @@ LUCI_DEPENDS:= \
+collectd-mod-cpu +collectd-mod-memory \
+collectd-mod-interface +collectd-mod-load +collectd-mod-network
+define Package/luci-app-statistics/conffiles
+/etc/config/luci_statistics
+endef
+
include ../../luci.mk
# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua b/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
index 36c5554d3..1bc0714de 100644
--- a/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
+++ b/applications/luci-app-statistics/luasrc/controller/luci_statistics/luci_statistics.lua
@@ -24,6 +24,7 @@ function index()
s_network = _("Network plugins"),
conntrack = _("Conntrack"),
+ contextswitch = _("Context Switches"),
cpu = _("Processor"),
cpufreq = _("CPU Frequency"),
csv = _("CSV Output"),
@@ -58,7 +59,7 @@ function index()
-- our collectd menu
local collectd_menu = {
output = { "csv", "network", "rrdtool", "unixsock" },
- general = { "cpu", "cpufreq", "df", "disk", "email",
+ general = { "contextswitch", "cpu", "cpufreq", "df", "disk", "email",
"entropy", "exec", "irq", "load", "memory",
"nut", "processes", "sensors", "thermal", "uptime" },
network = { "conntrack", "dns", "interface", "iptables",
diff --git a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/contextswitch.lua b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/contextswitch.lua
new file mode 100644
index 000000000..7ae6b24ba
--- /dev/null
+++ b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/contextswitch.lua
@@ -0,0 +1,14 @@
+-- Licensed to the public under the Apache License 2.0.
+
+m = Map("luci_statistics",
+ translate("CPU Context Switches Plugin Configuration"),
+ translate("This plugin collects statistics about the processor context switches."))
+
+-- collectd_contextswitch config section
+s = m:section( NamedSection, "collectd_contextswitch", "luci_statistics" )
+
+-- collectd_contextswitch.enable
+enable = s:option( Flag, "enable", translate("Enable this plugin") )
+enable.default = 0
+
+return m
diff --git a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/rrdtool.lua b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/rrdtool.lua
index f31fb2093..fa00bbbf5 100644
--- a/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/rrdtool.lua
+++ b/applications/luci-app-statistics/luasrc/model/cbi/luci_statistics/rrdtool.lua
@@ -19,7 +19,12 @@ enable = s:option( Flag, "enable", translate("Enable this plugin") )
enable.default = 1
-- collectd_rrdtool.datadir (DataDir)
-datadir = s:option( Value, "DataDir", translate("Storage directory") )
+datadir = s:option( Value, "DataDir",
+ translate("Storage directory"),
+ translate("Note: as pages are rendered by user 'nobody', the *.rrd files, " ..
+ "the storage directory and all its parent directories need " ..
+ "to be world readable."
+ ))
datadir.default = "/tmp"
datadir.rmempty = true
datadir.optional = true
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/contextswitch.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/contextswitch.lua
new file mode 100644
index 000000000..6826e12ad
--- /dev/null
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/contextswitch.lua
@@ -0,0 +1,23 @@
+-- Licensed to the public under the Apache License 2.0.
+
+module("luci.statistics.rrdtool.definitions.contextswitch",package.seeall)
+
+function rrdargs( graph, plugin, plugin_instance, dtype )
+
+ return {
+ title = "%H: Context switches",
+ alt_autoscale = true,
+ vlabel = "Switches/s",
+ number_format = "%5.0lf",
+ data = {
+ types = { "contextswitch" },
+ sources = {
+ contextswitch = { "value" }
+ },
+ options = {
+ contextswitch = { color = "0000ff", title = "Context switches", noarea=true, overlay=true }
+ }
+ }
+ }
+end
+
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua
index fbc3884b4..b5633c15f 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua
@@ -8,7 +8,6 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
return {
title = "%H: Disk space usage on %pi",
vlabel = "Bytes",
- per_instance = true,
number_format = "%5.1lf%sB",
data = {
diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/processes.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/processes.lua
index d48441abd..323c3c230 100644
--- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/processes.lua
+++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/processes.lua
@@ -12,17 +12,18 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
data = {
instances = {
ps_state = {
- "sleeping", "running", "paging", "blocked", "stopped", "zombies"
+ "sleeping", "running", "paging",
+ "blocked", "stopped", "zombies"
}
},
options = {
- ps_state_sleeping = { color = "0000ff" },
- ps_state_running = { color = "008000" },
- ps_state_paging = { color = "ffff00" },
- ps_state_blocked = { color = "ff5000" },
- ps_state_stopped = { color = "555555" },
- ps_state_zombies = { color = "ff0000" }
+ ps_state_sleeping = { color = "0000ff", title = "Sleeping" },
+ ps_state_running = { color = "008000", title = "Running" },
+ ps_state_paging = { color = "ffff00", title = "Paging" },
+ ps_state_blocked = { color = "ff5000", title = "Blocked" },
+ ps_state_stopped = { color = "555555", title = "Stopped" },
+ ps_state_zombies = { color = "ff0000", title = "Zombies" }
}
}
},
@@ -38,11 +39,13 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
options = {
ps_cputime__user = {
color = "0000ff",
+ title = "User",
overlay = true
},
ps_cputime__syst = {
color = "ff0000",
+ title = "System",
overlay = true
}
}
@@ -59,15 +62,15 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
},
options = {
- ps_count__threads = { color = "00ff00" },
- ps_count__processes = { color = "0000bb" }
+ ps_count__threads = { color = "00ff00", title = "Threads" },
+ ps_count__processes = { color = "0000bb", title = "Processes" }
}
}
},
{
title = "%H: Page faults in %pi",
- vlabel = "Pagefaults",
+ vlabel = "Page faults",
detail = true,
data = {
sources = {
@@ -75,14 +78,14 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
},
options = {
- ps_pagefaults__minflt = { color = "ff0000" },
- ps_pagefaults__majflt = { color = "ff5500" }
+ ps_pagefaults__minflt = { color = "0000ff", title = "Minor" },
+ ps_pagefaults__majflt = { color = "ff0000", title = "Major" }
}
}
},
{
- title = "%H: Virtual memory size of %pi",
+ title = "%H: Resident segment size (RSS) of %pi",
vlabel = "Bytes",
detail = true,
number_format = "%5.1lf%sB",
@@ -90,7 +93,21 @@ function rrdargs( graph, plugin, plugin_instance, dtype )
types = { "ps_rss" },
options = {
- ps_rss = { color = "0000ff" }
+ ps_rss = { color = "0000ff", title = "Resident segment" }
+ }
+ }
+ },
+
+ {
+ title = "%H: Virtual memory size (VSZ) of %pi",
+ vlabel = "Bytes",
+ detail = true,
+ number_format = "%5.1lf%sB",
+ data = {
+ types = { "ps_vm" },
+
+ options = {
+ ps_vm = { color = "0000ff", title = "Virtual memory" }
}
}
}
diff --git a/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm b/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm
index ebc78badb..85a20d993 100644
--- a/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm
+++ b/applications/luci-app-statistics/luasrc/view/public_statistics/graph.htm
@@ -29,9 +29,7 @@
<div style="text-align: center">
<% for i, img in ipairs(images) do %>
- <% if is_index then %><a href="<%=pcdata(images[img])%>"><% end %>
<img src="<%=REQUEST_URI%>?img=<%=img%>&#38;host=<%=current_host%>" />
- <% if is_index then %></a><% end %>
<br />
<% end %>
</div>
diff --git a/applications/luci-app-statistics/po/ca/statistics.po b/applications/luci-app-statistics/po/ca/statistics.po
index 2c648ceca..33d5051f4 100644
--- a/applications/luci-app-statistics/po/ca/statistics.po
+++ b/applications/luci-app-statistics/po/ca/statistics.po
@@ -39,6 +39,15 @@ msgstr "Directori base"
msgid "Basic monitoring"
msgstr "Monitoreig bàsic"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Configuració del connector de CPU"
@@ -84,6 +93,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Configuració del connector Conntrack"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Configuració del connector DF"
@@ -129,6 +141,9 @@ msgstr "Configuració del connector d'adreça electrònica"
msgid "Email"
msgstr "Adreça electrònica"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Activa aquest connector"
@@ -268,6 +283,9 @@ msgstr "Monitoritza tots els ports locals que reben connexions"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitoritza dispositius"
@@ -319,6 +337,11 @@ msgstr "Connectors de xarxa"
msgid "Network protocol"
msgstr "Protocol de xarxa"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Número de fils de recol·lecció de dades"
@@ -658,6 +681,12 @@ msgstr ""
"els ports seleccionats."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -667,6 +696,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/cs/statistics.po b/applications/luci-app-statistics/po/cs/statistics.po
index 2a725461e..849831607 100644
--- a/applications/luci-app-statistics/po/cs/statistics.po
+++ b/applications/luci-app-statistics/po/cs/statistics.po
@@ -35,6 +35,15 @@ msgstr "Základní adresář"
msgid "Basic monitoring"
msgstr "Základní sledování"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Nastavení CPU pluginu"
@@ -80,6 +89,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Nastavení pluginu Conntrack"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Nastavení pluginu DF"
@@ -125,6 +137,9 @@ msgstr "Nastavení E-Mail pluginu"
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Povolit tento plugin"
@@ -263,6 +278,9 @@ msgstr "Monitorovat všechny naslouchající porty"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Sledovat zařízení"
@@ -314,6 +332,11 @@ msgstr "Síťové pluginy"
msgid "Network protocol"
msgstr "Síťový protokol"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "PoÄet vláken pro sbÄ›r dat"
@@ -644,6 +667,12 @@ msgstr ""
"vybraných portech."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -653,6 +682,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/de/statistics.po b/applications/luci-app-statistics/po/de/statistics.po
index 51697bfd5..196433e50 100644
--- a/applications/luci-app-statistics/po/de/statistics.po
+++ b/applications/luci-app-statistics/po/de/statistics.po
@@ -37,6 +37,15 @@ msgstr "Basisverzeichnis"
msgid "Basic monitoring"
msgstr "Schnittstellen einfach überwachen"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "CPU Plugin Konfiguration"
@@ -82,6 +91,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Conntrack Plugin Einstellungen"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "DF Plugin Konfiguration"
@@ -127,6 +139,9 @@ msgstr "E-Mail Plugin Konfiguration"
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Plugin aktivieren"
@@ -270,6 +285,9 @@ msgstr "Alle durch lokale Dienste genutzten Ports überwachen"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Geräte überwachen"
@@ -321,6 +339,11 @@ msgstr "Netzwerkplugins"
msgid "Network protocol"
msgstr "Netzwerkprotokoll"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Anzahl paralleler Sammelprozesse"
@@ -663,6 +686,12 @@ msgstr ""
"ausgewählten Ports."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -672,6 +701,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/el/statistics.po b/applications/luci-app-statistics/po/el/statistics.po
index 3388ea510..da54cdac6 100644
--- a/applications/luci-app-statistics/po/el/statistics.po
+++ b/applications/luci-app-statistics/po/el/statistics.po
@@ -38,6 +38,15 @@ msgstr "Κατάλογος βάσης"
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -83,6 +92,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -129,6 +141,9 @@ msgstr ""
msgid "Email"
msgstr "Ηλ. ΤαχυδÏομείο"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -261,6 +276,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -312,6 +330,11 @@ msgstr "ΠÏόσθετα δικτÏου"
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "ΑÏιθμός νημάτων για τη συλλογή δεδομένων"
@@ -606,6 +629,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -613,6 +642,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/en/statistics.po b/applications/luci-app-statistics/po/en/statistics.po
index fe1f8beb9..d9ab59ce0 100644
--- a/applications/luci-app-statistics/po/en/statistics.po
+++ b/applications/luci-app-statistics/po/en/statistics.po
@@ -37,6 +37,15 @@ msgstr "Base Directory"
msgid "Basic monitoring"
msgstr "Basic monitoring"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "CPU Plugin Configuration"
@@ -82,6 +91,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "DF Plugin Configuration"
@@ -127,6 +139,9 @@ msgstr "E-Mail Plugin Configuration"
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Enable this plugin"
@@ -266,6 +281,9 @@ msgstr "Monitor all local listen ports"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitor devices"
@@ -317,6 +335,11 @@ msgstr "Network plugins"
msgid "Network protocol"
msgstr "Network protocol"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Number of threads for data collection"
@@ -646,6 +669,12 @@ msgstr ""
"selected ports."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -655,6 +684,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/es/statistics.po b/applications/luci-app-statistics/po/es/statistics.po
index 0d47b659c..18c25819a 100644
--- a/applications/luci-app-statistics/po/es/statistics.po
+++ b/applications/luci-app-statistics/po/es/statistics.po
@@ -37,6 +37,15 @@ msgstr "Directorio Base"
msgid "Basic monitoring"
msgstr "Monitorización básica"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Configuración del plugin de CPU"
@@ -82,6 +91,9 @@ msgstr "Seguimiento"
msgid "Conntrack Plugin Configuration"
msgstr "Configuración del seguimiento"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Configuración del plugin DF"
@@ -127,6 +139,9 @@ msgstr "Configuración del plugin email"
msgid "Email"
msgstr "Correo electrónico"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Activar este plugin"
@@ -265,6 +280,9 @@ msgstr "Monitorizar todos los puertos de escucha locales"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Dispositivos a monitonizar"
@@ -316,6 +334,11 @@ msgstr "Plugins de red"
msgid "Network protocol"
msgstr "Protocolo de red"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Número de hilos para recolección de datos"
@@ -659,6 +682,12 @@ msgstr ""
"puertos seleccionados."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -668,6 +697,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/fr/statistics.po b/applications/luci-app-statistics/po/fr/statistics.po
index b7ace0cac..b657bd38f 100644
--- a/applications/luci-app-statistics/po/fr/statistics.po
+++ b/applications/luci-app-statistics/po/fr/statistics.po
@@ -37,6 +37,15 @@ msgstr "Répertoire de base"
msgid "Basic monitoring"
msgstr "Surveillance de base"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Configuration du greffon sur le CPU"
@@ -82,6 +91,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Configuration du greffon DF"
@@ -127,6 +139,9 @@ msgstr "Configuration du greffon des courriels"
msgid "Email"
msgstr "Courriel"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Activer ce greffon"
@@ -267,6 +282,9 @@ msgstr "Surveiller tous les ports en écoute locaux"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Périphériques à surveiller"
@@ -318,6 +336,11 @@ msgstr "Greffons liés au réseau"
msgid "Network protocol"
msgstr "Protocole réseau"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Nombre de fils pour la récupération des données"
@@ -654,6 +677,12 @@ msgstr ""
"de connexions TCP sur les ports spécifiés."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -661,6 +690,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/he/statistics.po b/applications/luci-app-statistics/po/he/statistics.po
index a5da218a2..6f40a47a2 100644
--- a/applications/luci-app-statistics/po/he/statistics.po
+++ b/applications/luci-app-statistics/po/he/statistics.po
@@ -37,6 +37,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -79,6 +88,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -124,6 +136,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -256,6 +271,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -307,6 +325,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -601,6 +624,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -608,6 +637,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/hu/statistics.po b/applications/luci-app-statistics/po/hu/statistics.po
index bf4dd53a0..979c72f0f 100644
--- a/applications/luci-app-statistics/po/hu/statistics.po
+++ b/applications/luci-app-statistics/po/hu/statistics.po
@@ -35,6 +35,15 @@ msgstr "Alapkönyvtár"
msgid "Basic monitoring"
msgstr "Ãltalános figyelés"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "CPU bővítmény beállítása"
@@ -80,6 +89,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Conntrack bővítmény beállítása"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "DF bővítmény beállítása"
@@ -125,6 +137,9 @@ msgstr "E-Mail bővítmény beállítása"
msgid "Email"
msgstr "E-mail"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Bővítmény engedélyezése"
@@ -268,6 +283,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Eszközök figyelése"
@@ -319,6 +337,11 @@ msgstr "Hálózati bővítmények"
msgid "Network protocol"
msgstr "Hálózati protokoll"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Az adatgyűjtő szálak száma"
@@ -646,6 +669,12 @@ msgstr ""
"információkat."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -655,6 +684,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/it/statistics.po b/applications/luci-app-statistics/po/it/statistics.po
index 131333612..b0ae3d6b7 100644
--- a/applications/luci-app-statistics/po/it/statistics.po
+++ b/applications/luci-app-statistics/po/it/statistics.po
@@ -37,6 +37,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -82,6 +91,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -127,6 +139,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Abilita questo plugin"
@@ -266,6 +281,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -317,6 +335,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -611,6 +634,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -618,6 +647,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/ja/statistics.po b/applications/luci-app-statistics/po/ja/statistics.po
index 7469fe68a..690d9207d 100644
--- a/applications/luci-app-statistics/po/ja/statistics.po
+++ b/applications/luci-app-statistics/po/ja/statistics.po
@@ -1,59 +1,68 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-19 19:36+0200\n"
-"PO-Revision-Date: 2012-04-20 08:55+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-01-24 15:08+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.4\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "Action (target)"
-msgstr ""
+msgstr "アクション(対象)"
msgid "Add command for reading values"
-msgstr ""
+msgstr "値読ã¿å–りコマンドã®è¿½åŠ "
msgid "Add matching rule"
-msgstr ""
+msgstr "マッãƒãƒ³ã‚°è¦å‰‡ã®è¿½åŠ "
msgid "Add multiple hosts separated by space."
-msgstr ""
+msgstr "スペースã§åŒºåˆ‡ã‚‰ã‚ŒãŸè¤‡æ•°ã®ãƒ›ã‚¹ãƒˆã‚’追加ã—ã¾ã™ã€‚"
msgid "Add notification command"
-msgstr ""
+msgstr "通知コマンドã®è¿½åŠ "
msgid "Aggregate number of connected users"
-msgstr ""
+msgstr "接続ユーザー数ã®ç·è¨ˆ"
msgid "Base Directory"
msgstr "ベース・ディレクトリ"
msgid "Basic monitoring"
+msgstr "基本モニタリング"
+
+msgid "CPU Context Switches Plugin Configuration"
msgstr ""
+msgid "CPU Frequency"
+msgstr "CPU 周波数"
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr "CPU 周波数プラグイン設定"
+
msgid "CPU Plugin Configuration"
-msgstr ""
+msgstr "CPU プラグイン設定"
msgid "CSV Output"
-msgstr ""
+msgstr "CSV 出力"
msgid "CSV Plugin Configuration"
msgstr "CSV プラグイン設定"
msgid "Cache collected data for"
-msgstr ""
+msgstr "åŽé›†ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿ã‚’キャッシュã™ã‚‹"
msgid "Cache flush interval"
msgstr ""
msgid "Chain"
-msgstr ""
+msgstr "ãƒã‚§ã‚¤ãƒ³"
msgid "CollectLinks"
msgstr ""
@@ -72,11 +81,16 @@ msgid ""
"different plugins. On this page you can change general settings for the "
"collectd daemon."
msgstr ""
+"Collectd ã¯ã€æ§˜ã€…ãªã‚½ãƒ¼ã‚¹ã‹ã‚‰åˆ¥ã€…ã®ãƒ—ラグインを通ã—ã¦ãƒ‡ãƒ¼ã‚¿ã‚’åŽé›†ã™ã‚‹è»½é‡ãƒ‡ãƒ¼"
+"モンã§ã™ã€‚"
msgid "Conntrack"
-msgstr ""
+msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
+msgstr "Conntrack プラグイン設定"
+
+msgid "Context Switches"
msgstr ""
msgid "DF Plugin Configuration"
@@ -86,7 +100,7 @@ msgid "DNS"
msgstr "DNS"
msgid "DNS Plugin Configuration"
-msgstr ""
+msgstr "DNS プラグイン設定"
msgid "Data collection interval"
msgstr "データã®åŽé›†é–“éš”"
@@ -95,7 +109,7 @@ msgid "Datasets definition file"
msgstr "データベース定義ファイル"
msgid "Destination ip range"
-msgstr ""
+msgstr "対象IPã®ç¯„囲"
msgid "Directory for collectd plugins"
msgstr "collectd プラグインディレクトリ"
@@ -107,13 +121,13 @@ msgid "Disk Plugin Configuration"
msgstr "ディスクプラグイン設定"
msgid "Disk Space Usage"
-msgstr ""
+msgstr "ディスクスペース使用é‡"
msgid "Disk Usage"
-msgstr ""
+msgstr "ディスクã®ä½¿ç”¨"
msgid "Display Host »"
-msgstr ""
+msgstr "ホストを表示 »"
msgid "Display timespan »"
msgstr "時間帯表示 »"
@@ -124,20 +138,23 @@ msgstr "E-メールプラグイン設定"
msgid "Email"
msgstr "Eメール"
+msgid "Empty value = monitor all"
+msgstr "空ã®å€¤ = å…¨ã¦ã‚’モニターã™ã‚‹"
+
msgid "Enable this plugin"
msgstr "プラグイン設定を有効ã«ã™ã‚‹"
msgid "Entropy"
-msgstr ""
+msgstr "エントロピー"
msgid "Entropy Plugin Configuration"
-msgstr ""
+msgstr "エントロピー プラグイン設定"
msgid "Exec"
msgstr ""
msgid "Exec Plugin Configuration"
-msgstr ""
+msgstr "Exec プラグイン設定"
msgid "Filter class monitoring"
msgstr ""
@@ -155,10 +172,10 @@ msgid "Gather compression statistics"
msgstr ""
msgid "General plugins"
-msgstr ""
+msgstr "一般プラグイン"
msgid "Generate a separate graph for each logged user"
-msgstr ""
+msgstr "ログインユーザーã”ã¨ã®åˆ†é›¢ã•ã‚ŒãŸã‚°ãƒ©ãƒ•ã‚’生æˆã—ã¾ã™ã€‚"
msgid "Graphs"
msgstr "グラフ"
@@ -170,23 +187,30 @@ msgid ""
"Here you can define external commands which will be started by collectd in "
"order to read certain values. The values will be read from stdout."
msgstr ""
+"ã“ã“ã§ã¯ã€ç‰¹å®šã®å€¤ã‚’読ã¿è¾¼ã‚€ãŸã‚ã«collectã«ã‚ˆã£ã¦é †ç•ªã«é–‹å§‹ã•ã‚Œã‚‹å¤–部コマンド"
+"を設定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚値ã¯æ¨™æº–出力ã‹ã‚‰èª­ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚"
msgid ""
"Here you can define external commands which will be started by collectd when "
"certain threshold values have been reached. The values leading to invokation "
"will be feeded to the the called programs stdin."
msgstr ""
+"ã“ã“ã§ã¯ã€ç‰¹å®šã®é–¾å€¤ã«åˆ°é”ã—ãŸã¨ãã«collectã«ã‚ˆã£ã¦é–‹å§‹ã•ã‚Œã‚‹å¤–部コマンドを設"
+"定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚呼ã³å‡ºã—ã«ã¤ãªãŒã‚‹å€¤ã¯ã€å‘¼ã³å‡ºã•ã‚ŒãŸãƒ—ログラムã®æ¨™æº–å…¥"
+"力ã«é€ã‚‰ã‚Œã¾ã™ã€‚"
msgid ""
"Here you can define various criteria by which the monitored iptables rules "
"are selected."
msgstr ""
+"ã“ã“ã§ã¯ã€ãƒ¢ãƒ‹ã‚¿ãƒ¼ã™ã‚‹iptableè¦å‰‡ãŒé¸æŠžã•ã‚Œã‚‹æ§˜ã€…ãªåŸºæº–を設定ã™ã‚‹ã“ã¨ãŒã§ãã¾"
+"ã™ã€‚"
msgid "Hold Ctrl to select multiple items or to deselect entries."
-msgstr ""
+msgstr "複数ã®é …目をé¸æŠžã¾ãŸã¯è§£é™¤ã™ã‚‹ã«ã¯ã€Ctrlキーを押ã—ãŸã¾ã¾ã«ã—ã¾ã™ã€‚"
msgid "Host"
-msgstr ""
+msgstr "ホスト"
msgid "Hostname"
msgstr "ホストå"
@@ -198,96 +222,102 @@ msgid "IRQ Plugin Configuration"
msgstr "IRQ プラグイン設定"
msgid "Ignore source addresses"
-msgstr ""
+msgstr "無視ã™ã‚‹ã‚¢ã‚¯ã‚»ã‚¹å…ƒã‚¢ãƒ‰ãƒ¬ã‚¹"
msgid "Incoming interface"
-msgstr ""
+msgstr "ç€ä¿¡ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
msgid "Interface Plugin Configuration"
-msgstr ""
+msgstr "インターフェース プラグイン設定"
msgid "Interfaces"
-msgstr ""
+msgstr "インターフェース"
msgid "Interrupts"
-msgstr ""
+msgstr "割込ã¿"
msgid "Interval for pings"
-msgstr ""
+msgstr "pingé–“éš”"
msgid "Iptables Plugin Configuration"
-msgstr ""
+msgstr "Iptables プラグイン設定"
msgid "Leave unselected to automatically determine interfaces to monitor."
msgstr ""
+"モニターã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚’自動的ã«æ±ºå®šã™ã‚‹ã«ã¯ã€æœªé¸æŠžã®ã¾ã¾ã«ã—ã¾ã™ã€‚"
msgid "Listen host"
-msgstr ""
+msgstr "å¾…ã¡å—ã‘ホスト"
msgid "Listen port"
-msgstr ""
+msgstr "å¾…ã¡å—ã‘ãƒãƒ¼ãƒˆ"
msgid "Listener interfaces"
-msgstr ""
+msgstr "å¾…ã¡å—ã‘インターフェース"
msgid "Load Plugin Configuration"
-msgstr ""
+msgstr "è² è·ãƒ—ラグイン設定"
msgid ""
"Max values for a period can be used instead of averages when not using 'only "
"average RRAs'"
msgstr ""
+"'RRAã®å¹³å‡ã®ã¿' を使用ã—ãªã„ã¨ãã€å¹³å‡å€¤ã®ä»£ã‚ã‚Šã«ä¸€å®šæœŸé–“ã®æœ€å¤§å€¤ã‚’使用ã§ã"
+"ã¾ã™ã€‚"
msgid "Maximum allowed connections"
-msgstr ""
+msgstr "許å¯ã•ã‚ŒãŸæœ€å¤§æŽ¥ç¶šæ•°"
msgid "Memory"
-msgstr ""
+msgstr "メモリー"
msgid "Memory Plugin Configuration"
-msgstr ""
+msgstr "メモリー プラグイン設定"
msgid "Monitor all except specified"
msgstr "設定値以外ã®å…¨ã¦ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚’モニターã™ã‚‹"
msgid "Monitor all local listen ports"
-msgstr ""
+msgstr "ローカルã®å…¨å¾…ã¡å—ã‘ãƒãƒ¼ãƒˆã‚’モニターã™ã‚‹"
msgid "Monitor all sensors"
+msgstr "å…¨ã¦ã®ã‚»ãƒ³ã‚µãƒ¼ã‚’モニターã™ã‚‹"
+
+msgid "Monitor device(s) / thermal zone(s)"
msgstr ""
msgid "Monitor devices"
-msgstr ""
+msgstr "デãƒã‚¤ã‚¹ã‚’モニターã™ã‚‹"
msgid "Monitor disks and partitions"
-msgstr ""
+msgstr "ディスクã¨ãƒ‘ーティションをモニターã™ã‚‹"
msgid "Monitor filesystem types"
-msgstr ""
+msgstr "ファイルシステム タイプをモニターã™ã‚‹"
msgid "Monitor hosts"
-msgstr ""
+msgstr "ホストをモニターã™ã‚‹"
msgid "Monitor interfaces"
msgstr "モニターã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®è¨­å®š"
msgid "Monitor interrupts"
-msgstr ""
+msgstr "割込ã¿ã‚’モニターã™ã‚‹"
msgid "Monitor local ports"
-msgstr ""
+msgstr "ローカルã®ãƒãƒ¼ãƒˆã‚’モニターã™ã‚‹"
msgid "Monitor mount points"
-msgstr ""
+msgstr "マウントãƒã‚¤ãƒ³ãƒˆã‚’モニターã™ã‚‹"
msgid "Monitor processes"
-msgstr ""
+msgstr "プロセスをモニターã™ã‚‹"
msgid "Monitor remote ports"
-msgstr ""
+msgstr "リモートã®ãƒãƒ¼ãƒˆã‚’モニターã™ã‚‹"
msgid "Name of the rule"
-msgstr ""
+msgstr "ルールå"
msgid "Netlink"
msgstr "Netlink"
@@ -307,6 +337,14 @@ msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—ラグイン"
msgid "Network protocol"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—ロトコル"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+"注æ„: ページ㯠'nobody' ユーザーã¨ã—ã¦ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã•ã‚Œã¾ã™ã€‚*.rrd ファイルã¨"
+"ä¿å­˜å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€ãŠã‚ˆã³ãã®ãƒšã‚¢ãƒ¬ãƒ³ãƒˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€worldアクセス権㌠"
+"\"読ã¿å–ã‚Šå¯èƒ½\" ã«è¨­å®šã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚"
+
msgid "Number of threads for data collection"
msgstr "データåŽé›†ç”¨ã‚¹ãƒ¬ãƒƒãƒ‰æ•°"
@@ -320,19 +358,19 @@ msgid "Only create average RRAs"
msgstr "å¹³å‡å€¤ã®RRAsã®ã¿ä½œæˆã™ã‚‹"
msgid "OpenVPN"
-msgstr ""
+msgstr "OpenVPN"
msgid "OpenVPN Plugin Configuration"
-msgstr ""
+msgstr "OpenVPN プラグイン設定"
msgid "OpenVPN status files"
-msgstr ""
+msgstr "OpenVPN ステータスファイル"
msgid "Options"
msgstr "オプション"
msgid "Outgoing interface"
-msgstr ""
+msgstr "é€ä¿¡ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
msgid "Output plugins"
msgstr "出力プラグイン"
@@ -347,28 +385,28 @@ msgid "Port"
msgstr "ãƒãƒ¼ãƒˆ"
msgid "Processes"
-msgstr ""
+msgstr "プロセス"
msgid "Processes Plugin Configuration"
-msgstr ""
+msgstr "プロセス プラグイン設定"
msgid "Processes to monitor separated by space"
-msgstr ""
+msgstr "スペースã§åŒºåˆ‡ã‚‰ã‚ŒãŸã€ãƒ¢ãƒ‹ã‚¿ãƒ¼ã™ã‚‹ãƒ—ロセスã§ã™ã€‚"
msgid "Processor"
-msgstr ""
+msgstr "プロセッサー"
msgid "Qdisc monitoring"
-msgstr ""
+msgstr "Qdisc モニタリング"
msgid "RRD XFiles Factor"
msgstr ""
msgid "RRD heart beat interval"
-msgstr ""
+msgstr "RRD ãƒãƒ¼ãƒˆãƒ“ート間隔"
msgid "RRD step interval"
-msgstr ""
+msgstr "RRD stepインターãƒãƒ«"
msgid "RRDTool"
msgstr "RRDTool"
@@ -386,46 +424,46 @@ msgid "Seconds"
msgstr "秒"
msgid "Sensor list"
-msgstr ""
+msgstr "センサー一覧"
msgid "Sensors"
-msgstr ""
+msgstr "センサー"
msgid "Sensors Plugin Configuration"
-msgstr ""
+msgstr "センサー プラグイン設定"
msgid "Server host"
-msgstr ""
+msgstr "サーãƒãƒ¼ ホスト"
msgid "Server port"
-msgstr ""
+msgstr "サーãƒãƒ¼ ãƒãƒ¼ãƒˆ"
msgid "Setup"
-msgstr ""
+msgstr "設定"
msgid "Shaping class monitoring"
msgstr ""
msgid "Show max values instead of averages"
-msgstr ""
+msgstr "å¹³å‡å€¤ã®ä»£ã‚ã‚Šã«æœ€å¤§å€¤ã‚’表示ã™ã‚‹"
msgid "Socket file"
-msgstr ""
+msgstr "ソケット ファイル"
msgid "Socket group"
-msgstr ""
+msgstr "ソケット グループ"
msgid "Socket permissions"
-msgstr ""
+msgstr "ソケット パーミッション"
msgid "Source ip range"
-msgstr ""
+msgstr "ソースIPã®ç¯„囲"
msgid "Specifies what information to collect about links."
-msgstr ""
+msgstr "リンクã«ã¤ã„ã¦ã€ã©ã®ã‚ˆã†ãªæƒ…報をåŽé›†ã™ã‚‹ã‹è¨­å®šã—ã¾ã™ã€‚"
msgid "Specifies what information to collect about routes."
-msgstr ""
+msgstr "ルートã«ã¤ã„ã¦ã€ã©ã®ã‚ˆã†ãªæƒ…報をåŽé›†ã™ã‚‹ã‹è¨­å®šã—ã¾ã™ã€‚"
msgid "Specifies what information to collect about the global topology."
msgstr ""
@@ -437,40 +475,40 @@ msgid "Splash Leases Plugin Configuration"
msgstr ""
msgid "Statistics"
-msgstr ""
+msgstr "統計"
msgid "Storage directory"
msgstr "ä¿å­˜å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª"
msgid "Storage directory for the csv files"
-msgstr ""
+msgstr "CSVファイルã®ä¿å­˜å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª"
msgid "Store data values as rates instead of absolute values"
-msgstr ""
+msgstr "データ値を絶対値ã®ä»£ã‚ã‚Šã«ãƒ¬ãƒ¼ãƒˆã¨ã—ã¦ä¿å­˜ã—ã¾ã™ã€‚"
msgid "Stored timespans"
-msgstr ""
+msgstr "ä¿å­˜ã™ã‚‹æœŸé–“ã®ç¯„囲"
msgid "System Load"
-msgstr ""
+msgstr "システム負è·"
msgid "TCP Connections"
-msgstr ""
+msgstr "TCP 接続"
msgid "TCPConns Plugin Configuration"
-msgstr ""
+msgstr "TCP接続プラグイン設定"
msgid "TTL for network packets"
-msgstr ""
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‘ケットã®TTL"
msgid "TTL for ping packets"
-msgstr ""
+msgstr "pingパケットã®TTL"
msgid "Table"
-msgstr ""
+msgstr "テーブル"
msgid "The NUT plugin reads information about Uninterruptible Power Supplies."
-msgstr ""
+msgstr "NUT プラグインã¯ã€ç„¡åœé›»é›»æºè£…ç½®ã«ã¤ã„ã¦ã®æƒ…報を読ã¿å–ã‚Šã¾ã™ã€‚"
msgid ""
"The OLSRd plugin reads information about meshed networks from the txtinfo "
@@ -481,34 +519,43 @@ msgid ""
"The OpenVPN plugin gathers information about the current vpn connection "
"status."
msgstr ""
+"OpenVPN プラグインã¯ã€ç¾åœ¨ã®VPN接続ステータスã«ã¤ã„ã¦ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The conntrack plugin collects statistics about the number of tracked "
"connections."
-msgstr ""
+msgstr "Conntrack プラグインã¯ã€è¿½è·¡ã•ã‚ŒãŸæŽ¥ç¶šã®æ•°ã«ã¤ã„ã¦ã®çµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
msgid "The cpu plugin collects basic statistics about the processor usage."
-msgstr ""
+msgstr "CPU プラグインã¯ã€ãƒ—ロセッサー使用ã«ã¤ã„ã¦ã®åŸºæœ¬çš„ãªçµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The csv plugin stores collected data in csv file format for further "
"processing by external programs."
msgstr ""
+"CSV プラグインã¯ã€å¤–部プログラムãŒã•ã‚‰ã«åˆ©ç”¨ã™ã‚‹ãŸã‚ã«ã€åŽé›†ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿ã‚’CSV"
+"ファイル形å¼ã§ä¿å­˜ã—ã¾ã™ã€‚"
msgid ""
"The df plugin collects statistics about the disk space usage on different "
"devices, mount points or filesystem types."
msgstr ""
+"df プラグインã¯ã€å€‹åˆ¥ã®ãƒ‡ãƒã‚¤ã‚¹ã¾ãŸã¯ãƒžã‚¦ãƒ³ãƒˆãƒã‚¤ãƒ³ãƒˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ å½¢å¼ã®"
+"ディスク使用é‡ã«ã¤ã„ã¦ã®çµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The disk plugin collects detailled usage statistics for selected partitions "
"or whole disks."
msgstr ""
+"ディスク プラグインã¯ã€é¸æŠžã•ã‚ŒãŸãƒ‘ーティションã¾ãŸã¯ãƒ‡ã‚£ã‚¹ã‚¯å…¨ä½“ã®è©³ç´°ãªä½¿ç”¨"
+"統計をåŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The dns plugin collects detailled statistics about dns related traffic on "
"selected interfaces."
msgstr ""
+"DNS プラグインã¯ã€é¸æŠžã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã§ã®DNSã«é–¢é€£ã—ãŸãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ã«ã¤"
+"ã„ã¦ã®è©³ç´°ãªçµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The email plugin creates a unix socket which can be used to transmit email-"
@@ -516,14 +563,21 @@ msgid ""
"to be used in conjunction with Mail::SpamAssasin::Plugin::Collectd but can "
"be used in other ways as well."
msgstr ""
+"Eメール プラグインã¯ã€å®Ÿè¡Œä¸­ã®collectd デーモンã¸ã®é›»å­ãƒ¡ãƒ¼ãƒ«çµ±è¨ˆã®é€ä¿¡ã«åˆ©ç”¨"
+"å¯èƒ½ãªUNIX ソケットを作æˆã™ã‚‹ãƒ—ラグインã§ã™ã€‚ã“ã®ãƒ—ラグインã¯ã€ãƒ¡ãƒ¼ãƒ«ã€"
+"SpamAssasinã€ãƒ—ラグインã€Collectdを一緒ã«ä½¿ã†ã“ã¨ã‚’主ã«æ„図ã—ã¦ã„ã¾ã™ãŒã€ã»ã‹"
+"ã®æ–¹æ³•ã«ã‚‚åŒæ§˜ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
msgid "The entropy plugin collects statistics about the available entropy."
msgstr ""
+"エントロピー プラグインã¯ã€åˆ©ç”¨å¯èƒ½ãªã‚¨ãƒ³ãƒˆãƒ­ãƒ”ーã«ã¤ã„ã¦ã®çµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The exec plugin starts external commands to read values from or to notify "
"external processes when certain threshold values have been reached."
msgstr ""
+"Exec プラグインã¯ã€ç‰¹å®šã®é–¾å€¤ã«åˆ°é”ã—ãŸã¨ãã«å¤–部プロセスã‹ã‚‰å€¤ã®èª­ã¿è¾¼ã¿ã€ã‚‚"
+"ã—ãã¯å¤–部プロセスã¸é€šçŸ¥ã™ã‚‹å¤–部コマンドを開始ã—ã¾ã™ã€‚"
msgid ""
"The interface plugin collects traffic statistics on selected interfaces."
@@ -535,11 +589,15 @@ msgid ""
"The iptables plugin will monitor selected firewall rules and collect "
"informations about processed bytes and packets per rule."
msgstr ""
+"iptables プラグインã¯ã€é¸æŠžã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«è¦ã‚’モニターã—ã€è¦å‰‡ã”ã¨ã®å‡¦"
+"ç†ã•ã‚ŒãŸãƒã‚¤ãƒˆæ•°ã¨ãƒ‘ケット数ã«ã¤ã„ã¦ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The irq plugin will monitor the rate of issues per second for each selected "
"interrupt. If no interrupt is selected then all interrupts are monitored."
msgstr ""
+"IRQ プラグインã¯ã€é¸æŠžã•ã‚ŒãŸå‰²ã‚Šè¾¼ã¿ã”ã¨ã«1秒当ãŸã‚Šã®ç™ºè¡Œãƒ¬ãƒ¼ãƒˆã‚’モニターã—ã¾"
+"ã™ã€‚é¸æŠžã•ã‚ŒãŸå‰²ã‚Šè¾¼ã¿ãŒç„¡ã„å ´åˆã€ã™ã¹ã¦ã®å‰²ã‚Šè¾¼ã¿ãŒãƒ¢ãƒ‹ã‚¿ãƒ¼ã•ã‚Œã¾ã™ã€‚"
msgid ""
"The iwinfo plugin collects statistics about wireless signal strength, noise "
@@ -551,12 +609,14 @@ msgid "The load plugin collects statistics about the general system load."
msgstr "è² è·ãƒ—ラグインã¯ã€ã‚·ã‚¹ãƒ†ãƒ è² è·ã®çµ±è¨ˆæƒ…報をåŽé›†ã—ã¾ã™ã€‚"
msgid "The memory plugin collects statistics about the memory usage."
-msgstr ""
+msgstr "メモリー プラグインã¯ã€ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã«ã¤ã„ã¦ã®çµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The netlink plugin collects extended informations like qdisc-, class- and "
"filter-statistics for selected interfaces."
msgstr ""
+"Netlink プラグインã¯ã€é¸æŠžã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã® qdisc- ã‚„ class- ã€filter-"
+"statistics ã®ã‚ˆã†ãªæ‹¡å¼µçš„ãªæƒ…報をåŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The network plugin provides network based communication between different "
@@ -564,16 +624,25 @@ msgid ""
"client mode locally collected data is transferred to a collectd server "
"instance, in server mode the local instance receives data from other hosts."
msgstr ""
+"ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—ラグインã¯ã€ç•°ãªã‚‹collectdé–“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ™ãƒ¼ã‚¹ã®é€šä¿¡ã‚’æä¾›ã—"
+"ã¾ã™ã€‚collectdã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãƒ¢ãƒ¼ãƒ‰ã¨ã‚µãƒ¼ãƒãƒ¼ãƒ¢ãƒ¼ãƒ‰ã®ä¸¡æ–¹ã§å‹•ä½œã™ã‚‹ã“ã¨ãŒã§"
+"ãã¾ã™ã€‚クライアントモードã§ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ã®åŽé›†ãƒ‡ãƒ¼ã‚¿ã¯collectdサーãƒãƒ¼ã«è»¢é€"
+"ã•ã‚Œã€ã‚µãƒ¼ãƒãƒ¼ãƒ¢ãƒ¼ãƒ‰ã§ã¯ãƒ­ãƒ¼ã‚«ãƒ«ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã¯ä»–ã®ãƒ›ã‚¹ãƒˆã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ã‚’å—ä¿¡ã—"
+"ã¾ã™ã€‚"
msgid ""
"The ping plugin will send icmp echo replies to selected hosts and measure "
"the roundtrip time for each host."
msgstr ""
+"ping プラグインã¯ã€ICMP Echo Replyã‚’é¸æŠžã•ã‚ŒãŸãƒ›ã‚¹ãƒˆã«é€ä¿¡ã—ã€å„ホストã¨ã®å¾€"
+"復時間を計測ã—ã¾ã™ã€‚"
msgid ""
"The processes plugin collects informations like cpu time, page faults and "
"memory usage of selected processes."
msgstr ""
+"プロセス プラグインã¯ã€é¸æŠžã•ã‚ŒãŸãƒ—ロセスã®CPU時間やページフォルトã€ãƒ¡ãƒ¢ãƒªãƒ¼"
+"使用率ãªã©ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚"
msgid ""
"The rrdtool plugin stores the collected data in rrd database files, the "
@@ -581,11 +650,17 @@ msgid ""
"values will result in a very high memory consumption in the temporary "
"directory. This can render the device unusable!</strong>"
msgstr ""
+"rrdtool プラグインã¯ã€åŽé›†ã—ãŸãƒ‡ãƒ¼ã‚¿ã‚’rrd データベースファイルã«ä¿å­˜ã—ã¾ã™ã€‚"
+"ã“ã‚ŒãŒçµ±è¨ˆå›³ã®åŸºç¤Žã§ã™ã€‚<br /><br /><strong>警告: é–“é•ã£ãŸå€¤ã‚’設定ã™ã‚‹ã¨ã€ä¸€"
+"時的ãªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ˆã£ã¦ãƒ¡ãƒ¢ãƒªãƒ¼æ¶ˆè²»é‡ãŒéžå¸¸ã«é«˜ããªã‚Šã¾ã™ã€‚ã“ã‚Œã¯ãƒ‡ãƒã‚¤ã‚¹"
+"を使用ä¸èƒ½ã«ã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ï¼</strong>"
msgid ""
"The sensors plugin uses the Linux Sensors framework to gather environmental "
"statistics."
msgstr ""
+"センサー プラグインã¯ã€ç’°å¢ƒçµ±è¨ˆã®åŽé›†ã« Linux センサーフレームワークを使用ã—"
+"ã¾ã™ã€‚"
msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
@@ -597,52 +672,82 @@ msgid ""
"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
"render diagram images."
msgstr ""
+"statistics パッケージã¯ã€ãƒ‡ãƒ¼ã‚¿ã®åŽé›†ã«<a href=\"https://collectd.org/"
+"\">Collectd</a>ã‚’ã€çµ±è¨ˆå›³ã®ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã«<a href=\"http://oss.oetiker.ch/"
+"rrdtool/\">RRDtool</a>を使用ã—ã¾ã™ã€‚"
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
"selected ports."
msgstr ""
+"TCP接続プラグインã¯ã€é¸æŠžã•ã‚ŒãŸãƒãƒ¼ãƒˆã«ãŠã„ã¦ã‚ªãƒ¼ãƒ—ンãªTCP接続ã«ã¤ã„ã¦ã®æƒ…å ±"
+"ã‚’åŽé›†ã—ã¾ã™ã€‚"
+
+msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr "サーマル プラグインã¯ã€ã‚·ã‚¹ãƒ†ãƒ ã®æ¸©åº¦ã‚’モニターã—ã¾ã™ã€‚"
msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
+"unixsock プラグインã¯ã€å®Ÿè¡Œä¸­ã®collectd インスタンスã‹ã‚‰åŽé›†ãƒ‡ãƒ¼ã‚¿ã®èª­ã¿å–ã‚Š"
+"ã«ä½¿ç”¨å¯èƒ½ãªUNIX ソケットを作æˆã—ã¾ã™ã€‚"
msgid "The uptime plugin collects statistics about the uptime of the system."
+msgstr "稼åƒæ™‚é–“ プラグインã¯ã€ã‚·ã‚¹ãƒ†ãƒ ã®ç¨¼åƒæ™‚é–“ã«ã¤ã„ã¦ã®çµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
+
+msgid "Thermal"
+msgstr "サーマル"
+
+msgid "Thermal Plugin Configuration"
+msgstr "サーマル プラグイン設定"
+
+msgid "This plugin collects statistics about the processor context switches."
msgstr ""
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+"ã“ã®ãƒ—ラグインã¯ã€ãƒ—ロセッサー周波数スケーリングã«ã¤ã„ã¦ã®çµ±è¨ˆã‚’åŽé›†ã—ã¾ã™ã€‚"
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
msgstr ""
+"ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€collectdãŒç€ä¿¡æŽ¥ç¶šã‚’å¾…ã¡å—ã‘るインターフェースを設定ã—ã¾"
+"ã™ã€‚"
msgid ""
"This section defines to which servers the locally collected data is sent to."
msgstr ""
+"ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ã«åŽé›†ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿ã‚’é€ä¿¡ã™ã‚‹ã‚µãƒ¼ãƒãƒ¼ã‚’設定ã—ã¾"
+"ã™ã€‚"
msgid "Try to lookup fully qualified hostname"
msgstr ""
msgid "UPS"
-msgstr ""
+msgstr "UPS"
msgid "UPS Plugin Configuration"
-msgstr ""
+msgstr "UPS プラグイン設定"
msgid "UPS name in NUT ups@host format"
-msgstr ""
+msgstr "ups@host å½¢å¼ã®NUT内ã®UPSå"
msgid "UnixSock"
-msgstr ""
+msgstr "UnixSock"
msgid "Unixsock Plugin Configuration"
-msgstr ""
+msgstr "Unixsock プラグイン設定"
msgid "Uptime"
-msgstr ""
+msgstr "稼åƒæ™‚é–“"
msgid "Uptime Plugin Configuration"
-msgstr ""
+msgstr "稼åƒæ™‚間プラグイン設定"
msgid "Use improved naming schema"
msgstr ""
@@ -651,13 +756,13 @@ msgid "Used PID file"
msgstr "使用ã™ã‚‹PIDファイルã®ä¿å­˜å ´æ‰€"
msgid "User"
-msgstr ""
+msgstr "ユーザー"
msgid "Verbose monitoring"
-msgstr ""
+msgstr "詳細モニタリング"
msgid "Wireless"
-msgstr ""
+msgstr "ç„¡ç·š"
msgid "Wireless iwinfo Plugin Configuration"
msgstr "無線LAN iwinfo プラグイン設定"
@@ -665,18 +770,20 @@ msgstr "無線LAN iwinfo プラグイン設定"
msgid ""
"You can install additional collectd-mod-* plugins to enable more statistics."
msgstr ""
+"追加㮠collectd-mod-* プラグインをインストールã™ã‚‹ã“ã¨ã§ã€ã‚ˆã‚Šå¤šãã®çµ±è¨ˆã‚’有"
+"効ã«ã§ãã¾ã™ã€‚"
msgid "e.g. br-ff"
-msgstr ""
+msgstr "例: br-ff"
msgid "e.g. br-lan"
-msgstr ""
+msgstr "例: br-lan"
msgid "e.g. reject-with tcp-reset"
-msgstr ""
+msgstr "例: reject-with tcp-reset"
msgid "max. 16 chars"
-msgstr ""
+msgstr "最大16文字"
msgid "reduces rrd size"
msgstr "rrdファイルã®ã‚µã‚¤ã‚ºã‚’å°ã•ãã—ã¾ã™ã€‚"
@@ -685,7 +792,7 @@ msgid "seconds; multiple separated by space"
msgstr ""
msgid "server interfaces"
-msgstr ""
+msgstr "サーãƒãƒ¼ インターフェース"
#~ msgid "Collectd"
#~ msgstr "Collectd"
diff --git a/applications/luci-app-statistics/po/ms/statistics.po b/applications/luci-app-statistics/po/ms/statistics.po
index 3f32b633b..582314c54 100644
--- a/applications/luci-app-statistics/po/ms/statistics.po
+++ b/applications/luci-app-statistics/po/ms/statistics.po
@@ -34,6 +34,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -76,6 +85,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -121,6 +133,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -253,6 +268,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -304,6 +322,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -598,6 +621,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -605,6 +634,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/no/statistics.po b/applications/luci-app-statistics/po/no/statistics.po
index 945fa79b1..d37bc488f 100644
--- a/applications/luci-app-statistics/po/no/statistics.po
+++ b/applications/luci-app-statistics/po/no/statistics.po
@@ -28,6 +28,15 @@ msgstr "Hoved Katalog"
msgid "Basic monitoring"
msgstr "Enkel overvåking"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "CPU plugin konfigurasjon"
@@ -73,6 +82,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "DF plugin konfigurasjon"
@@ -118,6 +130,9 @@ msgstr "E-Post plugin konfigurasjon"
msgid "Email"
msgstr "Epost"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Aktiver denne plugin"
@@ -255,6 +270,9 @@ msgstr "Overvåk alle lokale lyttende porter"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Overvåk enheter"
@@ -306,6 +324,11 @@ msgstr "Nettverks plugin"
msgid "Network protocol"
msgstr "Nettverks protokoll"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Antall tråder for datainnsamling"
@@ -634,6 +657,12 @@ msgstr ""
"porter."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -643,6 +672,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/pl/statistics.po b/applications/luci-app-statistics/po/pl/statistics.po
index f8176b657..bf2ec9351 100644
--- a/applications/luci-app-statistics/po/pl/statistics.po
+++ b/applications/luci-app-statistics/po/pl/statistics.po
@@ -38,6 +38,15 @@ msgstr "Główny katalog"
msgid "Basic monitoring"
msgstr "Podstawowy monitoring"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Konfiguracja CPU"
@@ -83,6 +92,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Konfiguracja wtyczki Conntrack"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Konfiguracja wtyczki DF"
@@ -128,6 +140,9 @@ msgstr "Konfiguracja wtyczki E-mail"
msgid "Email"
msgstr "E-mail"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "WÅ‚Ä…cz tÄ™ wtyczkÄ™"
@@ -269,6 +284,9 @@ msgstr "Monitoruj wszystkie lokalne otwarte porty"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitoruj urzÄ…dzenia"
@@ -320,6 +338,11 @@ msgstr "Wtyczki sieciowe"
msgid "Network protocol"
msgstr "Protokoły sieciowe"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Liczba wątków do zbierania danych"
@@ -654,6 +677,12 @@ msgstr ""
"wybranych portów."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -663,6 +692,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/pt-br/statistics.po b/applications/luci-app-statistics/po/pt-br/statistics.po
index 92213a8ce..74c4a2603 100644
--- a/applications/luci-app-statistics/po/pt-br/statistics.po
+++ b/applications/luci-app-statistics/po/pt-br/statistics.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-10 03:41+0200\n"
-"PO-Revision-Date: 2014-03-15 22:12+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-02-22 18:27-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "Action (target)"
msgstr "Ação (destino)"
@@ -29,7 +29,7 @@ msgid "Add notification command"
msgstr "Adicionar o comando de notificação"
msgid "Aggregate number of connected users"
-msgstr ""
+msgstr "Numero agregado de usuários conectados"
msgid "Base Directory"
msgstr "Diretório Base"
@@ -37,6 +37,15 @@ msgstr "Diretório Base"
msgid "Basic monitoring"
msgstr "Monitoramento básico"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr "Frequência da CPU"
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr "Configuração do Plugin da Frequência da CPU"
+
msgid "CPU Plugin Configuration"
msgstr "Configuração do plugin CPU"
@@ -82,6 +91,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Configuração do Plugin do Conntrack"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Configuração do plugin DF"
@@ -127,14 +139,17 @@ msgstr "Configuração do plugin E-Mail"
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr "Valor vazio = monitore todos"
+
msgid "Enable this plugin"
msgstr "Habilitar este plugin"
msgid "Entropy"
-msgstr ""
+msgstr "Entropia"
msgid "Entropy Plugin Configuration"
-msgstr ""
+msgstr "Configuração do Plugin de Entropia"
msgid "Exec"
msgstr "Exec"
@@ -156,13 +171,13 @@ msgstr ""
"Encaminhamento entre o endereço de escuta e os endereços dos servidores"
msgid "Gather compression statistics"
-msgstr ""
+msgstr "Obter estatísticas sobre a compressão"
msgid "General plugins"
-msgstr ""
+msgstr "Plugins Gerais"
msgid "Generate a separate graph for each logged user"
-msgstr ""
+msgstr "Gerar um gráfico separado para cada usuário conectado"
msgid "Graphs"
msgstr "Gráficos"
@@ -195,6 +210,7 @@ msgstr ""
msgid "Hold Ctrl to select multiple items or to deselect entries."
msgstr ""
+"Segure o Ctrl para selecionar múltiplos itens ou para retirar entradas. "
msgid "Host"
msgstr "Equipamento"
@@ -250,6 +266,8 @@ msgid ""
"Max values for a period can be used instead of averages when not using 'only "
"average RRAs'"
msgstr ""
+"Valores máximos para um período podem ser usados em vez de médias quando não "
+"estiver usando 'somente RRAs de médias'"
msgid "Maximum allowed connections"
msgstr "Máximo de conexões permitidas"
@@ -267,7 +285,10 @@ msgid "Monitor all local listen ports"
msgstr "Monitorar todas as portas locais"
msgid "Monitor all sensors"
-msgstr ""
+msgstr "Monitorar todas os sensores"
+
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr "Dispositivo(s) de monitoramento / zona(s) térmica(s)"
msgid "Monitor devices"
msgstr "Monitorar dispositivos"
@@ -320,6 +341,14 @@ msgstr "Plugins de rede"
msgid "Network protocol"
msgstr "Protocolo de rede"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+"Nota: como as páginas são renderizadas pelo usuário 'nobody', os arquivos * ."
+"rrd, o diretório de armazenamento e todos os seus diretórios superiores "
+"precisam ser legíveis a todos."
+
msgid "Number of threads for data collection"
msgstr "Número de threads para o coletor de dados"
@@ -333,13 +362,13 @@ msgid "Only create average RRAs"
msgstr "Somente criar RRAs de média"
msgid "OpenVPN"
-msgstr ""
+msgstr "OpenVPN"
msgid "OpenVPN Plugin Configuration"
-msgstr ""
+msgstr "Configuração do Plugin do OpenVPN"
msgid "OpenVPN status files"
-msgstr ""
+msgstr "Arquivos de estado do OpenVPN"
msgid "Options"
msgstr "Opções"
@@ -399,13 +428,13 @@ msgid "Seconds"
msgstr "Segundos"
msgid "Sensor list"
-msgstr ""
+msgstr "Lista de sensores"
msgid "Sensors"
-msgstr ""
+msgstr "Sensores"
msgid "Sensors Plugin Configuration"
-msgstr ""
+msgstr "Configuração do Plugin de Sensores"
msgid "Server host"
msgstr "Endereço do servidor"
@@ -414,13 +443,13 @@ msgid "Server port"
msgstr "Porta do servidor"
msgid "Setup"
-msgstr ""
+msgstr "Configuração"
msgid "Shaping class monitoring"
msgstr "Monitoramento das Classes de Shaping"
msgid "Show max values instead of averages"
-msgstr ""
+msgstr "Mostrar valores máximos em vez de médias"
msgid "Socket file"
msgstr "Arquivo do socket"
@@ -444,10 +473,10 @@ msgid "Specifies what information to collect about the global topology."
msgstr "Especifica quais informações serão coletadas sobre a topologia global."
msgid "Splash Leases"
-msgstr ""
+msgstr "Concessões do Splash"
msgid "Splash Leases Plugin Configuration"
-msgstr ""
+msgstr "Configuração do Plugin das Concessões do Splash"
msgid "Statistics"
msgstr "Estatística"
@@ -496,6 +525,7 @@ msgid ""
"The OpenVPN plugin gathers information about the current vpn connection "
"status."
msgstr ""
+"O plugin OpenVPN reúne informações sobre o status atual da conexão VPN."
msgid ""
"The conntrack plugin collects statistics about the number of tracked "
@@ -548,7 +578,7 @@ msgstr ""
"Plugin::Collectd mas pode ser utilizado de outras maneiras também."
msgid "The entropy plugin collects statistics about the available entropy."
-msgstr ""
+msgstr "O plugin de entropia coleta estatísticas sobre a entropia disponível."
msgid ""
"The exec plugin starts external commands to read values from or to notify "
@@ -639,17 +669,24 @@ msgid ""
"The sensors plugin uses the Linux Sensors framework to gather environmental "
"statistics."
msgstr ""
+"O plugin de sensores usa a estrutura de sensores do Linux para coletar "
+"estatísticas ambientais."
msgid ""
"The splash leases plugin uses libuci to collect statistics about splash "
"leases."
msgstr ""
+"O plug-in de concessões splash usa o libuci para coletar estatísticas sobre "
+"concessões de splash."
msgid ""
"The statistics package uses <a href=\"https://collectd.org/\">Collectd</a> "
"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
"render diagram images."
msgstr ""
+"O pacote de estatísticas usa <a href=\"https://collectd.org/\"> Collectd </"
+"a> para coletar dados e <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</"
+"a> para desenhar os gráficos."
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -659,6 +696,15 @@ msgstr ""
"portas selecionadas."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+"O plugin térmico monitorará a temperatura do sistema. Os dados são "
+"tipicamente lidos de /sys/class/thermal/*/temp ('*' indica o dispositivo "
+"térmico a ser lido, ex:, thermal_zone1)"
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -667,6 +713,22 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+"O plugin de tempo de atividade coleta estatísticas sobre o tempo de "
+"atividade do sistema."
+
+msgid "Thermal"
+msgstr "Térmico"
+
+msgid "Thermal Plugin Configuration"
+msgstr "Configuração do Plugin Térmico"
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+"Este plugin coleta as estatísticas sobre o escalonamento da frequência do "
+"processador."
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
@@ -700,13 +762,13 @@ msgid "Unixsock Plugin Configuration"
msgstr "Configuração do plugin Unixsock"
msgid "Uptime"
-msgstr ""
+msgstr "Tempo de atividade"
msgid "Uptime Plugin Configuration"
-msgstr ""
+msgstr "Configuração do Plugin de Tempo de Atividade"
msgid "Use improved naming schema"
-msgstr ""
+msgstr "Use um esquema de nomeação melhorado"
msgid "Used PID file"
msgstr "Arquivo PID usado"
@@ -726,6 +788,8 @@ msgstr "Configuração do Plugin iwinfo da Rede Sem Fio (Wireless)"
msgid ""
"You can install additional collectd-mod-* plugins to enable more statistics."
msgstr ""
+"Você pode instalar plugins adicionais (collectd-mod-*) para habilitar mais "
+"estatísticas."
msgid "e.g. br-ff"
msgstr "ex: br-ff"
diff --git a/applications/luci-app-statistics/po/pt/statistics.po b/applications/luci-app-statistics/po/pt/statistics.po
index e215df87d..79c7bd03e 100644
--- a/applications/luci-app-statistics/po/pt/statistics.po
+++ b/applications/luci-app-statistics/po/pt/statistics.po
@@ -37,6 +37,15 @@ msgstr "Diretório Base"
msgid "Basic monitoring"
msgstr "Monitoramento básico"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Configuração do plugin CPU"
@@ -82,6 +91,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Configuração do plugin DF"
@@ -127,6 +139,9 @@ msgstr "Configuração do plugin E-Mail"
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Habilitar este plugin"
@@ -268,6 +283,9 @@ msgstr "Monitorar todas as portas locais"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitorar dispositivos"
@@ -319,6 +337,11 @@ msgstr "Plugins de rede"
msgid "Network protocol"
msgstr "Protocolo de rede"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Número de threads para o coletor de dados"
@@ -652,6 +675,12 @@ msgstr ""
"portas selecionadas."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -661,6 +690,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/ro/statistics.po b/applications/luci-app-statistics/po/ro/statistics.po
index a8042b435..c5dfcfe55 100644
--- a/applications/luci-app-statistics/po/ro/statistics.po
+++ b/applications/luci-app-statistics/po/ro/statistics.po
@@ -38,6 +38,15 @@ msgstr "Directorul de baza"
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Configurarea pluginului CPU"
@@ -83,6 +92,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -128,6 +140,9 @@ msgstr ""
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -260,6 +275,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -311,6 +329,11 @@ msgstr "Pluginuri de retea"
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Numarul de threaduri pentru colectarea datelor"
@@ -607,6 +630,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -614,6 +643,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/ru/statistics.po b/applications/luci-app-statistics/po/ru/statistics.po
index 41f811082..3a418dec7 100644
--- a/applications/luci-app-statistics/po/ru/statistics.po
+++ b/applications/luci-app-statistics/po/ru/statistics.po
@@ -39,6 +39,15 @@ msgstr "Ð‘Ð°Ð·Ð¾Ð²Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ"
msgid "Basic monitoring"
msgstr "Ð‘Ð°Ð·Ð¾Ð²Ð°Ñ ÑтатиÑтика"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ CPU"
@@ -83,6 +92,9 @@ msgstr "ОтÑлеживание Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ (Conntrack)"
msgid "Conntrack Plugin Configuration"
msgstr "ÐаÑтройка плагина Conntrack"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ DF"
@@ -128,6 +140,9 @@ msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ E-Mail"
msgid "Email"
msgstr "E-mail"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Включить Ñтот модуль"
@@ -270,6 +285,9 @@ msgstr "Собирать ÑтатиÑтику Ñо вÑех портов, ожи
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Собирать ÑтатиÑтику Ñ ÑƒÑтройÑтв"
@@ -321,6 +339,11 @@ msgstr "Сетевые модули"
msgid "Network protocol"
msgstr "Сетевой протокол"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "КоличеÑтво потоков Ñбора данных"
@@ -650,6 +673,12 @@ msgstr ""
"портах."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -659,6 +688,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/sk/statistics.po b/applications/luci-app-statistics/po/sk/statistics.po
index c8100e3e7..6dba7d09b 100644
--- a/applications/luci-app-statistics/po/sk/statistics.po
+++ b/applications/luci-app-statistics/po/sk/statistics.po
@@ -32,6 +32,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -74,6 +83,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -119,6 +131,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -251,6 +266,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -302,6 +320,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -596,6 +619,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -603,6 +632,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/sv/statistics.po b/applications/luci-app-statistics/po/sv/statistics.po
index a7443b307..bef0f2d6c 100644
--- a/applications/luci-app-statistics/po/sv/statistics.po
+++ b/applications/luci-app-statistics/po/sv/statistics.po
@@ -33,6 +33,15 @@ msgstr "Basmapp"
msgid "Basic monitoring"
msgstr "Standardövervakning"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -78,6 +87,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Konfiguration av insticksprogrammet DF"
@@ -123,6 +135,9 @@ msgstr "Konfiguration av insticksprogrammet E-post"
msgid "Email"
msgstr "E-post"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Aktivera det här insticksprogrammet"
@@ -256,6 +271,9 @@ msgstr "Övervaka alla lokala lyssningsportar"
msgid "Monitor all sensors"
msgstr "Övervaka alla sensorer"
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Övervaka enheter"
@@ -307,6 +325,11 @@ msgstr "Insticksprogram för nätverket"
msgid "Network protocol"
msgstr "Nätverksprotokoll"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Antalet trådar för insamling av data"
@@ -601,6 +624,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -608,6 +637,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/templates/statistics.pot b/applications/luci-app-statistics/po/templates/statistics.pot
index c07f4dc4a..c57a85b76 100644
--- a/applications/luci-app-statistics/po/templates/statistics.pot
+++ b/applications/luci-app-statistics/po/templates/statistics.pot
@@ -25,6 +25,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -67,6 +76,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -112,6 +124,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -244,6 +259,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -295,6 +313,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -589,6 +612,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -596,6 +625,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/tr/statistics.po b/applications/luci-app-statistics/po/tr/statistics.po
index 235ad1cc0..6d7056f3b 100644
--- a/applications/luci-app-statistics/po/tr/statistics.po
+++ b/applications/luci-app-statistics/po/tr/statistics.po
@@ -33,6 +33,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -75,6 +84,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -120,6 +132,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -252,6 +267,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -303,6 +321,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -597,6 +620,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -604,6 +633,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/uk/statistics.po b/applications/luci-app-statistics/po/uk/statistics.po
index 0be5b367b..de17a3caf 100644
--- a/applications/luci-app-statistics/po/uk/statistics.po
+++ b/applications/luci-app-statistics/po/uk/statistics.po
@@ -38,6 +38,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -80,6 +89,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -125,6 +137,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -257,6 +272,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -308,6 +326,11 @@ msgstr ""
msgid "Network protocol"
msgstr "Мережевий протокол"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -602,6 +625,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -609,6 +638,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/vi/statistics.po b/applications/luci-app-statistics/po/vi/statistics.po
index ef99e551a..bdb7f1a3a 100644
--- a/applications/luci-app-statistics/po/vi/statistics.po
+++ b/applications/luci-app-statistics/po/vi/statistics.po
@@ -38,6 +38,15 @@ msgstr "Thư mục Cơ sở"
msgid "Basic monitoring"
msgstr "Monitoring căn bản"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr "Cấu hình Plugin CPU"
@@ -83,6 +92,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "Cấu hình DF plugin"
@@ -128,6 +140,9 @@ msgstr "Cấu hình e-mail plugin"
msgid "Email"
msgstr "Email"
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr "Kích hoạt plugin này"
@@ -267,6 +282,9 @@ msgstr "Monitor tất cả local listen port"
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr "Monitor devices"
@@ -318,6 +336,11 @@ msgstr "Network plugins"
msgid "Network protocol"
msgstr "Network protocol"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr "Số lượng các chủ đỠđể thu thập dữ liệu"
@@ -652,6 +675,12 @@ msgstr ""
"chá»n."
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -661,6 +690,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/po/zh-cn/rrdtool.po b/applications/luci-app-statistics/po/zh-cn/rrdtool.po
index 4e6ee4b4d..d55398ace 100644
--- a/applications/luci-app-statistics/po/zh-cn/rrdtool.po
+++ b/applications/luci-app-statistics/po/zh-cn/rrdtool.po
@@ -2,16 +2,17 @@
# generated from ./applications/luci-statistics/luasrc/i18n/rrdtool.en.lua
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2014-07-23 02:08+0200\n"
-"Last-Translator: Tanyingyu <Tanyingyu@163.com>\n"
+"Project-Id-Version: \n"
+"PO-Revision-Date: 2017-04-15 21:41-0600\n"
+"Last-Translator: liushuyu <liushuyu011@gmail.com>\n"
"Language-Team: none\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 2.0.1\n"
+"POT-Creation-Date: \n"
#. %H: Wireless - Signal Noise Ratio
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:1
@@ -36,12 +37,12 @@ msgstr "ä¿¡å·å¼ºåº¦"
#. %H: Wireless - Signal Quality
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:5
msgid "stat_dg_title_wireless__signal_quality"
-msgstr "无线信å·è´¨é‡"
+msgstr "%H: 无线 - ä¿¡å·è´¨é‡"
#. n
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:6
msgid "stat_dg_label_wireless__signal_quality"
-msgstr "无线信å·è´¨é‡"
+msgstr "n"
#. Signal Quality
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:7
@@ -51,7 +52,7 @@ msgstr "ä¿¡å·è´¨é‡"
#. %H: ICMP Roundtrip Times
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:8
msgid "stat_dg_title_ping"
-msgstr "ping"
+msgstr "%H: ICMP 往返时间"
#. ms
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:9
@@ -61,299 +62,299 @@ msgstr "å“应"
#. %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:10
msgid "stat_ds_ping"
-msgstr "ping"
+msgstr "%di"
#. %H: Firewall - Processed Packets
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:11
msgid "stat_dg_title_iptables__ipt_packets"
-msgstr "iptables包"
+msgstr "%H: 防ç«å¢™ - 已处ç†çš„æ•°æ®åŒ…"
#. Packets/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:12
msgid "stat_dg_label_iptables__ipt_packets"
-msgstr ""
+msgstr "Packets/s"
#. Chain \"%di\"
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:13
msgid "stat_ds_ipt_packets"
-msgstr ""
+msgstr "Chain \\\"%di\\\""
#. %H: Netlink - Transfer on %pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:14
msgid "stat_dg_title_netlink__if_octets"
-msgstr ""
+msgstr "%H: Netlink - %pi 上的数æ®ä¼ è¾“"
#. Bytes/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:15
msgid "stat_dg_label_netlink__if_octets"
-msgstr ""
+msgstr "字节/秒"
#. Bytes (%ds)
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:16
msgid "stat_ds_if_octets"
-msgstr ""
+msgstr "字节 (%ds)"
#. %H: Netlink - Packets on %pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:17
msgid "stat_dg_title_netlink__if_packets"
-msgstr ""
+msgstr "%H: Netlink - %pi çš„æ•°æ®åŒ…"
#. Packets/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:18
msgid "stat_dg_label_netlink__if_packets"
-msgstr ""
+msgstr "Packets/s"
#. Processed (%ds)
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:19
msgid "stat_ds_if_packets"
-msgstr ""
+msgstr "å·²å¤„ç† (%ds)"
#. Dropped (%ds)
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:20
msgid "stat_ds_if_dropped"
-msgstr ""
+msgstr "丢弃 (%ds)"
#. Errors (%ds)
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:21
msgid "stat_ds_if_errors"
-msgstr ""
+msgstr "错误 (%ds)"
#. %H: Netlink - Multicast on %pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:22
msgid "stat_dg_title_netlink__if_multicast"
-msgstr ""
+msgstr "%H: Netlink - %pi 上的多播"
#. Packets/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:23
msgid "stat_dg_label_netlink__if_multicast"
-msgstr ""
+msgstr "Packets/s"
#. Packets
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:24
msgid "stat_ds_if_multicast"
-msgstr ""
+msgstr "æ•°æ®åŒ…"
#. %H: Netlink - Collisions on %pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:25
msgid "stat_dg_title_netlink__if_collisions"
-msgstr ""
+msgstr "%H: Netlink - %pi 上的 Collisions"
#. Collisions/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:26
msgid "stat_dg_label_netlink__if_collisions"
-msgstr ""
+msgstr "Collisions/s"
#. Collisions
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:27
msgid "stat_ds_if_collisions"
-msgstr ""
+msgstr "Collisions"
#. %H: Netlink - Errors on %pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:28
msgid "stat_dg_title_netlink__if_tx_errors"
-msgstr ""
+msgstr "%H: Netlink - %pi 上å‘生的错误"
#. Errors/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:29
msgid "stat_dg_label_netlink__if_tx_errors"
-msgstr ""
+msgstr "错误/秒"
#. %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:30
msgid "stat_ds_if_tx_errors"
-msgstr ""
+msgstr "%di"
#. %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:31
msgid "stat_ds_if_rx_errors"
-msgstr ""
+msgstr "%di"
#. %H: Processes
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:32
msgid "stat_dg_title_processes"
-msgstr ""
+msgstr "%H: 进程"
#. Processes/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:33
msgid "stat_dg_label_processes"
-msgstr ""
+msgstr "进程/秒"
#. %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:34
msgid "stat_ds_ps_state"
-msgstr ""
+msgstr "%di"
#. %H: Process %pi - used cpu time
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:35
msgid "stat_dg_title_processes__ps_cputime"
-msgstr ""
+msgstr "%H: 进程 %s - å ç”¨çš„ CPU 时间"
#. Jiffies
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:36
msgid "stat_dg_label_processes__ps_cputime"
-msgstr ""
+msgstr "Jiffies"
#. system
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:37
msgid "stat_ds_ps_cputime__syst"
-msgstr ""
+msgstr "系统"
#. user
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:38
msgid "stat_ds_ps_cputime__user"
-msgstr ""
+msgstr "用户"
#. %H: Process %pi - threads and processes
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:39
msgid "stat_dg_title_processes__ps_count"
-msgstr ""
+msgstr "%H: 进程 %pi - 进程与线程"
#. Count
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:40
msgid "stat_dg_label_processes__ps_count"
-msgstr ""
+msgstr "个"
#. %ds
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:41
msgid "stat_ds_ps_count"
-msgstr ""
+msgstr "%ds"
#. %H: Process %pi - page faults
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:42
msgid "stat_dg_title_processes__ps_pagefaults"
-msgstr ""
+msgstr "%H: 进程 %pi - 分页错误"
#. Pagefaults
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:43
msgid "stat_dg_label_processes__ps_pagefaults"
-msgstr ""
+msgstr "分页错误"
#. page faults
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:44
msgid "stat_ds_ps_pagefaults"
-msgstr ""
+msgstr "分页错误"
#. %H: Process %pi - virtual memory size
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:45
msgid "stat_dg_title_processes__ps_rss"
-msgstr ""
+msgstr "%H: 进程 %pi - 虚拟内存大å°"
#. Bytes
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:46
msgid "stat_dg_label_processes__ps_rss"
-msgstr ""
+msgstr "字节"
#. virtual memory
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:47
msgid "stat_ds_ps_rss"
-msgstr ""
+msgstr "虚拟内存"
#. %H: Usage on Processor #%pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:48
msgid "stat_dg_title_cpu"
-msgstr ""
+msgstr "%H: 对处ç†å™¨ #%pi çš„å ç”¨"
#. %
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:49
msgid "stat_dg_label_cpu"
-msgstr ""
+msgstr "%"
#. %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:50
msgid "stat_ds_cpu"
-msgstr ""
+msgstr "%di"
#. %H: Transfer on %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:51
msgid "stat_dg_title_interface__if_octets"
-msgstr ""
+msgstr "%H: %di 上的数æ®ä¼ è¾“情况"
#. Bytes/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:52
msgid "stat_dg_label_interface__if_octets"
-msgstr ""
+msgstr "字节/秒"
#. %H: Packets on %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:53
msgid "stat_dg_title_interface__if_packets"
-msgstr ""
+msgstr "%H: %di 上的数æ®åŒ…"
#. Packets/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:54
msgid "stat_dg_label_interface__if_packets"
-msgstr ""
+msgstr "Packets/s"
#. %H: TCP-Connections to Port %pi
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:55
msgid "stat_dg_title_tcpconns"
-msgstr ""
+msgstr "%H: åˆ°ç«¯å£ %pi çš„ TCP 连接"
#. Connections/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:56
msgid "stat_dg_label_tcpconns"
-msgstr ""
+msgstr "连接/秒"
#. %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:57
msgid "stat_ds_tcp_connections"
-msgstr ""
+msgstr "%di"
#. %H: Disk Space Usage on %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:58
msgid "stat_dg_title_df"
-msgstr ""
+msgstr "%H: %di 上的ç£ç›˜å ç”¨æƒ…况"
#. Bytes
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:59
msgid "stat_dg_label_df"
-msgstr ""
+msgstr "字节"
#. %ds
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:60
msgid "stat_ds_df__free"
-msgstr ""
+msgstr "%ds"
#. %ds
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:61
msgid "stat_ds_df__used"
-msgstr ""
+msgstr "%ds"
#. %H: Interrupts
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:62
msgid "stat_dg_title_irq"
-msgstr ""
+msgstr "%H: 中断"
#. Issues/s
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:63
msgid "stat_dg_label_irq"
-msgstr ""
+msgstr "Issues/s"
#. IRQ %di
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:64
msgid "stat_ds_irq"
-msgstr ""
+msgstr "IRQ %di"
#. %H: System Load
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:65
msgid "stat_dg_title_load"
-msgstr ""
+msgstr "%H: 系统负载"
#. Load
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:66
msgid "stat_dg_label_load"
-msgstr ""
+msgstr "è´Ÿè½½"
#. 1 min
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:67
msgid "stat_ds_load__shortterm"
-msgstr ""
+msgstr "1 分钟"
#. 5 min
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:68
msgid "stat_ds_load__midterm"
-msgstr ""
+msgstr "5 分钟"
#. 15 min
#: applications/luci-statistics/luasrc/i18n/rrdtool.en.lua:69
msgid "stat_ds_load__longterm"
-msgstr ""
+msgstr "15 分钟"
diff --git a/applications/luci-app-statistics/po/zh-cn/statistics.po b/applications/luci-app-statistics/po/zh-cn/statistics.po
index 7b3bbfc0c..46cf59fee 100644
--- a/applications/luci-app-statistics/po/zh-cn/statistics.po
+++ b/applications/luci-app-statistics/po/zh-cn/statistics.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-10 03:40+0200\n"
-"PO-Revision-Date: 2014-06-13 15:04+0200\n"
-"Last-Translator: phantasm131 <phantasm131@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-04-15 21:46-0600\n"
+"Last-Translator: liushuyu <liushuyu011@gmail.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 2.0.1\n"
+"Language-Team: \n"
msgid "Action (target)"
msgstr "动作(目标)"
@@ -37,6 +37,15 @@ msgstr "基本目录"
msgid "Basic monitoring"
msgstr "基本监控"
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr "CPU 频率"
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr "CPU 频率æ’件é…ç½®"
+
msgid "CPU Plugin Configuration"
msgstr "CPUæ’件é…ç½®"
@@ -81,6 +90,9 @@ msgstr "Conntrack"
msgid "Conntrack Plugin Configuration"
msgstr "Conntrackæ’件设置"
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr "DFæ’件设置"
@@ -126,14 +138,17 @@ msgstr "E-Mailæ’件é…ç½®"
msgid "Email"
msgstr "电å­é‚®ä»¶"
+msgid "Empty value = monitor all"
+msgstr "留空 = 监控所有"
+
msgid "Enable this plugin"
msgstr "å¯ç”¨è¯¥æ’件"
msgid "Entropy"
-msgstr ""
+msgstr "熵"
msgid "Entropy Plugin Configuration"
-msgstr ""
+msgstr "熵值æ’件é…ç½®"
msgid "Exec"
msgstr "Exec"
@@ -157,7 +172,7 @@ msgid "Gather compression statistics"
msgstr ""
msgid "General plugins"
-msgstr ""
+msgstr "通用æ’件"
msgid "Generate a separate graph for each logged user"
msgstr ""
@@ -189,7 +204,7 @@ msgid ""
msgstr "在这里,你å¯ä»¥å®šä¹‰å„ç§ç›‘控iptables规则临界值。"
msgid "Hold Ctrl to select multiple items or to deselect entries."
-msgstr ""
+msgstr "æŒ‰ä½ Ctrl é”®æ¥é€‰æ‹©æˆ–å–消选择多个项目。"
msgid "Host"
msgstr "主机"
@@ -260,7 +275,10 @@ msgid "Monitor all local listen ports"
msgstr "监测所有本地监å¬ç«¯å£"
msgid "Monitor all sensors"
-msgstr ""
+msgstr "监控所有传感器"
+
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr "监控设备/温感区域"
msgid "Monitor devices"
msgstr "监测设备"
@@ -313,6 +331,13 @@ msgstr "Networkæ’件"
msgid "Network protocol"
msgstr "Networkåè®®"
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+"注æ„:由于页é¢æ˜¯ä»¥ 'nobody' 身份生æˆçš„,因此 *.rrd 文件以åŠåŒ…å«æ­¤æ–‡ä»¶çš„所有父"
+"目录必须全局å¯è¯»ã€‚"
+
msgid "Number of threads for data collection"
msgstr "收集程åºä½¿ç”¨çº¿ç¨‹æ•°"
@@ -326,13 +351,13 @@ msgid "Only create average RRAs"
msgstr "仅创建平å‡RRAs"
msgid "OpenVPN"
-msgstr ""
+msgstr "OpenVPN"
msgid "OpenVPN Plugin Configuration"
-msgstr ""
+msgstr "OpenVPN æ’件é…ç½®"
msgid "OpenVPN status files"
-msgstr ""
+msgstr "OpenVPN 状æ€æ–‡ä»¶"
msgid "Options"
msgstr "选项"
@@ -392,13 +417,13 @@ msgid "Seconds"
msgstr "秒"
msgid "Sensor list"
-msgstr ""
+msgstr "传感器列表"
msgid "Sensors"
-msgstr ""
+msgstr "传感器"
msgid "Sensors Plugin Configuration"
-msgstr ""
+msgstr "传感器æ’件é…ç½®"
msgid "Server host"
msgstr "æœåŠ¡å™¨ä¸»æœº"
@@ -407,7 +432,7 @@ msgid "Server port"
msgstr "æœåŠ¡å™¨ç«¯å£"
msgid "Setup"
-msgstr ""
+msgstr "设置"
msgid "Shaping class monitoring"
msgstr "整形类监控"
@@ -486,7 +511,7 @@ msgstr "OLSRdæ’件通过txtinfo获å–meshed网络信æ¯ã€‚"
msgid ""
"The OpenVPN plugin gathers information about the current vpn connection "
"status."
-msgstr ""
+msgstr "OpenVPN æ’件å¯ä»¥èŽ·å– VPN 连接当å‰çŠ¶æ€"
msgid ""
"The conntrack plugin collects statistics about the number of tracked "
@@ -612,6 +637,9 @@ msgid ""
"to gather data and <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> to "
"render diagram images."
msgstr ""
+"Statistics 软件包使用 <a href=\"https://collectd.org/\">Collectd</a> æ¥æ”¶é›†æ•°"
+"æ®ï¼Œå¹¶ç”¨ <a href=\"http://oss.oetiker.ch/rrdtool/\">RRDtool</a> 生æˆç»Ÿè®¡å›¾"
+"表。"
msgid ""
"The tcpconns plugin collects informations about open tcp connections on "
@@ -619,6 +647,14 @@ msgid ""
msgstr "tcpconnsæ’件,收集选定端å£TCP连接信æ¯ã€‚"
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+"温感æ’件将会监控系统温度。数æ®ä¸»è¦å–自 /sys/class/thermal/*/temp ('*' 表示温"
+"感设备的å字,比如 thermal_zone1) 。"
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr "unixsockæ’件,创建一个unix套接字å¯ç”¨äºŽè¯»å–Collectd实例的收集信æ¯ã€‚"
@@ -626,6 +662,18 @@ msgstr "unixsockæ’件,创建一个unix套接字å¯ç”¨äºŽè¯»å–Collectd实例ç
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr "温感"
+
+msgid "Thermal Plugin Configuration"
+msgstr "温感æ’件é…ç½®"
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr "æ­¤æ’ä»¶ä¼šèŽ·å– CPU 频率调整的数æ®ã€‚"
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
@@ -654,13 +702,13 @@ msgid "Unixsock Plugin Configuration"
msgstr "Unixsockæ’件é…ç½®"
msgid "Uptime"
-msgstr ""
+msgstr "è¿è¡Œæ—¶é—´"
msgid "Uptime Plugin Configuration"
-msgstr ""
+msgstr "è¿è¡Œæ—¶é—´æ’件é…ç½®"
msgid "Use improved naming schema"
-msgstr ""
+msgstr "使用更高级的命å规则"
msgid "Used PID file"
msgstr "正在使用的PID文件"
@@ -679,7 +727,7 @@ msgstr "无线iwinfoæ’件é…ç½®"
msgid ""
"You can install additional collectd-mod-* plugins to enable more statistics."
-msgstr ""
+msgstr "您å¯ä»¥å®‰è£…更多的 collectd-mod-* æ’件以获得更多的统计数æ®ã€‚"
msgid "e.g. br-ff"
msgstr "例如:br-ff"
diff --git a/applications/luci-app-statistics/po/zh-tw/statistics.po b/applications/luci-app-statistics/po/zh-tw/statistics.po
index 9a9ca34a1..cbd6d9d38 100644
--- a/applications/luci-app-statistics/po/zh-tw/statistics.po
+++ b/applications/luci-app-statistics/po/zh-tw/statistics.po
@@ -31,6 +31,15 @@ msgstr ""
msgid "Basic monitoring"
msgstr ""
+msgid "CPU Context Switches Plugin Configuration"
+msgstr ""
+
+msgid "CPU Frequency"
+msgstr ""
+
+msgid "CPU Frequency Plugin Configuration"
+msgstr ""
+
msgid "CPU Plugin Configuration"
msgstr ""
@@ -73,6 +82,9 @@ msgstr ""
msgid "Conntrack Plugin Configuration"
msgstr ""
+msgid "Context Switches"
+msgstr ""
+
msgid "DF Plugin Configuration"
msgstr ""
@@ -118,6 +130,9 @@ msgstr ""
msgid "Email"
msgstr ""
+msgid "Empty value = monitor all"
+msgstr ""
+
msgid "Enable this plugin"
msgstr ""
@@ -250,6 +265,9 @@ msgstr ""
msgid "Monitor all sensors"
msgstr ""
+msgid "Monitor device(s) / thermal zone(s)"
+msgstr ""
+
msgid "Monitor devices"
msgstr ""
@@ -301,6 +319,11 @@ msgstr ""
msgid "Network protocol"
msgstr ""
+msgid ""
+"Note: as pages are rendered by user 'nobody', the *.rrd files, the storage "
+"directory and all its parent directories need to be world readable."
+msgstr ""
+
msgid "Number of threads for data collection"
msgstr ""
@@ -595,6 +618,12 @@ msgid ""
msgstr ""
msgid ""
+"The thermal plugin will monitor temperature of the system. Data is typically "
+"read from /sys/class/thermal/*/temp ( '*' denotes the thermal device to be "
+"read, e.g. thermal_zone1 )"
+msgstr ""
+
+msgid ""
"The unixsock plugin creates a unix socket which can be used to read "
"collected data from a running collectd instance."
msgstr ""
@@ -602,6 +631,18 @@ msgstr ""
msgid "The uptime plugin collects statistics about the uptime of the system."
msgstr ""
+msgid "Thermal"
+msgstr ""
+
+msgid "Thermal Plugin Configuration"
+msgstr ""
+
+msgid "This plugin collects statistics about the processor context switches."
+msgstr ""
+
+msgid "This plugin collects statistics about the processor frequency scaling."
+msgstr ""
+
msgid ""
"This section defines on which interfaces collectd will wait for incoming "
"connections."
diff --git a/applications/luci-app-statistics/root/etc/config/luci_statistics b/applications/luci-app-statistics/root/etc/config/luci_statistics
index 774a8382e..c081a8e72 100644
--- a/applications/luci-app-statistics/root/etc/config/luci_statistics
+++ b/applications/luci-app-statistics/root/etc/config/luci_statistics
@@ -52,6 +52,9 @@ config statistics 'collectd_unixsock'
config statistics 'collectd_conntrack'
option enable '0'
+config statistics 'collectd_contextswitch'
+ option enable '0'
+
config statistics 'collectd_cpu'
option enable '1'
diff --git a/applications/luci-app-statistics/root/usr/bin/stat-genconfig b/applications/luci-app-statistics/root/usr/bin/stat-genconfig
index df9af1526..090344cee 100755
--- a/applications/luci-app-statistics/root/usr/bin/stat-genconfig
+++ b/applications/luci-app-statistics/root/usr/bin/stat-genconfig
@@ -279,6 +279,12 @@ plugins = {
{ }
},
+ contextswitch = {
+ { },
+ { },
+ { }
+ },
+
csv = {
{ "DataDir" },
{ "StoreRates" },
@@ -349,12 +355,6 @@ plugins = {
{ }
},
- madwifi = {
- { "WatchSet" },
- { },
- { "Interfaces", "WatchAdds" }
- },
-
memory = {
{ },
{ },
diff --git a/applications/luci-app-travelmate/Makefile b/applications/luci-app-travelmate/Makefile
index f4b1b0a4e..6170f9d4c 100644
--- a/applications/luci-app-travelmate/Makefile
+++ b/applications/luci-app-travelmate/Makefile
@@ -1,11 +1,11 @@
-#
-# This is free software, licensed under the Apache License, Version 2.0 .
+# Copyright 2017 Dirk Brenken (dev@brenken.org)
+# This is free software, licensed under the Apache License, Version 2.0
#
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI support for Travelmate
-LUCI_DEPENDS:=+travelmate
+LUCI_DEPENDS:=+travelmate +luci-lib-jsonc
LUCI_PKGARCH:=all
include ../../luci.mk
diff --git a/applications/luci-app-travelmate/luasrc/controller/travelmate.lua b/applications/luci-app-travelmate/luasrc/controller/travelmate.lua
index 27c19c4e5..86382f6ae 100644
--- a/applications/luci-app-travelmate/luasrc/controller/travelmate.lua
+++ b/applications/luci-app-travelmate/luasrc/controller/travelmate.lua
@@ -1,11 +1,28 @@
--- Licensed to the public under the Apache License 2.0.
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
module("luci.controller.travelmate", package.seeall)
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local template = require("luci.template")
+local i18n = require("luci.i18n")
+
function index()
if not nixio.fs.access("/etc/config/travelmate") then
return
end
+ entry({"admin", "services", "travelmate"}, firstchild(), _("Travelmate"), 40).dependent = false
+ entry({"admin", "services", "travelmate", "tab_from_cbi"}, cbi("travelmate/overview_tab", {hideresetbtn=true, hidesavebtn=true}), _("Overview"), 10).leaf = true
+ entry({"admin", "services", "travelmate", "logfile"}, call("logread"), _("View Logfile"), 20).leaf = true
+ entry({"admin", "services", "travelmate", "advanced"}, firstchild(), _("Advanced"), 100)
+ entry({"admin", "services", "travelmate", "advanced", "configuration"}, cbi("travelmate/configuration_tab"), _("Edit Travelmate Configuration"), 110).leaf = true
+ entry({"admin", "services", "travelmate", "advanced", "cfg_wireless"}, cbi("travelmate/cfg_wireless_tab"), _("Edit Wireless Configuration"), 120).leaf = true
+ entry({"admin", "services", "travelmate", "advanced", "cfg_network"}, cbi("travelmate/cfg_network_tab"), _("Edit Network Configuration"), 130).leaf = true
+ entry({"admin", "services", "travelmate", "advanced", "cfg_firewall"}, cbi("travelmate/cfg_firewall_tab"), _("Edit Firewall Configuration"), 140).leaf = true
+end
- entry({"admin", "services", "travelmate"}, cbi("travelmate"), _("Travelmate"), 60)
+function logread()
+ local logfile = util.trim(util.exec("logread -e 'travelmate'"))
+ template.render("travelmate/logread", {title = i18n.translate("Travelmate Logfile"), content = logfile})
end
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate.lua
deleted file mode 100644
index 9050ae968..000000000
--- a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate.lua
+++ /dev/null
@@ -1,53 +0,0 @@
--- Licensed to the public under the Apache License 2.0.
-
-m = Map("travelmate", translate("Travelmate"),
- translate("Configuration of the Travelmate package to enable travel router functionality. ") .. [[</p>]] ..
- translate("Brief advice: Create a wwan interface, configure it to use dhcp and " ..
- "add it to the wan zone in firewall. Create the wifi interfaces to be used ('client' mode, " ..
- "assigned to wwan network, left as disabled). Travelmate will try " ..
- "to connect to the known wifi client interfaces in the defined order. ") ..
- [[<a href="https://github.com/openwrt/packages/tree/master/net/travelmate/files/README.md" target="_blank">]]
- .. translate("Link to detailed advice")
- .. [[</a>]] )
-
--- General options
-
-s = m:section(NamedSection, "global", "travelmate", translate("Global options"))
-
-o = s:option(Flag, "trm_enabled", translate("Enable Travelmate"))
-o.rmempty = false
-o.default = 0
-
-o = s:option(Value, "trm_loop", translate("Loop timeout in seconds for wlan monitoring"),
- translate("Default 30, range 5-60"))
-o.rmempty = false
-o.default = 30
-o.datatype = "range(5,60)"
-
-o = s:option(Value, "trm_maxretry", translate("Max. number of connection retries to an uplink"),
- translate("Default 3, range 0-10. Set to 0 to allow unlimited retries"))
-o.rmempty = false
-o.default = 3
-o.datatype = "range(0,10)"
-
--- Extra options
-
-e = m:section(NamedSection, "global", "travelmate", translate("Extra options"))
-
-a = e:option(Flag, "trm_debug", translate("Debug logging"))
-a.rmempty = true
-a.default = a.disabled
-
-a = e:option(Value, "trm_device", translate("Use only one radio, e.g. 'radio0'"),
- translate("Default: empty = use all radios."))
-a.rmempty = true
-a.default = ""
-a.datatype = "uciname"
-
-a = e:option(Flag, "trm_iw", translate("Use iw for scanning"),
- translate("Disable this if you want to use iwinfo instead of iw"))
-a.rmempty = true
-a.default = a.enabled
-
-return m
-
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_firewall_tab.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_firewall_tab.lua
new file mode 100644
index 000000000..009ed805d
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_firewall_tab.lua
@@ -0,0 +1,36 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local trminput = "/etc/config/firewall"
+
+if not nixio.fs.access(trminput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("travelmate/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translate("This form allows you to modify the content of the main firewall configuration file (/etc/config/firewall)."))
+
+f = s:option(TextValue, "data")
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(trminput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(trminput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_network_tab.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_network_tab.lua
new file mode 100644
index 000000000..4d43637d9
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_network_tab.lua
@@ -0,0 +1,36 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local trminput = "/etc/config/network"
+
+if not nixio.fs.access(trminput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("travelmate/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translate("This form allows you to modify the content of the main network configuration file (/etc/config/network)."))
+
+f = s:option(TextValue, "data")
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(trminput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(trminput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_wireless_tab.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_wireless_tab.lua
new file mode 100644
index 000000000..a025c1379
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/cfg_wireless_tab.lua
@@ -0,0 +1,36 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local trminput = "/etc/config/wireless"
+
+if not nixio.fs.access(trminput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("travelmate/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translate("This form allows you to modify the content of the main wireless configuration file (/etc/config/wireless)."))
+
+f = s:option(TextValue, "data")
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(trminput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(trminput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/configuration_tab.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/configuration_tab.lua
new file mode 100644
index 000000000..4233da6ac
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/configuration_tab.lua
@@ -0,0 +1,38 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local util = require("luci.util")
+local trminput = "/etc/config/travelmate"
+
+if not nixio.fs.access(trminput) then
+ m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+ m.reset = false
+ m.submit = false
+ return m
+end
+
+m = SimpleForm("input", nil)
+m:append(Template("travelmate/config_css"))
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+ translate("This form allows you to modify the content of the main travelmate configuration file (/etc/config/travelmate)."))
+
+f = s:option(TextValue, "data")
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+ return nixio.fs.readfile(trminput) or ""
+end
+
+function f.write(self, section, data)
+ return nixio.fs.writefile(trminput, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+ return true
+end
+
+return m
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/overview_tab.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/overview_tab.lua
new file mode 100644
index 000000000..6b07aabae
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/overview_tab.lua
@@ -0,0 +1,165 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local fs = require("nixio.fs")
+local uci = require("uci")
+local json = require("luci.jsonc")
+local nw = require("luci.model.network").init()
+local fw = require("luci.model.firewall").init()
+local uplink = uci.get("network", "trm_wwan") or ""
+local trminput = uci.get("travelmate", "global", "trm_rtfile") or "/tmp/trm_runtime.json"
+local parse = json.parse(fs.readfile(trminput) or "")
+
+m = Map("travelmate", translate("Travelmate"),
+ translate("Configuration of the travelmate package to to enable travel router functionality. ")
+ .. translatef("For further information "
+ .. "<a href=\"%s\" target=\"_blank\">"
+ .. "see online documentation</a>", "https://github.com/openwrt/packages/blob/master/net/travelmate/files/README.md"))
+
+-- Main travelmate options
+
+s = m:section(NamedSection, "global", "travelmate")
+
+o1 = s:option(Flag, "trm_enabled", translate("Enable travelmate"))
+o1.default = o1.disabled
+o1.rmempty = false
+
+o2 = s:option(Flag, "trm_automatic", translate("Enable 'automatic' mode"),
+ translate("Keep travelmate in an active state."))
+o2.default = o2.enabled
+o2.rmempty = false
+
+o3 = s:option(Value, "trm_iface", translate("Restrict interface trigger to certain interface(s)"),
+ translate("Space separated list of interfaces that trigger travelmate processing. "..
+ "To disable event driven (re-)starts remove all entries."))
+o3.rmempty = true
+
+o4 = s:option(Value, "trm_triggerdelay", translate("Trigger delay"),
+ translate("Additional trigger delay in seconds before travelmate processing begins."))
+o4.default = 2
+o4.datatype = "range(1,90)"
+o4.rmempty = false
+
+o5 = s:option(Flag, "trm_debug", translate("Enable verbose debug logging"))
+o5.default = o5.disabled
+o5.rmempty = false
+
+-- Interface setup
+
+if uplink == "" then
+ dv = s:option(DummyValue, "_dummy", translate("Interface Setup"))
+ dv.template = "cbi/nullsection"
+ btn = s:option(Button, "", translate("Create Uplink Interface"),
+ translate("Automatically create a new wireless wan uplink interface 'trm_wwan', configure it to use dhcp and ")
+ .. translate("add it to the wan zone of the firewall. This step has only to be done once."))
+ btn.inputtitle = translate("Add Interface")
+ btn.inputstyle = "apply"
+ btn.disabled = false
+ function btn.write()
+ local name = "trm_wwan"
+ local net = nw:add_network(name, { proto = "dhcp" })
+ if net then
+ nw:save("network")
+ nw:commit("network")
+ local zone = fw:get_zone_by_network("wan")
+ if zone then
+ zone:add_network(name)
+ fw:save("firewall")
+ fw:commit("firewall")
+ end
+ luci.sys.call("env -i /bin/ubus call network reload >/dev/null 2>&1")
+ luci.http.redirect(luci.dispatcher.build_url("admin", "services", "travelmate"))
+ end
+ end
+else
+ dv = s:option(DummyValue, "_dummy", translate("Interface Setup"),
+ translate("<br />&nbsp;Network Interface 'trm_wwan' created successfully. ")
+ .. translatef("Scan &amp; Add new wireless stations via standard "
+ .. "<a href=\"%s\">"
+ .. "Wireless Setup</a>", luci.dispatcher.build_url("admin/network/wireless")))
+ dv.template = "cbi/nullsection"
+end
+
+-- Runtime information
+
+ds = s:option(DummyValue, "_dummy", translate("Runtime information"))
+ds.template = "cbi/nullsection"
+
+dv1 = s:option(DummyValue, "status", translate("Online Status"))
+dv1.template = "travelmate/runtime"
+if parse == nil then
+ dv1.value = translate("n/a")
+elseif parse.data.station_connection == "true" then
+ dv1.value = translate("connected")
+else
+ dv1.value = translate("not connected")
+end
+
+dv2 = s:option(DummyValue, "travelmate_version", translate("Travelmate version"))
+dv2.template = "travelmate/runtime"
+if parse ~= nil then
+ dv2.value = parse.data.travelmate_version or translate("n/a")
+else
+ dv2.value = translate("n/a")
+end
+
+dv3 = s:option(DummyValue, "station_ssid", translate("Station SSID"))
+dv3.template = "travelmate/runtime"
+if parse ~= nil then
+ dv3.value = parse.data.station_ssid or translate("n/a")
+else
+ dv3.value = translate("n/a")
+end
+
+dv4 = s:option(DummyValue, "station_interface", translate("Station Interface"))
+dv4.template = "travelmate/runtime"
+if parse ~= nil then
+ dv4.value = parse.data.station_interface or translate("n/a")
+else
+ dv4.value = translate("n/a")
+end
+
+dv5 = s:option(DummyValue, "station_radio", translate("Station Radio"))
+dv5.template = "travelmate/runtime"
+if parse ~= nil then
+ dv5.value = parse.data.station_radio or translate("n/a")
+else
+ dv5.value = translate("n/a")
+end
+
+dv6 = s:option(DummyValue, "last_rundate", translate("Last rundate"))
+dv6.template = "travelmate/runtime"
+if parse ~= nil then
+ dv6.value = parse.data.last_rundate or translate("n/a")
+else
+ dv6.value = translate("n/a")
+end
+
+-- Extra options
+
+e = m:section(NamedSection, "global", "travelmate", translate("Extra options"),
+translate("Options for further tweaking in case the defaults are not suitable for you."))
+
+e1 = e:option(Value, "trm_radio", translate("Radio selection"),
+ translate("Restrict travelmate to a dedicated radio, e.g. 'radio0'"))
+e1.rmempty = true
+
+e2 = e:option(Value, "trm_maxretry", translate("Connection Limit"),
+ translate("How many times should travelmate try to connect to an Uplink"))
+e2.default = 3
+e2.datatype = "range(1,10)"
+e2.rmempty = false
+
+e3 = e:option(Value, "trm_maxwait", translate("Interface Timeout"),
+ translate("How long should travelmate wait for a successful wlan interface reload"))
+e3.default = 30
+e3.datatype = "range(5,60)"
+e3.rmempty = false
+
+e4 = e:option(Value, "trm_timeout", translate("Overall Timeout"),
+ translate("Timeout in seconds between retries in 'automatic' mode"))
+e4.default = 60
+e4.datatype = "range(5,300)"
+e4.rmempty = false
+
+return m
diff --git a/applications/luci-app-travelmate/luasrc/view/travelmate/config_css.htm b/applications/luci-app-travelmate/luasrc/view/travelmate/config_css.htm
new file mode 100644
index 000000000..53493a18f
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/view/travelmate/config_css.htm
@@ -0,0 +1,10 @@
+<style type="text/css">
+ textarea
+ {
+ border: 1px solid #cccccc;
+ padding: 5px;
+ font-size: 12px;
+ font-family: monospace;
+ resize: none;
+ }
+</style>
diff --git a/applications/luci-app-travelmate/luasrc/view/travelmate/logread.htm b/applications/luci-app-travelmate/luasrc/view/travelmate/logread.htm
new file mode 100644
index 000000000..7f6ff7776
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/view/travelmate/logread.htm
@@ -0,0 +1,15 @@
+<%#
+Copyright 2017 Dirk Brenken (dev@brenken.org)
+This is free software, licensed under the Apache License, Version 2.0
+-%>
+
+<%+header%>
+
+<div class="cbi-map">
+ <fieldset class="cbi-section">
+ <div class="cbi-section-descr"><%:This form shows the syslog output, pre-filtered for travelmate related messages only.%></div>
+ <textarea id="logread_id" style="width: 100%; height: 450px; border: 1px solid #cccccc; padding: 5px; font-size: 12px; font-family: monospace; resize: none;" readonly="readonly" wrap="off" rows="<%=content:cmatch("\n")+2%>"><%=content:pcdata()%></textarea>
+ </fieldset>
+</div>
+
+<%+footer%>
diff --git a/applications/luci-app-travelmate/luasrc/view/travelmate/runtime.htm b/applications/luci-app-travelmate/luasrc/view/travelmate/runtime.htm
new file mode 100644
index 000000000..ee3a4553a
--- /dev/null
+++ b/applications/luci-app-travelmate/luasrc/view/travelmate/runtime.htm
@@ -0,0 +1,10 @@
+<%#
+Copyright 2017 Dirk Brenken (dev@brenken.org)
+This is free software, licensed under the Apache License, Version 2.0
+-%>
+
+<%+cbi/valueheader%>
+
+<input name="runtime" id="runtime" type="text" class="cbi-input-text" style="border: none; box-shadow: none; background-color: #ffffff; color: #0069d6;" value="<%=self:cfgvalue(section)%>" disabled="disabled" />
+
+<%+cbi/valuefooter%>
diff --git a/applications/luci-app-travelmate/po/ja/travelmate.po b/applications/luci-app-travelmate/po/ja/travelmate.po
new file mode 100644
index 000000000..edb041e2b
--- /dev/null
+++ b/applications/luci-app-travelmate/po/ja/travelmate.po
@@ -0,0 +1,298 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.0.1\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: ja\n"
+
+msgid "."
+msgstr "。"
+
+msgid ""
+"Additional trigger delay in seconds before travelmate processing begins."
+msgstr "Travelmate ã®å‡¦ç†ãŒé–‹å§‹ã•ã‚Œã‚‹ã¾ã§ã®ã€è¿½åŠ ã®é…延時間(秒)ã§ã™ã€‚"
+
+msgid "Advanced"
+msgstr "詳細設定"
+
+msgid ""
+"Automatically create a new wireless wan interface, configure it to use dhcp "
+"and add it to the wan zone of the firewall. This step has only to be done "
+"once."
+msgstr ""
+"æ–°ã—ã„ç„¡ç·š WAN インターフェースを自動的ã«ä½œæˆã—ã€DHCP を使用ã™ã‚‹ã‚ˆã†æ§‹æˆã—ã¦"
+"ファイアウォール㮠wan ゾーンã«è¿½åŠ ã—ã¾ã™ã€‚ã“ã®ã‚¹ãƒ†ãƒƒãƒ—ã¯ã€ä¸€åº¦ã ã‘実行ã™ã‚‹å¿…"
+"è¦ãŒã‚ã‚Šã¾ã™ã€‚"
+
+msgid ""
+"Configuration of the travelmate package to to enable travel router "
+"functionality."
+msgstr ""
+"トラベル ルーター機能を有効化ã™ã‚‹ãŸã‚ã®ã€ Travelmate パッケージã®è¨­å®šã§ã™ã€‚"
+
+msgid "Connection Limit"
+msgstr "接続制é™"
+
+msgid "Direct Link: <a href=\"%s\">Wireless Setup</a>"
+msgstr "ダイレクト リンク: <a href=\"%s\">無線設定</a>"
+
+msgid "Edit Firewall Configuration"
+msgstr "ファイアウォール設定ã®ç·¨é›†"
+
+msgid "Edit Network Configuration"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯è¨­å®šã®ç·¨é›†"
+
+msgid "Edit Travelmate Configuration"
+msgstr "Travelmate 設定ã®ç·¨é›†"
+
+msgid "Edit Wireless Configuration"
+msgstr "無線設定ã®ç·¨é›†"
+
+msgid "Enable 'automatic' mode"
+msgstr "'automatic' モードã®æœ‰åŠ¹åŒ–"
+
+msgid "Enable travelmate"
+msgstr "Travelmate ã®æœ‰åŠ¹åŒ–"
+
+msgid "Enable verbose debug logging"
+msgstr "詳細ãªãƒ‡ãƒãƒƒã‚° ログã®æœ‰åŠ¹åŒ–"
+
+msgid "Extra options"
+msgstr "拡張オプション"
+
+msgid "For further information"
+msgstr "詳細情報ã¯"
+
+msgid "How long should travelmate wait for a successful wlan interface reload"
+msgstr ""
+"ç„¡ç·šLAN インターフェースã®ãƒªãƒ­ãƒ¼ãƒ‰ãŒæˆåŠŸã™ã‚‹ã¾ã§ã®ã€Travelmate ã®å¾…機時間ã§"
+"ã™ã€‚"
+
+msgid "How many times should travelmate try to connect to an Uplink"
+msgstr "Travelmate ãŒã‚¢ãƒƒãƒ—リンクã«å¯¾ã—ã¦æŽ¥ç¶šã‚’試行ã™ã‚‹å›žæ•°ã§ã™ã€‚"
+
+msgid "Input file not found, please check your configuration."
+msgstr "入力ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。設定を確èªã—ã¦ãã ã•ã„。"
+
+msgid "Interface Setup"
+msgstr "インターフェース設定"
+
+msgid "Interface Timeout"
+msgstr "インターフェース タイムアウト"
+
+msgid "Keep travelmate in an active state."
+msgstr "Travelmate をアクティブ状態ã§ç¶­æŒã—ã¾ã™ã€‚"
+
+msgid "Last rundate"
+msgstr "最終実行日時"
+
+msgid "Name of the new wireless wan interface"
+msgstr "æ–°ã—ã„ç„¡ç·š WAN ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹å"
+
+msgid ""
+"Network Interface '%s' created successfully. Feel free to scan & add new "
+"stations via standard wireless setup."
+msgstr ""
+"ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ インターフェース '%s' ã®ä½œæˆã«æˆåŠŸã—ã¾ã—ãŸã€‚通常ã®ç„¡ç·šè¨­å®šã«ã¦ã€"
+"スキャンåŠã³æ–°è¦ã‚¹ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã®è¿½åŠ ãŒå¯èƒ½ã§ã™ã€‚"
+
+msgid "Online Status"
+msgstr "オンライン ステータス"
+
+msgid ""
+"Options for further tweaking in case the defaults are not suitable for you."
+msgstr "デフォルトã®è¨­å®šãŒé©åˆ‡ã§ãªã„å ´åˆã€ã•ã‚‰ã«è¨­å®šã™ã‚‹ãŸã‚ã®ã‚ªãƒ—ションã§ã™ã€‚"
+
+msgid "Overall Timeout"
+msgstr "全体タイムアウト"
+
+msgid "Overview"
+msgstr "概è¦"
+
+msgid "Radio selection"
+msgstr "ç„¡ç·šã®é¸æŠž"
+
+msgid "Restrict interface trigger to certain interface(s)"
+msgstr "インターフェース トリガーを特定ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«é™å®šã™ã‚‹"
+
+msgid "Restrict travelmate to a dedicated radio, e.g. 'radio0'"
+msgstr "Travelmate ãŒç‰¹å®šã®ç„¡ç·šã«æŽ¥ç¶šã™ã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚例: 'radio0'"
+
+msgid "Runtime information"
+msgstr "実行情報"
+
+msgid "Setup WWAN Interface"
+msgstr "WWAN インターフェース設定"
+
+msgid ""
+"Space separated list of interfaces that trigger travelmate processing. To "
+"disable event driven (re-)starts remove all entries."
+msgstr ""
+"Travelmate ã®å‡¦ç†ã®ãƒˆãƒªã‚¬ãƒ¼ã¨ãªã‚‹ã€ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒªã‚¹"
+"トã§ã™ã€‚処ç†ã‚’発生ã•ã›ã‚‹ã‚¤ãƒ™ãƒ³ãƒˆã‚’無効ã«ã™ã‚‹ã«ã¯ã€å…¨ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãƒ¼ã‚’削除ã—ã¦"
+"空欄ã«ã—ã¾ã™ã€‚"
+
+msgid "Station Interface"
+msgstr "ステーション インターフェース"
+
+msgid "Station Radio"
+msgstr "ステーション 無線"
+
+msgid "Station SSID"
+msgstr "ステーション SSID"
+
+msgid ""
+"The allowed characters are: <code>A-Z</code>, <code>a-z</code>, <code>0-9</"
+"code> and <code>_</code> (3-15 characters)."
+msgstr ""
+"使用å¯èƒ½æ–‡å­—: <code>A-Z</code>, <code>a-z</code>, <code>0-9</code> and "
+"<code>_</code>(3 - 15文字)"
+
+msgid "The given network interface name already exist"
+msgstr "入力ã•ã‚ŒãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ インターフェースåã¯ã€æ—¢ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚"
+
+msgid ""
+"This form allows you to modify the content of the main firewall "
+"configuration file (/etc/config/firewall)."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ« 設定ファイル (/etc/config/firewall) ã®å†…容"
+"を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"This form allows you to modify the content of the main network configuration "
+"file (/etc/config/network)."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ 設定ファイル (/etc/config/network) ã®å†…容を変"
+"æ›´ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"This form allows you to modify the content of the main travelmate "
+"configuration file (/etc/config/travelmate)."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ Travelmate 設定ファイル (/etc/config/travelmate) ã®å†…容を"
+"変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"This form allows you to modify the content of the main wireless "
+"configuration file (/etc/config/wireless)."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§ã¯ã€ç„¡ç·š 設定ファイル (/etc/config/wireless) ã®å†…容を変更ã™ã‚‹ã“"
+"ã¨ãŒã§ãã¾ã™ã€‚"
+
+msgid ""
+"This form shows the syslog output, pre-filtered for travelmate related "
+"messages only."
+msgstr ""
+"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã«ã¯ã€ã‚·ã‚¹ãƒ†ãƒ ãƒ­ã‚°å†…ã® Travelmate ã«é–¢ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ã¿ãŒè¡¨ç¤ºã•"
+"ã‚Œã¾ã™ã€‚"
+
+msgid "Timeout in seconds between retries in 'automatic' mode"
+msgstr "'automatic' モード時ã«æŽ¥ç¶šã‚’å†è©¦è¡Œã™ã‚‹é–“隔(秒)ã§ã™ã€‚"
+
+msgid "Travelmate"
+msgstr "Travelmate"
+
+msgid "Travelmate Logfile"
+msgstr "Travelmate ログファイル"
+
+msgid "Travelmate version"
+msgstr "Travelmate ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
+
+msgid "Trigger delay"
+msgstr "トリガーé…延"
+
+msgid "View Logfile"
+msgstr "ログファイルã®ç¢ºèª"
+
+msgid "connected"
+msgstr "接続済ã¿"
+
+msgid "n/a"
+msgstr "利用ä¸å¯"
+
+msgid "not connected"
+msgstr "未接続"
+
+msgid "see online documentation"
+msgstr "オンライン ドキュメントを確èªã—ã¦ãã ã•ã„"
+
+#~ msgid ""
+#~ "Brief advice: Create a wwan interface, configure it to use dhcp and add "
+#~ "it to the wan zone in firewall. Create the wifi interfaces to be used "
+#~ "('client' mode, assigned to wwan network, left as disabled). Travelmate "
+#~ "will try to connect to the known wifi client interfaces in the defined "
+#~ "order."
+#~ msgstr ""
+#~ "ç°¡å˜ãªè§£èª¬: 予ã‚WWANインターフェースを作æˆã—ã€DHCPを使用ã™ã‚‹ã‚ˆã†æ§‹æˆã—ã¦"
+#~ "ファイアウォールã®WANゾーンã«è¿½åŠ ã—ã¾ã™ã€‚ã¾ãŸã€ä½¿ç”¨ã•ã‚Œã‚‹ç„¡ç·šã‚¤ãƒ³ã‚¿ãƒ¼"
+#~ "フェースを作æˆã—ã¦ãŠãã¾ã™ï¼ˆ\"クライアント\" モードã€WWANã«å‰²ã‚Šå½“ã¦ã€ç„¡åŠ¹"
+#~ "状態)。Travelmateã¯ã€ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹é †åºã§æ—¢çŸ¥ã®ç„¡ç·šã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆ インター"
+#~ "フェースã¸ã®æŽ¥ç¶šã‚’試行ã—ã¾ã™ã€‚"
+
+#~ msgid ""
+#~ "Configuration of the Travelmate package to enable travel router "
+#~ "functionality."
+#~ msgstr "トラベル ルータ機能を有効ã«ã™ã‚‹ã€Travelmate パッケージã®è¨­å®šã§ã™ã€‚"
+
+#~ msgid "Debug logging"
+#~ msgstr "デãƒãƒƒã‚° ログ"
+
+#~ msgid "Default 20, range 10-60"
+#~ msgstr "既定値 20ã€ç¯„囲 10 - 60"
+
+#~ msgid "Default 3, range 1-10"
+#~ msgstr "既定値 3ã€ç¯„囲 1 - 10"
+
+#~ msgid "Disable this if you want to use iwinfo instead of iw"
+#~ msgstr "iw ã®ä»£ã‚ã‚Šã« iwinfo を使用ã—ãŸã„å ´åˆã€ã“ã®è¨­å®šã‚’無効ã«ã—ã¾ã™ã€‚"
+
+#~ msgid "Enable Travelmate"
+#~ msgstr "Travelmateã®æœ‰åŠ¹åŒ–"
+
+#~ msgid "Global options"
+#~ msgstr "全般オプション"
+
+#~ msgid "Link to detailed advice"
+#~ msgstr "詳細ãªè§£èª¬ã¸ã®ãƒªãƒ³ã‚¯"
+
+#~ msgid "Max. number of connection retries to an uplink"
+#~ msgstr "確立ã¾ã§ã®æŽ¥ç¶šè©¦è¡Œå›žæ•°"
+
+#~ msgid "Max. timeout in seconds for wlan interface reload"
+#~ msgstr "ç„¡ç·šLANインターフェース リロード時ã®æœ€å¤§å¾…機時間(秒)"
+
+#~ msgid "Restrict reload trigger to certain interface(s)"
+#~ msgstr "リロード トリガを特定ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«é™å®šã™ã‚‹"
+
+#~ msgid ""
+#~ "Space separated list of wwan interfaces that trigger reload action. To "
+#~ "disable reload trigger set it to 'false'. Default: empty"
+#~ msgstr ""
+#~ "リロード動作ã®ãƒˆãƒªã‚¬ã¨ãªã‚‹ã€ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸWWAN インターフェースã®ãƒª"
+#~ "ストã§ã™ã€‚リロードã®ãƒˆãƒªã‚¬ã‚’無効ã«ã™ã‚‹ã«ã¯ã€'false' を設定ã—ã¾ã™ã€‚既定値:"
+#~ "(空)"
+
+#~ msgid "Use iw for scanning"
+#~ msgstr "スキャン㫠iw を使用ã™ã‚‹"
+
+#~ msgid "Default 3, range 0-10. Set to 0 to allow unlimited retries"
+#~ msgstr "既定値 3ã€ç¯„囲 0 - 10。å†è©¦è¡Œå›žæ•°ã‚’制é™ã—ãªã„å ´åˆã€0 ã«è¨­å®šã—ã¾ã™ã€‚"
+
+#~ msgid "Default 30, range 5-60"
+#~ msgstr "既定値 30ã€ç¯„囲 5 - 60"
+
+#~ msgid "Default: empty = use all radios."
+#~ msgstr "デフォルト:(空)= å…¨ã¦ã®ç„¡ç·šã‚’使用"
+
+#~ msgid "Loop timeout in seconds for wlan monitoring"
+#~ msgstr "ç„¡ç·šLAN モニターã®ãƒ«ãƒ¼ãƒ— タイムアウト(秒)"
+
+#~ msgid "Use only one radio, e.g. 'radio0'"
+#~ msgstr "å˜ä¸€ã®ç„¡ç·šã®ã¿ä½¿ç”¨ã™ã‚‹ã€€ä¾‹: 'radio0'"
diff --git a/applications/luci-app-travelmate/po/pt-br/travelmate.po b/applications/luci-app-travelmate/po/pt-br/travelmate.po
new file mode 100644
index 000000000..906c698dd
--- /dev/null
+++ b/applications/luci-app-travelmate/po/pt-br/travelmate.po
@@ -0,0 +1,262 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "."
+msgstr ""
+
+msgid ""
+"Additional trigger delay in seconds before travelmate processing begins."
+msgstr ""
+
+msgid "Advanced"
+msgstr ""
+
+msgid ""
+"Automatically create a new wireless wan interface, configure it to use dhcp "
+"and add it to the wan zone of the firewall. This step has only to be done "
+"once."
+msgstr ""
+
+msgid ""
+"Configuration of the travelmate package to to enable travel router "
+"functionality."
+msgstr ""
+
+msgid "Connection Limit"
+msgstr ""
+
+msgid "Direct Link: <a href=\"%s\">Wireless Setup</a>"
+msgstr ""
+
+msgid "Edit Firewall Configuration"
+msgstr ""
+
+msgid "Edit Network Configuration"
+msgstr ""
+
+msgid "Edit Travelmate Configuration"
+msgstr ""
+
+msgid "Edit Wireless Configuration"
+msgstr ""
+
+msgid "Enable 'automatic' mode"
+msgstr ""
+
+msgid "Enable travelmate"
+msgstr ""
+
+msgid "Enable verbose debug logging"
+msgstr ""
+
+msgid "Extra options"
+msgstr "Opções adicionais"
+
+msgid "For further information"
+msgstr ""
+
+msgid "How long should travelmate wait for a successful wlan interface reload"
+msgstr ""
+
+msgid "How many times should travelmate try to connect to an Uplink"
+msgstr ""
+
+msgid "Input file not found, please check your configuration."
+msgstr ""
+
+msgid "Interface Setup"
+msgstr ""
+
+msgid "Interface Timeout"
+msgstr ""
+
+msgid "Keep travelmate in an active state."
+msgstr ""
+
+msgid "Last rundate"
+msgstr ""
+
+msgid "Name of the new wireless wan interface"
+msgstr ""
+
+msgid ""
+"Network Interface '%s' created successfully. Feel free to scan & add new "
+"stations via standard wireless setup."
+msgstr ""
+
+msgid "Online Status"
+msgstr ""
+
+msgid ""
+"Options for further tweaking in case the defaults are not suitable for you."
+msgstr ""
+
+msgid "Overall Timeout"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Radio selection"
+msgstr ""
+
+msgid "Restrict interface trigger to certain interface(s)"
+msgstr ""
+
+msgid "Restrict travelmate to a dedicated radio, e.g. 'radio0'"
+msgstr ""
+
+msgid "Runtime information"
+msgstr ""
+
+msgid "Setup WWAN Interface"
+msgstr ""
+
+msgid ""
+"Space separated list of interfaces that trigger travelmate processing. To "
+"disable event driven (re-)starts remove all entries."
+msgstr ""
+
+msgid "Station Interface"
+msgstr ""
+
+msgid "Station Radio"
+msgstr ""
+
+msgid "Station SSID"
+msgstr ""
+
+msgid ""
+"The allowed characters are: <code>A-Z</code>, <code>a-z</code>, <code>0-9</"
+"code> and <code>_</code> (3-15 characters)."
+msgstr ""
+
+msgid "The given network interface name already exist"
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the main firewall "
+"configuration file (/etc/config/firewall)."
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the main network configuration "
+"file (/etc/config/network)."
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the main travelmate "
+"configuration file (/etc/config/travelmate)."
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the main wireless "
+"configuration file (/etc/config/wireless)."
+msgstr ""
+
+msgid ""
+"This form shows the syslog output, pre-filtered for travelmate related "
+"messages only."
+msgstr ""
+
+msgid "Timeout in seconds between retries in 'automatic' mode"
+msgstr ""
+
+msgid "Travelmate"
+msgstr "Travelmate"
+
+msgid "Travelmate Logfile"
+msgstr ""
+
+msgid "Travelmate version"
+msgstr ""
+
+msgid "Trigger delay"
+msgstr ""
+
+msgid "View Logfile"
+msgstr ""
+
+msgid "connected"
+msgstr ""
+
+msgid "n/a"
+msgstr ""
+
+msgid "not connected"
+msgstr ""
+
+msgid "see online documentation"
+msgstr ""
+
+#~ msgid ""
+#~ "Brief advice: Create a wwan interface, configure it to use dhcp and add "
+#~ "it to the wan zone in firewall. Create the wifi interfaces to be used "
+#~ "('client' mode, assigned to wwan network, left as disabled). Travelmate "
+#~ "will try to connect to the known wifi client interfaces in the defined "
+#~ "order."
+#~ msgstr ""
+#~ "Breve conselho: Crie uma interface wwan, configure-a para usar DHCP e "
+#~ "adicione-a à zona wan no firewall. Crie as interfaces wifi a serem usadas "
+#~ "(modo 'cliente', atribuído à rede wwan, deixado como desativado). O "
+#~ "Travelmate tentará se conectar às interfaces de cliente wifi conhecidas "
+#~ "na ordem definida."
+
+#~ msgid ""
+#~ "Configuration of the Travelmate package to enable travel router "
+#~ "functionality."
+#~ msgstr ""
+#~ "Configuração do pacote Travelmate para permitir a funcionalidade de "
+#~ "roteador de viagem."
+
+#~ msgid "Debug logging"
+#~ msgstr "Registros(log) para depuração"
+
+#~ msgid "Default 20, range 10-60"
+#~ msgstr "Padrão 20, faixa 10-60"
+
+#~ msgid "Default 3, range 1-10"
+#~ msgstr "Padrão 3, faixa 1-10"
+
+#~ msgid "Disable this if you want to use iwinfo instead of iw"
+#~ msgstr "Desabilite isto se você quer usar o iwinfo ao invés do iw"
+
+#~ msgid "Enable Travelmate"
+#~ msgstr "Habilitar o Travelmate"
+
+#~ msgid "Global options"
+#~ msgstr "Opções Globais"
+
+#~ msgid "Link to detailed advice"
+#~ msgstr "Endereço para conselhos detalhados"
+
+#~ msgid "Max. number of connection retries to an uplink"
+#~ msgstr "Máximo número de tentativas de conexão para um enlace"
+
+#~ msgid "Max. timeout in seconds for wlan interface reload"
+#~ msgstr "Tempo limite máximo em segundos para recarregar a interface wlan"
+
+#~ msgid "Restrict reload trigger to certain interface(s)"
+#~ msgstr "Restringir o gatilho de recarga para somente alguma(s) interface(s)"
+
+#~ msgid ""
+#~ "Space separated list of wwan interfaces that trigger reload action. To "
+#~ "disable reload trigger set it to 'false'. Default: empty"
+#~ msgstr ""
+#~ "Lista separada por espaços de interfaces wwan que acionam a ação de "
+#~ "recarga. Para desabilitar o gatilho de recarga, defina-o como 'false'. "
+#~ "Padrão: vazio"
+
+#~ msgid "Use iw for scanning"
+#~ msgstr "Use o iw para escaneamento"
diff --git a/applications/luci-app-travelmate/po/templates/travelmate.pot b/applications/luci-app-travelmate/po/templates/travelmate.pot
index 533b3e263..4542ec85e 100644
--- a/applications/luci-app-travelmate/po/templates/travelmate.pot
+++ b/applications/luci-app-travelmate/po/templates/travelmate.pot
@@ -1,56 +1,190 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
+msgid "."
+msgstr ""
+
msgid ""
-"Brief advice: Create a wwan interface, configure it to use dhcp and add it "
-"to the wan zone in firewall. Create the wifi interfaces to be used ('client' "
-"mode, assigned to wwan network, left as disabled). Travelmate will try to "
-"connect to the known wifi client interfaces in the defined order."
+"Additional trigger delay in seconds before travelmate processing begins."
+msgstr ""
+
+msgid "Advanced"
msgstr ""
msgid ""
-"Configuration of the Travelmate package to enable travel router "
+"Automatically create a new wireless wan interface, configure it to use dhcp "
+"and add it to the wan zone of the firewall. This step has only to be done "
+"once."
+msgstr ""
+
+msgid ""
+"Configuration of the travelmate package to to enable travel router "
"functionality."
msgstr ""
-msgid "Debug logging"
+msgid "Connection Limit"
+msgstr ""
+
+msgid "Direct Link: <a href=\"%s\">Wireless Setup</a>"
+msgstr ""
+
+msgid "Edit Firewall Configuration"
msgstr ""
-msgid "Default 3, range 0-10. Set to 0 to allow unlimited retries"
+msgid "Edit Network Configuration"
msgstr ""
-msgid "Default 30, range 5-60"
+msgid "Edit Travelmate Configuration"
msgstr ""
-msgid "Default: empty = use all radios."
+msgid "Edit Wireless Configuration"
msgstr ""
-msgid "Disable this if you want to use iwinfo instead of iw"
+msgid "Enable 'automatic' mode"
msgstr ""
-msgid "Enable Travelmate"
+msgid "Enable travelmate"
+msgstr ""
+
+msgid "Enable verbose debug logging"
msgstr ""
msgid "Extra options"
msgstr ""
-msgid "Global options"
+msgid "For further information"
+msgstr ""
+
+msgid "How long should travelmate wait for a successful wlan interface reload"
+msgstr ""
+
+msgid "How many times should travelmate try to connect to an Uplink"
+msgstr ""
+
+msgid "Input file not found, please check your configuration."
+msgstr ""
+
+msgid "Interface Setup"
+msgstr ""
+
+msgid "Interface Timeout"
+msgstr ""
+
+msgid "Keep travelmate in an active state."
+msgstr ""
+
+msgid "Last rundate"
+msgstr ""
+
+msgid "Name of the new wireless wan interface"
+msgstr ""
+
+msgid ""
+"Network Interface '%s' created successfully. Feel free to scan & add new "
+"stations via standard wireless setup."
+msgstr ""
+
+msgid "Online Status"
+msgstr ""
+
+msgid ""
+"Options for further tweaking in case the defaults are not suitable for you."
+msgstr ""
+
+msgid "Overall Timeout"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Radio selection"
+msgstr ""
+
+msgid "Restrict interface trigger to certain interface(s)"
+msgstr ""
+
+msgid "Restrict travelmate to a dedicated radio, e.g. 'radio0'"
+msgstr ""
+
+msgid "Runtime information"
+msgstr ""
+
+msgid "Setup WWAN Interface"
+msgstr ""
+
+msgid ""
+"Space separated list of interfaces that trigger travelmate processing. To "
+"disable event driven (re-)starts remove all entries."
+msgstr ""
+
+msgid "Station Interface"
+msgstr ""
+
+msgid "Station Radio"
+msgstr ""
+
+msgid "Station SSID"
+msgstr ""
+
+msgid ""
+"The allowed characters are: <code>A-Z</code>, <code>a-z</code>, <code>0-9</"
+"code> and <code>_</code> (3-15 characters)."
+msgstr ""
+
+msgid "The given network interface name already exist"
+msgstr ""
+
+msgid ""
+"This form allows you to modify the content of the main firewall "
+"configuration file (/etc/config/firewall)."
msgstr ""
-msgid "Link to detailed advice"
+msgid ""
+"This form allows you to modify the content of the main network configuration "
+"file (/etc/config/network)."
msgstr ""
-msgid "Loop timeout in seconds for wlan monitoring"
+msgid ""
+"This form allows you to modify the content of the main travelmate "
+"configuration file (/etc/config/travelmate)."
msgstr ""
-msgid "Max. number of connection retries to an uplink"
+msgid ""
+"This form allows you to modify the content of the main wireless "
+"configuration file (/etc/config/wireless)."
+msgstr ""
+
+msgid ""
+"This form shows the syslog output, pre-filtered for travelmate related "
+"messages only."
+msgstr ""
+
+msgid "Timeout in seconds between retries in 'automatic' mode"
msgstr ""
msgid "Travelmate"
msgstr ""
-msgid "Use iw for scanning"
+msgid "Travelmate Logfile"
+msgstr ""
+
+msgid "Travelmate version"
+msgstr ""
+
+msgid "Trigger delay"
+msgstr ""
+
+msgid "View Logfile"
+msgstr ""
+
+msgid "connected"
+msgstr ""
+
+msgid "n/a"
+msgstr ""
+
+msgid "not connected"
msgstr ""
-msgid "Use only one radio, e.g. 'radio0'"
+msgid "see online documentation"
msgstr ""
diff --git a/applications/luci-app-uhttpd/Makefile b/applications/luci-app-uhttpd/Makefile
index 9a2cf462e..301477066 100644
--- a/applications/luci-app-uhttpd/Makefile
+++ b/applications/luci-app-uhttpd/Makefile
@@ -11,16 +11,9 @@ LUCI_TITLE:=uHTTPd Webserver Configuration
LUCI_DEPENDS:=+uhttpd
LUCI_PKGARCH:=all
-PKG_NAME:=luci-app-uhttpd
-PKG_VERSION:=1.0.0
-PKG_RELEASE:=1
PKG_LICENSE:=Apache-2.0
PKG_MAINTAINER:=Daniel Dickinson <openwrt@daniel.thecshore.com>
-PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
-
-include $(INCLUDE_DIR)/package.mk
-
LUA_TARGET:=source
include ../../luci.mk
diff --git a/applications/luci-app-uhttpd/po/ja/uhttpd.po b/applications/luci-app-uhttpd/po/ja/uhttpd.po
new file mode 100644
index 000000000..572903404
--- /dev/null
+++ b/applications/luci-app-uhttpd/po/ja/uhttpd.po
@@ -0,0 +1,213 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2017-01-01 18:11+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Language-Team: \n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"X-Poedit-Basepath: .\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+msgid ""
+"(/old/path=/new/path) or (just /old/path which becomes /cgi-prefix/old/path)"
+msgstr ""
+"(/old/path=/new/path) ã¾ãŸã¯ (just /old/path which becomes /cgi-prefix/old/"
+"path)"
+
+msgid "404 Error"
+msgstr "404 エラー"
+
+msgid "A lightweight single-threaded HTTP(S) server"
+msgstr "軽é‡ãªã‚·ãƒ³ã‚°ãƒ« スレッド HTTP(S) サーãƒãƒ¼ã§ã™ã€‚"
+
+msgid "Advanced Settings"
+msgstr "詳細設定"
+
+msgid "Aliases"
+msgstr "エイリアス"
+
+msgid "Base directory for files to be served"
+msgstr "サーãƒãƒ¼ãŒãƒ›ã‚¹ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ™ãƒ¼ã‚¹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚"
+
+msgid "Bind to specific interface:port (by specifying interface address"
+msgstr ""
+"インターフェースã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’使用ã—ã¦ã€ç‰¹å®šã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¨ãƒãƒ¼ãƒˆã«é–¢é€£ä»˜"
+"ã‘ã¾ã™ã€‚"
+
+msgid "CGI filetype handler"
+msgstr "CGIãƒ•ã‚¡ã‚¤ãƒ«å½¢å¼ ãƒãƒ³ãƒ‰ãƒ©ãƒ¼"
+
+msgid "CGI is disabled if not present."
+msgstr "指定ã—ãªã„å ´åˆã€CGIã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚"
+
+msgid "Config file (e.g. for credentials for Basic Auth)"
+msgstr "設定ファイル(例: 基本èªè¨¼ç”¨ã®è³‡æ ¼æƒ…報)"
+
+msgid "Connection reuse"
+msgstr "接続ã®å†ä½¿ç”¨"
+
+msgid "Country"
+msgstr "国"
+
+msgid "Disable JSON-RPC authorization via ubus session API"
+msgstr "ubus セッションAPI経由ã®JSON-RPCèªè¨¼ã‚’無効ã«ã™ã‚‹"
+
+msgid "Do not follow symlinks outside document root"
+msgstr "ドキュメント ルート外ã¸ã®ã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯ã‚’追éšã—ãªã„"
+
+msgid "Do not generate directory listings."
+msgstr "ディレクトリã®å¾…ã¡å—ã‘を生æˆã—ãªã„"
+
+msgid "Document root"
+msgstr "ドキュメント ルート"
+
+msgid "E.g specify with index.html and index.php when using PHP"
+msgstr "index.html ã‚„ã€PHPを使用ã—ã¦ã„ã‚‹ã¨ã㯠index.php を設定ã—ã¾ã™ã€‚"
+
+msgid "Embedded Lua interpreter is disabled if not present."
+msgstr "指定ã—ãªã„å ´åˆã€çµ„è¾¼ã¿Lua インタープリタã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚"
+
+msgid "Enable JSON-RPC Cross-Origin Resource Support"
+msgstr ""
+
+msgid "For settings primarily geared to serving more than the web UI"
+msgstr "主ã«ã€Web UI以上ã®ã‚‚ã®ã‚’æä¾›ã™ã‚‹ã“ã¨ã‚’対象ã¨ã—ãŸè¨­å®šã§ã™ã€‚"
+
+msgid "Full Web Server Settings"
+msgstr "完全ãªWebサーãƒãƒ¼è¨­å®š"
+
+msgid "Full real path to handler for Lua scripts"
+msgstr "Lua スクリプトã¸ã®çµ¶å¯¾ãƒ‘ス"
+
+msgid "General Settings"
+msgstr "一般設定"
+
+msgid "HTTP listeners (address:port)"
+msgstr "HTTP å¾…ã¡å—ã‘(アドレス:ãƒãƒ¼ãƒˆï¼‰"
+
+msgid "HTTPS Certificate (DER Encoded)"
+msgstr "HTTPS 証明書(DER エンコード)"
+
+msgid "HTTPS Private Key (DER Encoded)"
+msgstr "HTTPS 秘密éµï¼ˆDER エンコード)"
+
+msgid "HTTPS listener (address:port)"
+msgstr "HTTPS å¾…ã¡å—ã‘(アドレス:ãƒãƒ¼ãƒˆï¼‰"
+
+msgid "Ignore private IPs on public interface"
+msgstr "公開å´ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã§ã®ãƒ—ライベートIPを無視ã™ã‚‹"
+
+msgid "Index page(s)"
+msgstr "インデックス ページ"
+
+msgid ""
+"Interpreter to associate with file endings ('suffix=handler', e.g. '.php=/"
+"usr/bin/php-cgi')"
+msgstr ""
+"ファイル拡張å­ã«é–¢é€£ä»˜ã‘るインタープリタã§ã™ã€‚('suffix=handler'ã€ä¾‹: '.php=/"
+"usr/bin/php-cgi')"
+
+msgid "Length of key in bits"
+msgstr "éµã®ãƒ“ット数"
+
+msgid "Location"
+msgstr "場所"
+
+msgid "Maximum number of connections"
+msgstr "最大接続数"
+
+msgid "Maximum number of script requests"
+msgstr "スクリプトã®æœ€å¤§ãƒªã‚¯ã‚¨ã‚¹ãƒˆæ•°"
+
+msgid "Maximum wait time for Lua, CGI, or ubus execution"
+msgstr "Luaã‚„CGIã€ubus実行ã®æœ€å¤§å¾…機時間"
+
+msgid "Maximum wait time for network activity"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティã®æœ€å¤§å¾…機時間"
+
+msgid "Override path for ubus socket"
+msgstr "ubus ソケットã®ãƒ‘スを上書ãã™ã‚‹"
+
+msgid "Path prefix for CGI scripts"
+msgstr "CGI スクリプトã®ãƒ‘スプレフィクス"
+
+msgid ""
+"Prevent access from private (RFC1918) IPs on an interface if it has an "
+"public IP address"
+msgstr ""
+"グローãƒãƒ« IPアドレスをæŒã¤ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã§ã¯ã€ãƒ—ライベート IP (RFC1918) ã‹"
+"らã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’ブロックã—ã¾ã™ã€‚"
+
+msgid "Realm for Basic Auth"
+msgstr "基本èªè¨¼ã®é ˜åŸŸå"
+
+msgid "Redirect all HTTP to HTTPS"
+msgstr "å…¨ã¦ã®HTTPã‚’HTTPSã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã™ã‚‹"
+
+msgid "Remove configuration for certificate and key"
+msgstr "証明書ã¨éµã®è¨­å®šã‚’削除ã™ã‚‹"
+
+msgid "Remove old certificate and key"
+msgstr "å¤ã„証明書ã¨éµã‚’削除ã™ã‚‹"
+
+msgid "Server Hostname"
+msgstr "サーãƒãƒ¼ ホストå"
+
+msgid ""
+"Settings which are either rarely needed or which affect serving the WebUI"
+msgstr "ã¾ã‚Œã«å¿…è¦ã¨ã•ã‚Œã‚‹è¨­å®šã€ã¾ãŸã¯Web UIã«å½±éŸ¿ã™ã‚‹è¨­å®šã§ã™ã€‚"
+
+msgid "State"
+msgstr "ステータス"
+
+msgid "TCP Keepalive"
+msgstr "TCP キープアライブ"
+
+msgid "This permanently deletes the cert, key, and configuration to use same."
+msgstr ""
+
+msgid "Valid for # of Days"
+msgstr "有効日数"
+
+msgid ""
+"Virtual URL or CGI script to display on status '404 Not Found'. Must begin "
+"with '/'"
+msgstr ""
+
+msgid "Virtual path prefix for Lua scripts"
+msgstr "Lua スクリプトã¸ã®ä»®æƒ³ãƒ‘スプレフィクス"
+
+msgid "Virtual path prefix for ubus via JSON-RPC integration"
+msgstr ""
+
+msgid "Will not use HTTP authentication if not present"
+msgstr "指定ã—ãªã„å ´åˆã€HTTP èªè¨¼ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。"
+
+msgid "a.k.a CommonName"
+msgstr "共通å"
+
+msgid "uHTTPd"
+msgstr "uHTTPd"
+
+msgid "uHTTPd Self-signed Certificate Parameters"
+msgstr "uHTTPd 自己署å証明書 パラメーター"
+
+msgid ""
+"uHTTPd will generate a new self-signed certificate using the configuration "
+"shown below."
+msgstr "uHTTPd ã¯ã€ä»¥ä¸‹ã«è¡¨ç¤ºã—ãŸè¨­å®šã§æ–°ã—ã„自己署å証明書を生æˆã—ã¾ã™ã€‚"
+
+msgid "ubus integration is disabled if not present"
+msgstr ""
+
+#~ msgid ""
+#~ "Virtual URL or CGI script to display on status '404 Not Found'. Must "
+#~ "begin with '/'"
+#~ msgstr ""
+#~ "'404 Not Found' ステータスを表示ã™ã‚‹ã€ä»®æƒ³URLã¾ãŸã¯CGIスクリプトã§ã™ã€‚'/' "
+#~ "ã‹ã‚‰å§‹ã¾ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚"
diff --git a/applications/luci-app-uhttpd/po/pt-br/uhttpd.po b/applications/luci-app-uhttpd/po/pt-br/uhttpd.po
new file mode 100644
index 000000000..af68b9e14
--- /dev/null
+++ b/applications/luci-app-uhttpd/po/pt-br/uhttpd.po
@@ -0,0 +1,208 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid ""
+"(/old/path=/new/path) or (just /old/path which becomes /cgi-prefix/old/path)"
+msgstr ""
+"(/old/path=/new/path) ou (just /old/path que se torna /cgi-prefix/old/path)"
+
+msgid "404 Error"
+msgstr "Erro 404"
+
+msgid "A lightweight single-threaded HTTP(S) server"
+msgstr "Um servidor HTTP(S) leve de únida thread."
+
+msgid "Advanced Settings"
+msgstr "Opções Avançadas"
+
+msgid "Aliases"
+msgstr "Pseudônimos (Aliases)"
+
+msgid "Base directory for files to be served"
+msgstr "Diretório Base para publicar arquivos"
+
+msgid "Bind to specific interface:port (by specifying interface address"
+msgstr ""
+"Escute em uma interface:porta específica (especificando o endereço da "
+"interface"
+
+msgid "CGI filetype handler"
+msgstr "Interpretador de tipo de arquivo CGI"
+
+msgid "CGI is disabled if not present."
+msgstr "O CGI estará desabilitado se não presente."
+
+msgid "Config file (e.g. for credentials for Basic Auth)"
+msgstr "Arquivo de configuração (ex: credenciais para autenticação básica)"
+
+msgid "Connection reuse"
+msgstr "Reutilizar conexão"
+
+msgid "Country"
+msgstr "País"
+
+msgid "Disable JSON-RPC authorization via ubus session API"
+msgstr "Desabilita a autorização JSON-RPC através da API de sessão ubus"
+
+msgid "Do not follow symlinks outside document root"
+msgstr "Não siga ligações simbólicas (symlinks) para fora do documento raiz"
+
+msgid "Do not generate directory listings."
+msgstr "Não gere listagens de diretórios"
+
+msgid "Document root"
+msgstr "Documento Raiz"
+
+msgid "E.g specify with index.html and index.php when using PHP"
+msgstr "Ex: use index.html e index.php quando usar PHP"
+
+msgid "Embedded Lua interpreter is disabled if not present."
+msgstr "O interpretador Lua embutido será desabilitado se não presente."
+
+msgid "Enable JSON-RPC Cross-Origin Resource Support"
+msgstr "Habilite o suporte para recursos JSON-RPC de origem cruzada"
+
+msgid "For settings primarily geared to serving more than the web UI"
+msgstr "Para ajustes envolvidos com mais do que prover a interface web"
+
+msgid "Full Web Server Settings"
+msgstr "Configurações Completas do Servidor Web"
+
+msgid "Full real path to handler for Lua scripts"
+msgstr "Caminho completo para o interpretador de scripts Lua"
+
+msgid "General Settings"
+msgstr "Configurações Gerais"
+
+msgid "HTTP listeners (address:port)"
+msgstr "Escutas do HTTP (endereço:porta)"
+
+msgid "HTTPS Certificate (DER Encoded)"
+msgstr "Certificado do HTTPS (codificado em formato PEM)"
+
+msgid "HTTPS Private Key (DER Encoded)"
+msgstr "Chave Privada do HTTPS (codificado como DER)"
+
+msgid "HTTPS listener (address:port)"
+msgstr "Escuta do HTTPS (endereço:porta)"
+
+msgid "Ignore private IPs on public interface"
+msgstr "Ignore endereços IP privados na interface pública"
+
+msgid "Index page(s)"
+msgstr "Página(s) Ãndice(s)"
+
+msgid ""
+"Interpreter to associate with file endings ('suffix=handler', e.g. '.php=/"
+"usr/bin/php-cgi')"
+msgstr ""
+"Interpretador para associar com extensões de arquivos "
+"('extensão=interpretador', ex: '.php=/usr/bin/php-cgi')"
+
+msgid "Length of key in bits"
+msgstr "Comprimento da chave em bits"
+
+msgid "Location"
+msgstr "Localização"
+
+msgid "Maximum number of connections"
+msgstr "Número máximo de requisições para script"
+
+msgid "Maximum number of script requests"
+msgstr "Número máximo de requisições para script"
+
+msgid "Maximum wait time for Lua, CGI, or ubus execution"
+msgstr "Tempo máximo de espera para execuções de Lua, CGI ou ubus"
+
+msgid "Maximum wait time for network activity"
+msgstr "Tempo máximo de espera para atividade na rede"
+
+msgid "Override path for ubus socket"
+msgstr "Sobrescrever o caminho do socket ubus"
+
+msgid "Path prefix for CGI scripts"
+msgstr "Prefixo do caminho para scripts CGI"
+
+msgid ""
+"Prevent access from private (RFC1918) IPs on an interface if it has an "
+"public IP address"
+msgstr ""
+"Evite acesso de endereços privados (RFC1918) na interface que tem um "
+"endereço IP público"
+
+msgid "Realm for Basic Auth"
+msgstr "Reino para Autenticação Simples"
+
+msgid "Redirect all HTTP to HTTPS"
+msgstr "Redirecionar todo tráfego HTTP para HTTPS"
+
+msgid "Remove configuration for certificate and key"
+msgstr "Remove a configuração para o certificado e chave"
+
+msgid "Remove old certificate and key"
+msgstr "Remove os certificados e chaves antigas"
+
+msgid "Server Hostname"
+msgstr "Nome do Servidor"
+
+msgid ""
+"Settings which are either rarely needed or which affect serving the WebUI"
+msgstr "Ajustes que são raramente usadas ou que afetam a interface web"
+
+msgid "State"
+msgstr "Estado"
+
+msgid "TCP Keepalive"
+msgstr "Manter conexões TCP abertas (Keepalive)"
+
+msgid "This permanently deletes the cert, key, and configuration to use same."
+msgstr "Isto apaga permanentemente o certificado, a chave e a configuração."
+
+msgid "Valid for # of Days"
+msgstr "Valido por # dias"
+
+msgid ""
+"Virtual URL or CGI script to display on status '404 Not Found'. Must begin "
+"with '/'"
+msgstr ""
+"URL virtual ou script CGI para mostrar quando ocorrer erro '404 Não "
+"Encontrado'. Deve começar com '/'"
+
+msgid "Virtual path prefix for Lua scripts"
+msgstr "Prefixo do caminho virtual para scripts Lua"
+
+msgid "Virtual path prefix for ubus via JSON-RPC integration"
+msgstr "Prefixo do caminho virtual para o ubus através da integração JSON-RPC"
+
+msgid "Will not use HTTP authentication if not present"
+msgstr "Não usar autenticação HTTP se não presente"
+
+msgid "a.k.a CommonName"
+msgstr "também conhecido como Nome Comum"
+
+msgid "uHTTPd"
+msgstr "uHTTPd"
+
+msgid "uHTTPd Self-signed Certificate Parameters"
+msgstr "Parâmetros do Certificado Auto-assinado do uHTTPd"
+
+msgid ""
+"uHTTPd will generate a new self-signed certificate using the configuration "
+"shown below."
+msgstr ""
+"o uHTTPd gerará um certificado auto-assinado usando a configuração mostrada "
+"abaixo."
+
+msgid "ubus integration is disabled if not present"
+msgstr "A integração com o ubus será desativada se não presente"
diff --git a/applications/luci-app-uhttpd/po/templates/uhttpd.pot b/applications/luci-app-uhttpd/po/templates/uhttpd.pot
new file mode 100644
index 000000000..5503450e0
--- /dev/null
+++ b/applications/luci-app-uhttpd/po/templates/uhttpd.pot
@@ -0,0 +1,186 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid ""
+"(/old/path=/new/path) or (just /old/path which becomes /cgi-prefix/old/path)"
+msgstr ""
+
+msgid "404 Error"
+msgstr ""
+
+msgid "A lightweight single-threaded HTTP(S) server"
+msgstr ""
+
+msgid "Advanced Settings"
+msgstr ""
+
+msgid "Aliases"
+msgstr ""
+
+msgid "Base directory for files to be served"
+msgstr ""
+
+msgid "Bind to specific interface:port (by specifying interface address"
+msgstr ""
+
+msgid "CGI filetype handler"
+msgstr ""
+
+msgid "CGI is disabled if not present."
+msgstr ""
+
+msgid "Config file (e.g. for credentials for Basic Auth)"
+msgstr ""
+
+msgid "Connection reuse"
+msgstr ""
+
+msgid "Country"
+msgstr ""
+
+msgid "Disable JSON-RPC authorization via ubus session API"
+msgstr ""
+
+msgid "Do not follow symlinks outside document root"
+msgstr ""
+
+msgid "Do not generate directory listings."
+msgstr ""
+
+msgid "Document root"
+msgstr ""
+
+msgid "E.g specify with index.html and index.php when using PHP"
+msgstr ""
+
+msgid "Embedded Lua interpreter is disabled if not present."
+msgstr ""
+
+msgid "Enable JSON-RPC Cross-Origin Resource Support"
+msgstr ""
+
+msgid "For settings primarily geared to serving more than the web UI"
+msgstr ""
+
+msgid "Full Web Server Settings"
+msgstr ""
+
+msgid "Full real path to handler for Lua scripts"
+msgstr ""
+
+msgid "General Settings"
+msgstr ""
+
+msgid "HTTP listeners (address:port)"
+msgstr ""
+
+msgid "HTTPS Certificate (DER Encoded)"
+msgstr ""
+
+msgid "HTTPS Private Key (DER Encoded)"
+msgstr ""
+
+msgid "HTTPS listener (address:port)"
+msgstr ""
+
+msgid "Ignore private IPs on public interface"
+msgstr ""
+
+msgid "Index page(s)"
+msgstr ""
+
+msgid ""
+"Interpreter to associate with file endings ('suffix=handler', e.g. '.php=/"
+"usr/bin/php-cgi')"
+msgstr ""
+
+msgid "Length of key in bits"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Maximum number of connections"
+msgstr ""
+
+msgid "Maximum number of script requests"
+msgstr ""
+
+msgid "Maximum wait time for Lua, CGI, or ubus execution"
+msgstr ""
+
+msgid "Maximum wait time for network activity"
+msgstr ""
+
+msgid "Override path for ubus socket"
+msgstr ""
+
+msgid "Path prefix for CGI scripts"
+msgstr ""
+
+msgid ""
+"Prevent access from private (RFC1918) IPs on an interface if it has an "
+"public IP address"
+msgstr ""
+
+msgid "Realm for Basic Auth"
+msgstr ""
+
+msgid "Redirect all HTTP to HTTPS"
+msgstr ""
+
+msgid "Remove configuration for certificate and key"
+msgstr ""
+
+msgid "Remove old certificate and key"
+msgstr ""
+
+msgid "Server Hostname"
+msgstr ""
+
+msgid ""
+"Settings which are either rarely needed or which affect serving the WebUI"
+msgstr ""
+
+msgid "State"
+msgstr ""
+
+msgid "TCP Keepalive"
+msgstr ""
+
+msgid "This permanently deletes the cert, key, and configuration to use same."
+msgstr ""
+
+msgid "Valid for # of Days"
+msgstr ""
+
+msgid ""
+"Virtual URL or CGI script to display on status '404 Not Found'. Must begin "
+"with '/'"
+msgstr ""
+
+msgid "Virtual path prefix for Lua scripts"
+msgstr ""
+
+msgid "Virtual path prefix for ubus via JSON-RPC integration"
+msgstr ""
+
+msgid "Will not use HTTP authentication if not present"
+msgstr ""
+
+msgid "a.k.a CommonName"
+msgstr ""
+
+msgid "uHTTPd"
+msgstr ""
+
+msgid "uHTTPd Self-signed Certificate Parameters"
+msgstr ""
+
+msgid ""
+"uHTTPd will generate a new self-signed certificate using the configuration "
+"shown below."
+msgstr ""
+
+msgid "ubus integration is disabled if not present"
+msgstr ""
diff --git a/applications/luci-app-unbound/luasrc/model/cbi/unbound.lua b/applications/luci-app-unbound/luasrc/model/cbi/unbound.lua
index 22f020021..847c98a3e 100644
--- a/applications/luci-app-unbound/luasrc/model/cbi/unbound.lua
+++ b/applications/luci-app-unbound/luasrc/model/cbi/unbound.lua
@@ -1,29 +1,33 @@
-- Copyright 2008 Steven Barth <steven@midlink.org>
-- Copyright 2016 Eric Luehrsen <ericluehrsen@hotmail.com>
+-- Copyright 2016 Dan Luedtke <mail@danrl.com>
-- Licensed to the public under the Apache License 2.0.
m = Map("unbound", translate("Recursive DNS"),
translate("Unbound is a validating, recursive, and caching DNS resolver."))
-
-s = m:section(TypedSection, "unbound", translate("Unbound Settings"))
-s.addremove = false
-s.anonymous = true
-s:tab("service", translate("Unbound Service"))
-s:tab("resource", translate("Unbound Resources"))
-s:tab("dnsmasq", translate("Dnsmasq Link"))
+s1 = m:section(TypedSection, "unbound")
+s1.addremove = false
+s1.anonymous = true
+s1:tab("service", translate("Basic Settings"))
+s1:tab("advanced", translate("Advanced Settings"))
+s1:tab("resource", translate("Resource Settings"))
---Enable Unbound
+--LuCI or Not
-e = s:taboption("service", Flag, "enabled", translate("Enable Unbound:"),
+ena = s1:taboption("service", Flag, "enabled", translate("Enable Unbound:"),
translate("Enable the initialization scripts for Unbound"))
-e.rmempty = false
+ena.rmempty = false
-function e.cfgvalue(self, section)
+mcf = s1:taboption("service", Flag, "manual_conf", translate("Manual Conf:"),
+ translate("Skip UCI and use /etc/unbound/unbound.conf"))
+mcf.rmempty = false
+
+function ena.cfgvalue(self, section)
return luci.sys.init.enabled("unbound") and self.enabled or self.disabled
end
-function e.write(self, section, value)
+function ena.write(self, section, value)
if value == "1" then
luci.sys.init.enable("unbound")
luci.sys.call("/etc/init.d/unbound start >/dev/null")
@@ -35,61 +39,136 @@ function e.write(self, section, value)
return Flag.write(self, section, value)
end
---Service Tab
-
-mcf = s:taboption("service", Flag, "manual_conf", translate("Manual Conf:"),
- translate("Skip UCI and use /etc/unbound/unbound.conf"))
-mcf.rmempty = false
+--Basic Tab
-lsv = s:taboption("service", Flag, "localservice", translate("Local Service:"),
+lsv = s1:taboption("service", Flag, "localservice", translate("Local Service:"),
translate("Accept queries only from local subnets"))
lsv.rmempty = false
-qry = s:taboption("service", Flag, "query_minimize", translate("Query Minimize:"),
- translate("Break down query components for small added privacy"))
-qry.rmempty = false
-
-rlh = s:taboption("service", Flag, "rebind_localhost", translate("Block Localhost Rebind:"),
+rlh = s1:taboption("service", Flag, "rebind_localhost", translate("Block Localhost Rebind:"),
translate("Prevent upstream response of 127.0.0.0/8"))
rlh.rmempty = false
-rpv = s:taboption("service", Flag, "rebind_protection", translate("Block Private Rebind:"),
+rpv = s1:taboption("service", Flag, "rebind_protection", translate("Block Private Rebind:"),
translate("Prevent upstream response of RFC1918 ranges"))
rpv.rmempty = false
-vld = s:taboption("service", Flag, "validator", translate("Enable DNSSEC:"),
+vld = s1:taboption("service", Flag, "validator", translate("Enable DNSSEC:"),
translate("Enable the DNSSEC validator module"))
vld.rmempty = false
-nvd = s:taboption("service", Flag, "validator_ntp", translate("DNSSEC NTP Fix:"),
+nvd = s1:taboption("service", Flag, "validator_ntp", translate("DNSSEC NTP Fix:"),
translate("Break the loop where DNSSEC needs NTP and NTP needs DNS"))
nvd.rmempty = false
+nvd:depends({ validator = true })
-eds = s:taboption("service", Value, "edns_size", translate("EDNS Size:"),
+eds = s1:taboption("service", Value, "edns_size", translate("EDNS Size:"),
translate("Limit extended DNS packet size"))
eds.datatype = "and(uinteger,min(512),max(4096))"
eds.rmempty = false
-prt = s:taboption("service", Value, "listen_port", translate("Listening Port:"),
+prt = s1:taboption("service", Value, "listen_port", translate("Listening Port:"),
translate("Choose Unbounds listening port"))
prt.datatype = "port"
prt.rmempty = false
-tlm = s:taboption("service", Value, "ttl_min", translate("TTL Minimum:"),
+tlm = s1:taboption("service", Value, "ttl_min", translate("TTL Minimum:"),
translate("Prevent excessively short cache periods"))
tlm.datatype = "and(uinteger,min(0),max(600))"
tlm.rmempty = false
+--Advanced Tab
+
+ctl = s1:taboption("advanced", Flag, "unbound_control", translate("Unbound Control App:"),
+ translate("Enable unecrypted localhost access for unbound-control"))
+ctl.rmempty = false
+
+dlk = s1:taboption("advanced", ListValue, "dhcp_link", translate("DHCP Link:"),
+ translate("Link to supported programs to load DHCP into DNS"))
+dlk:value("none", translate("No Link"))
+dlk:value("dnsmasq", "dnsmasq")
+dlk:value("odhcpd", "odhcpd")
+dlk.rmempty = false
+
+dom = s1:taboption("advanced", Value, "domain", translate("Local Domain:"),
+ translate("Domain suffix for this router and DHCP clients"))
+dom.placeholder = "lan"
+dom:depends({ dhcp_link = "none" })
+dom:depends({ dhcp_link = "odhcpd" })
+
+dty = s1:taboption("advanced", ListValue, "domain_type", translate("Local Domain Type:"),
+ translate("How to treat queries of this local domain"))
+dty:value("deny", translate("Ignored"))
+dty:value("refuse", translate("Refused"))
+dty:value("static", translate("Only Local"))
+dty:value("transparent", translate("Also Forwarded"))
+dty:depends({ dhcp_link = "none" })
+dty:depends({ dhcp_link = "odhcpd" })
+
+lfq = s1:taboption("advanced", ListValue, "add_local_fqdn", translate("LAN DNS:"),
+ translate("How to enter the LAN or local network router in DNS"))
+lfq:value("0", translate("No DNS"))
+lfq:value("1", translate("Hostname, Primary Address"))
+lfq:value("2", translate("Hostname, All Addresses"))
+lfq:value("3", translate("Host FQDN, All Addresses"))
+lfq:value("4", translate("Interface FQDN, All Addresses"))
+lfq:depends({ dhcp_link = "none" })
+lfq:depends({ dhcp_link = "odhcpd" })
+
+wfq = s1:taboption("advanced", ListValue, "add_wan_fqdn", translate("WAN DNS:"),
+ translate("Override the WAN side router entry in DNS"))
+wfq:value("0", translate("Upstream"))
+wfq:value("1", translate("Hostname, Primary Address"))
+wfq:value("2", translate("Hostname, All Addresses"))
+wfq:value("3", translate("Host FQDN, All Addresses"))
+wfq:value("4", translate("Interface FQDN, All Addresses"))
+wfq:depends({ dhcp_link = "none" })
+wfq:depends({ dhcp_link = "odhcpd" })
+
+ctl = s1:taboption("advanced", Flag, "dhcp4_slaac6", translate("DHCPv4 to SLAAC:"),
+ translate("Use DHCPv4 MAC to discover IP6 hosts SLAAC (EUI64)"))
+ctl.rmempty = false
+
+d64 = s1:taboption("advanced", Flag, "dns64", translate("Enable DNS64:"),
+ translate("Enable the DNS64 module"))
+d64.rmempty = false
+
+pfx = s1:taboption("advanced", Value, "dns64_prefix", translate("DNS64 Prefix:"),
+ translate("Prefix for generated DNS64 addresses"))
+pfx.datatype = "ip6addr"
+pfx.placeholder = "64:ff9b::/96"
+pfx.optional = true
+pfx:depends({ dns64 = true })
+
+qry = s1:taboption("advanced", Flag, "query_minimize", translate("Query Minimize:"),
+ translate("Break down query components for limited added privacy"))
+qry.rmempty = false
+
+qrs = s1:taboption("advanced", Flag, "query_min_strict", translate("Strict Minimize:"),
+ translate("Strict version of 'query minimize' but it can break DNS"))
+qrs.rmempty = false
+qrs:depends({ query_minimize = true })
+
+--TODO: dnsmasq needs to not reference resolve-file and get off port 53.
+
--Resource Tuning Tab
-rsn = s:taboption("resource", ListValue, "recursion", translate("Recursion Strength:"),
+pro = s1:taboption("resource", ListValue, "protocol", translate("Recursion Protocol:"),
+ translate("Chose the protocol recursion queries leave on"))
+pro:value("mixed", translate("IP4 and IP6"))
+pro:value("ip6_prefer", translate("IP6 Preferred"))
+pro:value("ip4_only", translate("IP4 Only"))
+pro:value("ip6_only", translate("IP6 Only"))
+pro.rmempty = false
+
+rsn = s1:taboption("resource", ListValue, "recursion", translate("Recursion Strength:"),
translate("Recursion activity affects memory growth and CPU load"))
rsn:value("aggressive", translate("Aggressive"))
rsn:value("default", translate("Default"))
rsn:value("passive", translate("Passive"))
rsn.rmempty = false
-rsc = s:taboption("resource", ListValue, "resource", translate("Memory Resource:"),
+rsc = s1:taboption("resource", ListValue, "resource", translate("Memory Resource:"),
translate("Use menu System/Processes to observe any memory growth"))
rsc:value("large", translate("Large"))
rsc:value("medium", translate("Medium"))
@@ -97,27 +176,14 @@ rsc:value("small", translate("Small"))
rsc:value("tiny", translate("Tiny"))
rsc.rmempty = false
-age = s:taboption("resource", Value, "root_age", translate("Root DSKEY Age:"),
+ag2 = s1:taboption("resource", Value, "root_age", translate("Root DSKEY Age:"),
translate("Limit days between RFC5011 to reduce flash writes"))
-age.datatype = "and(uinteger,min(1),max(99))"
-age:value("14", "14")
-age:value("28", "28 ("..translate("default")..")")
-age:value("45", "45")
-age:value("90", "90")
-age:value("99", "99 ("..translate("never")..")")
-
---Dnsmasq Link Tab
-
-dld = s:taboption("dnsmasq", Flag, "dnsmasq_link_dns", translate("Link dnsmasq:"),
- translate("Forward queries to dnsmasq for local clients"))
-dld.rmempty = false
-
-dgn = s:taboption("dnsmasq", Flag, "dnsmsaq_gate_name", translate("Local Gateway Name:"),
- translate("Also query dnsmasq for this hosts outbound gateway"))
-dgn.rmempty = false
-
---TODO: Read only repective dnsmasq options and inform user of link requirements.
---TODO: dnsmasq needs to not reference resolve-file and get off port 53.
+ag2.datatype = "and(uinteger,min(1),max(99))"
+ag2:value("14", "14")
+ag2:value("28", "28 ("..translate("default")..")")
+ag2:value("45", "45")
+ag2:value("90", "90")
+ag2:value("99", "99 ("..translate("never")..")")
return m
diff --git a/applications/luci-app-unbound/root/etc/uci-defaults/60_luci-unbound b/applications/luci-app-unbound/root/etc/uci-defaults/60_luci-unbound
new file mode 100644
index 000000000..cc714ac53
--- /dev/null
+++ b/applications/luci-app-unbound/root/etc/uci-defaults/60_luci-unbound
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+uci -q batch <<-EOF >/dev/null
+ delete ucitrack.@unbound[-1]
+ add ucitrack unbound
+ set ucitrack.@unbound[-1].init=unbound
+ commit ucitrack
+EOF
+
+rm -f /tmp/luci-indexcache
+[ ! -x /usr/sbin/unbound-control ] && exit 0
+
+uci -q batch <<-EOF >/dev/null
+ set luci.unboundhosts=command
+ set luci.unboundhosts.name='Unbound Local Hosts'
+ set luci.unboundhosts.command='unbound-control -c /var/lib/unbound/unbound.conf list_local_data'
+ set luci.unboundzones=command
+ set luci.unboundzones.name='Unbound Local Zones'
+ set luci.unboundzones.command='unbound-control -c /var/lib/unbound/unbound.conf list_local_zones'
+ commit luci
+EOF
+
+rm -f /tmp/luci-indexcache
+exit 0
+
diff --git a/applications/luci-app-upnp/luasrc/model/cbi/upnp/upnp.lua b/applications/luci-app-upnp/luasrc/model/cbi/upnp/upnp.lua
index f1bb450dd..74b9d1d03 100644
--- a/applications/luci-app-upnp/luasrc/model/cbi/upnp/upnp.lua
+++ b/applications/luci-app-upnp/luasrc/model/cbi/upnp/upnp.lua
@@ -12,21 +12,21 @@ s.addremove = false
s:tab("general", translate("General Settings"))
s:tab("advanced", translate("Advanced Settings"))
-e = s:taboption("general", Flag, "_init", translate("Start UPnP and NAT-PMP service"))
+e = s:taboption("general", Flag, "enabled", translate("Start UPnP and NAT-PMP service"))
e.rmempty = false
-function e.cfgvalue(self, section)
- return luci.sys.init.enabled("miniupnpd") and self.enabled or self.disabled
-end
+--function e.cfgvalue(self, section)
+-- return luci.sys.init.enabled("miniupnpd") and self.enabled or self.disabled
+--end
function e.write(self, section, value)
if value == "1" then
- luci.sys.call("/etc/init.d/miniupnpd enable >/dev/null")
luci.sys.call("/etc/init.d/miniupnpd start >/dev/null")
else
luci.sys.call("/etc/init.d/miniupnpd stop >/dev/null")
- luci.sys.call("/etc/init.d/miniupnpd disable >/dev/null")
end
+
+ return Flag.write(self, section, value)
end
s:taboption("general", Flag, "enable_upnp", translate("Enable UPnP functionality")).default = "1"
diff --git a/applications/luci-app-upnp/po/ja/upnp.po b/applications/luci-app-upnp/po/ja/upnp.po
index ec9208d25..f0aff7336 100644
--- a/applications/luci-app-upnp/po/ja/upnp.po
+++ b/applications/luci-app-upnp/po/ja/upnp.po
@@ -1,17 +1,17 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-19 19:36+0200\n"
-"PO-Revision-Date: 2013-10-05 17:27+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2016-12-24 19:55+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid ""
"ACLs specify which external ports may be redirected to which internal "
@@ -30,7 +30,7 @@ msgid "Advanced Settings"
msgstr "詳細設定"
msgid "Allow adding forwards only to requesting ip addresses"
-msgstr ""
+msgstr "è¦æ±‚å…ƒIPアドレスã¸ã®è»¢é€ã®ã¿ã€è¿½åŠ ã‚’許å¯ã—ã¾ã™ã€‚"
msgid "Announced model number"
msgstr "通知ã™ã‚‹ãƒ¢ãƒ‡ãƒ«ç•ªå·"
@@ -136,18 +136,20 @@ msgid "UPnP lease file"
msgstr "UPnP リースファイル"
msgid "Universal Plug & Play"
-msgstr "ユニãƒãƒ¼ã‚µãƒ« プラグ &#38; プレイ"
+msgstr "ユニãƒãƒ¼ã‚µãƒ« プラグ & プレイ"
msgid "Uplink"
msgstr "アップリンク"
msgid "Value in KByte/s, informational only"
-msgstr ""
+msgstr "クライアントã¸ã®æƒ…å ±æä¾›ã®ã¿ã«ä½¿ç”¨ã•ã‚Œã‚‹ã€KByte/sã®å€¤ã§ã™ã€‚"
#~ msgid ""
#~ "UPNP allows clients in the local network to automatically configure the "
#~ "router."
-#~ msgstr "UPnPを使用ã™ã‚‹ã“ã¨ã§ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒè‡ªå‹•çš„ã«ãƒ«ãƒ¼ã‚¿ã‚’構æˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
+#~ msgstr ""
+#~ "UPnPを使用ã™ã‚‹ã“ã¨ã§ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒè‡ªå‹•çš„ã«ãƒ«ãƒ¼ã‚¿"
+#~ "を構æˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
#~ msgid "enable"
#~ msgstr "有効"
diff --git a/applications/luci-app-upnp/root/etc/uci-defaults/40_luci-miniupnp b/applications/luci-app-upnp/root/etc/uci-defaults/40_luci-miniupnp
new file mode 100755
index 000000000..e9636f9a2
--- /dev/null
+++ b/applications/luci-app-upnp/root/etc/uci-defaults/40_luci-miniupnp
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+uci -q batch <<-EOF >/dev/null
+ delete ucitrack.@upnpd[-1]
+ add ucitrack upnpd
+ set ucitrack.@upnpd[-1].init=miniupnpd
+ commit ucitrack
+EOF
+
+rm -f /tmp/luci-indexcache
+exit 0
diff --git a/applications/luci-app-vpnbypass/Makefile b/applications/luci-app-vpnbypass/Makefile
new file mode 100644
index 000000000..0ca74ae38
--- /dev/null
+++ b/applications/luci-app-vpnbypass/Makefile
@@ -0,0 +1,16 @@
+# Copyright (c) 2017 Stan Grishin (stangri@melmac.net)
+# This is free software, licensed under the GNU General Public License v3.
+
+include $(TOPDIR)/rules.mk
+
+PKG_LICENSE:=GPL-3.0+
+PKG_MAINTAINER:=Stan Grishin <stangri@melmac.net>
+
+LUCI_TITLE:=VPN Bypass Web UI
+LUCI_DEPENDS:=+vpnbypass
+LUCI_PKGARCH:=all
+PKG_RELEASE:=1
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua b/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua
new file mode 100644
index 000000000..ed6f4f4da
--- /dev/null
+++ b/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua
@@ -0,0 +1,7 @@
+module("luci.controller.vpnbypass", package.seeall)
+function index()
+ if not nixio.fs.access("/etc/config/vpnbypass") then
+ return
+ end
+ entry({"admin", "services", "vpnbypass"}, cbi("vpnbypass"), _("VPN Bypass"))
+end
diff --git a/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua b/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua
new file mode 100644
index 000000000..b35a8e4e0
--- /dev/null
+++ b/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua
@@ -0,0 +1,61 @@
+readmeURL = "https://github.com/openwrt/packages/blob/master/net/vpnbypass/files/README.md"
+
+m = Map("vpnbypass", translate("VPN Bypass Settings"))
+s = m:section(NamedSection, "config", "vpnbypass")
+
+-- General options
+e = s:option(Flag, "enabled", translate("Enable/start service"))
+e.rmempty = false
+
+function e.cfgvalue(self, section)
+ return self.map:get(section, "enabled") == "1" and luci.sys.init.enabled("vpnbypass") and self.enabled or self.disabled
+end
+
+function e.write(self, section, value)
+ if value == "1" then
+ luci.sys.call("/etc/init.d/vpnbypass enable >/dev/null")
+ luci.sys.call("/etc/init.d/vpnbypass start >/dev/null")
+ else
+ luci.sys.call("/etc/init.d/vpnbypass stop >/dev/null")
+ end
+ return Flag.write(self, section, value)
+end
+
+-- Local Ports
+p1 = s:option(DynamicList, "localport", translate("Local Ports to Bypass"), translate("Local ports to trigger VPN Bypass"))
+p1.datatype = "portrange"
+-- p1.placeholder = "0-65535"
+p1.addremove = false
+p1.optional = false
+
+-- Remote Ports
+p2 = s:option(DynamicList, "remoteport", translate("Remote Ports to Bypass"), translate("Remote ports to trigger VPN Bypass"))
+p2.datatype = "portrange"
+-- p2.placeholder = "0-65535"
+p2.addremove = false
+p2.optional = false
+
+-- Local Subnets
+r1 = s:option(DynamicList, "localsubnet", translate("Local IP Addresses to Bypass"), translate("Local IP addresses or subnets with direct internet access (outside of the VPN tunnel)"))
+r1.datatype = "ip4addr"
+-- r1.placeholder = luci.ip.new(uci.cursor():get("network", "lan", "ipaddr") .. "/" .. uci.cursor():get("network", "lan", "netmask"))
+r1.addremove = false
+r1.optional = false
+
+-- Remote Subnets
+r2 = s:option(DynamicList, "remotesubnet", translate("Remote IP Addresses to Bypass"), translate("Remote IP addresses or subnets which will be accessed directly (outside of the VPN tunnel)"))
+r2.datatype = "ip4addr"
+-- r2.placeholder = "0.0.0.0/0"
+r2.addremove = false
+r2.optional = false
+
+-- Domains
+d = Map("dhcp")
+s4 = d:section(TypedSection, "dnsmasq")
+s4.anonymous = true
+di = s4:option(DynamicList, "ipset", translate("Domains to Bypass"),
+ translate("Domains to be accessed directly (outside of the VPN tunnel), see ")
+ .. [[<a href="]] .. readmeURL .. [[#bypass-domains-formatsyntax" target="_blank">]]
+ .. translate("README") .. [[</a>]] .. translate(" for syntax"))
+
+return m, d
diff --git a/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po b/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po
new file mode 100644
index 000000000..9f3fa2a67
--- /dev/null
+++ b/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po
@@ -0,0 +1,90 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "Domains to Bypass"
+msgstr "Domínios para evitar a VPN"
+
+msgid "Domains to be accessed directly (outside of the VPN tunnel), see"
+msgstr ""
+
+msgid "Enable/start service"
+msgstr ""
+
+msgid "Local IP Addresses to Bypass"
+msgstr ""
+
+msgid ""
+"Local IP addresses or subnets with direct internet access (outside of the "
+"VPN tunnel)"
+msgstr ""
+
+msgid "Local Ports to Bypass"
+msgstr "Portas locais para evitar a VPN"
+
+msgid "Local ports to trigger VPN Bypass"
+msgstr "Portas locais para disparar o VPN Bypass"
+
+msgid "README"
+msgstr ""
+
+msgid "Remote IP Addresses to Bypass"
+msgstr ""
+
+msgid ""
+"Remote IP addresses or subnets which will be accessed directly (outside of "
+"the VPN tunnel)"
+msgstr ""
+
+msgid "Remote Ports to Bypass"
+msgstr "Portas remotas para evitar a VPN"
+
+msgid "Remote ports to trigger VPN Bypass"
+msgstr "Portas remotas para disparar o VPN Bypass"
+
+msgid "VPN Bypass"
+msgstr "VPN Bypass"
+
+msgid "VPN Bypass Settings"
+msgstr "Configurações do VPN Bypass"
+
+msgid "for syntax"
+msgstr ""
+
+#~ msgid "Enable VPN Bypass"
+#~ msgstr "Habilitar o VPN Bypass"
+
+#~ msgid "Configuration of VPN Bypass Settings"
+#~ msgstr "Configurações do VPN Bypass"
+
+#~ msgid "Domains which will be accessed directly (outside of the VPN tunnel)"
+#~ msgstr "Domínios que serão acessados diretamente (fora do túnel VPN)"
+
+#~ msgid "Local IP Subnets to Bypass"
+#~ msgstr "Subredes IP locais para evitar a VPN"
+
+#~ msgid ""
+#~ "Local IP ranges with direct internet access (outside of the VPN tunnel)"
+#~ msgstr ""
+#~ "Faixa de endereços IP locais que terão acesso internet direto (fora do "
+#~ "túnel VPN)"
+
+#~ msgid "Remote IP Subnets to Bypass"
+#~ msgstr "Subredes IP remotas para evitar a VPN"
+
+#~ msgid ""
+#~ "Remote IP ranges which will be accessed directly (outside of the VPN "
+#~ "tunnel)"
+#~ msgstr ""
+#~ "Faixa de endereços IP remotos que serão acessados diretamente (fora do "
+#~ "túnel VPN)"
diff --git a/applications/luci-app-vpnbypass/po/templates/vpnbypass.pot b/applications/luci-app-vpnbypass/po/templates/vpnbypass.pot
new file mode 100644
index 000000000..fd92b5e8a
--- /dev/null
+++ b/applications/luci-app-vpnbypass/po/templates/vpnbypass.pot
@@ -0,0 +1,51 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "Domains to Bypass"
+msgstr ""
+
+msgid "Domains to be accessed directly (outside of the VPN tunnel), see"
+msgstr ""
+
+msgid "Enable/start service"
+msgstr ""
+
+msgid "Local IP Addresses to Bypass"
+msgstr ""
+
+msgid ""
+"Local IP addresses or subnets with direct internet access (outside of the "
+"VPN tunnel)"
+msgstr ""
+
+msgid "Local Ports to Bypass"
+msgstr ""
+
+msgid "Local ports to trigger VPN Bypass"
+msgstr ""
+
+msgid "README"
+msgstr ""
+
+msgid "Remote IP Addresses to Bypass"
+msgstr ""
+
+msgid ""
+"Remote IP addresses or subnets which will be accessed directly (outside of "
+"the VPN tunnel)"
+msgstr ""
+
+msgid "Remote Ports to Bypass"
+msgstr ""
+
+msgid "Remote ports to trigger VPN Bypass"
+msgstr ""
+
+msgid "VPN Bypass"
+msgstr ""
+
+msgid "VPN Bypass Settings"
+msgstr ""
+
+msgid "for syntax"
+msgstr ""
diff --git a/applications/luci-app-vpnbypass/root/etc/uci-defaults/40_luci-vpnbypass b/applications/luci-app-vpnbypass/root/etc/uci-defaults/40_luci-vpnbypass
new file mode 100644
index 000000000..9455701a0
--- /dev/null
+++ b/applications/luci-app-vpnbypass/root/etc/uci-defaults/40_luci-vpnbypass
@@ -0,0 +1,11 @@
+#!/bin/sh
+uci -q batch <<-EOF >/dev/null
+ delete ucitrack.@vpnbypass[-1]
+ add ucitrack vpnbypass
+ set ucitrack.@vpnbypass[-1].init=vpnbypass
+ commit ucitrack
+EOF
+
+rm -f /tmp/luci-indexcache
+exit 0
+
diff --git a/applications/luci-app-watchcat/po/pt-br/watchcat.po b/applications/luci-app-watchcat/po/pt-br/watchcat.po
index fe9703637..e37066c3d 100644
--- a/applications/luci-app-watchcat/po/pt-br/watchcat.po
+++ b/applications/luci-app-watchcat/po/pt-br/watchcat.po
@@ -1,15 +1,16 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2014-03-29 23:20+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
+"Project-Id-Version: \n"
+"PO-Revision-Date: 2017-02-20 18:10-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language-Team: none\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"POT-Creation-Date: \n"
msgid "Forced reboot delay"
msgstr "Atraso para reinício forçado"
@@ -51,15 +52,13 @@ msgstr "Período de ping"
msgid "Watchcat"
msgstr "Watchcat"
-#, fuzzy
msgid ""
"Watchcat allows configuring a periodic reboot when the Internet connection "
"has been lost for a certain period of time."
msgstr ""
-"Watchcat permite que se configure um período para reiniciar e/ou quando a "
+"Watchcat permite a configuração de um período para reiniciar e/ou quando a "
"conexão com à Internet foi perdida por um ser período de tempo."
-#, fuzzy
msgid ""
"When rebooting the system, the watchcat will trigger a soft reboot. Entering "
"a non zero value here will trigger a delayed hard reboot if the soft reboot "
diff --git a/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua b/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua
index a33c7aab9..261cf36d0 100644
--- a/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua
+++ b/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua
@@ -12,21 +12,31 @@
--
-- Author: Nils Koenig <openwrt@newk.it>
-module("luci.controller.wifischedule.wifi_schedule", package.seeall)
+module("luci.controller.wifischedule.wifi_schedule", package.seeall)
+
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
+local template = require "luci.template"
+local i18n = require "luci.i18n"
function index()
- entry({"admin", "wifi_schedule"}, firstchild(), "Wifi Schedule", 60).dependent=false
- entry({"admin", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), "Schedule", 1)
- entry({"admin", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), "View Logfile", 2)
- entry({"admin", "wifi_schedule", "cronjob"}, call("view_crontab"), "View Cron Jobs", 3)
+ if not nixio.fs.access("/etc/config/wifi_schedule") then
+ return
+ end
+ entry({"admin", "services", "wifi_schedule"}, firstchild(), _("Wifi Schedule"), 60).dependent=false
+ entry({"admin", "services", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), _("Schedule"), 1)
+ entry({"admin", "services", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), _("View Logfile"), 2)
+ entry({"admin", "services", "wifi_schedule", "cronjob"}, call("view_crontab"), _("View Cron Jobs"), 3)
end
function wifi_schedule_log()
- local logfile = luci.sys.exec("cat /tmp/log/wifi_schedule.log")
- luci.template.render("wifischedule/file_viewer", {title="Wifi Schedule Logfile", content=logfile})
+ local logfile = fs.readfile("/tmp/log/wifi_schedule.log") or ""
+ template.render("wifischedule/file_viewer",
+ {title = i18n.translate("Wifi Schedule Logfile"), content = logfile})
end
function view_crontab()
- local crontab = luci.sys.exec("cat /etc/crontabs/root")
- luci.template.render("wifischedule/file_viewer", {title="Cron Jobs", content=crontab})
+ local crontab = fs.readfile("/etc/crontabs/root") or ""
+ template.render("wifischedule/file_viewer",
+ {title = i18n.translate("Cron Jobs"), content = crontab})
end
diff --git a/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua b/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua
index 2cca476b4..1d301219a 100644
--- a/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua
+++ b/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua
@@ -12,15 +12,11 @@
--
-- Author: Nils Koenig <openwrt@newk.it>
-function file_exists(name)
- local f=io.open(name,"r")
- if f~=nil then io.close(f) return true else return false end
-end
-
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
function time_validator(self, value, desc)
if value ~= nil then
-
h_str, m_str = string.match(value, "^(%d%d?):(%d%d?)$")
h = tonumber(h_str)
m = tonumber(m_str)
@@ -32,21 +28,21 @@ function time_validator(self, value, desc)
m <= 59) then
return value
end
- end
- return nil, translate("The value '" .. desc .. "' is invalid")
+ end
+ return nil, translatef("The value %s is invalid", desc)
end
-- -------------------------------------------------------------------------------------------------
-- BEGIN Map
-m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi."))
+m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi."))
function m.on_commit(self)
- luci.sys.exec("/usr/bin/wifi_schedule.sh cron")
+ sys.exec("/usr/bin/wifi_schedule.sh cron")
end
-- END Map
-- BEGIN Global Section
-global_section = m:section(TypedSection, "global", "Global Settings")
+global_section = m:section(TypedSection, "global", translate("Global Settings"))
global_section.optional = false
global_section.rmempty = false
global_section.anonymous = true
@@ -54,13 +50,13 @@ global_section.anonymous = true
-- BEGIN Global Enable Checkbox
global_enable = global_section:option(Flag, "enabled", translate("Enable Wifi Schedule"))
-global_enable.optional=false;
-global_enable.rmempty = false;
+global_enable.optional = false
+global_enable.rmempty = false
function global_enable.validate(self, value, global_section)
if value == "1" then
- if ( file_exists("/sbin/wifi") and
- file_exists("/usr/bin/wifi_schedule.sh") )then
+ if ( fs.access("/sbin/wifi") and
+ fs.access("/usr/bin/wifi_schedule.sh") )then
return value
else
return nil, translate("Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi")
@@ -71,39 +67,38 @@ function global_enable.validate(self, value, global_section)
end
-- END Global Enable Checkbox
-
-- BEGIN Global Logging Checkbox
global_logging = global_section:option(Flag, "logging", translate("Enable logging"))
-global_logging.optional=false;
-global_logging.rmempty = false;
+global_logging.optional = false
+global_logging.rmempty = false
global_logging.default = 0
-- END Global Enable Checkbox
-- BEGIN Global Activate WiFi Button
enable_wifi = global_section:option(Button, "enable_wifi", translate("Activate wifi"))
function enable_wifi.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh start manual")
+ sys.exec("/usr/bin/wifi_schedule.sh start manual")
end
-- END Global Activate Wifi Button
-- BEGIN Global Disable WiFi Gracefully Button
disable_wifi_gracefully = global_section:option(Button, "disable_wifi_gracefully", translate("Disable wifi gracefully"))
function disable_wifi_gracefully.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh stop manual")
+ sys.exec("/usr/bin/wifi_schedule.sh stop manual")
end
--- END Global Disable Wifi Gracefully Button
+-- END Global Disable Wifi Gracefully Button
-- BEGIN Disable WiFi Forced Button
disable_wifi_forced = global_section:option(Button, "disable_wifi_forced", translate("Disabled wifi forced"))
function disable_wifi_forced.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh forcestop manual")
+ sys.exec("/usr/bin/wifi_schedule.sh forcestop manual")
end
-- END Global Disable WiFi Forced Button
-- BEGIN Global Unload Modules Checkbox
global_unload_modules = global_section:option(Flag, "unload_modules", translate("Unload Modules (experimental; saves more power)"))
-global_unload_modules.optional = false;
-global_unload_modules.rmempty = false;
+global_unload_modules.optional = false
+global_unload_modules.rmempty = false
global_unload_modules.default = 0
-- END Global Unload Modules Checkbox
@@ -111,13 +106,13 @@ global_unload_modules.default = 0
-- BEGIN Modules
modules = global_section:option(TextValue, "modules", "")
modules:depends("unload_modules", global_unload_modules.enabled);
-modules.wrap = "off"
-modules.rows = 10
+modules.wrap = "off"
+modules.rows = 10
function modules.cfgvalue(self, section)
- mod=uci.get("wifi_schedule", section, "modules")
+ mod = uci.get("wifi_schedule", section, "modules")
if mod == nil then
- mod=""
+ mod = ""
end
return mod:gsub(" ", "\r\n")
end
@@ -131,45 +126,44 @@ function modules.write(self, section, value)
end
-- END Modules
--- BEGIN Determine Modules
+-- BEGIN Determine Modules
determine_modules = global_section:option(Button, "determine_modules", translate("Determine Modules Automatically"))
determine_modules:depends("unload_modules", global_unload_modules.enabled);
function determine_modules.write(self, section)
- output = luci.sys.exec("/usr/bin/wifi_schedule.sh getmodules")
+ output = sys.exec("/usr/bin/wifi_schedule.sh getmodules")
modules:write(section, output)
end
-- END Determine Modules
-
-- BEGIN Section
-d = m:section(TypedSection, "entry", "Schedule events")
-d.addremove = true
+d = m:section(TypedSection, "entry", translate("Schedule events"))
+d.addremove = true
--d.anonymous = true
-- END Section
-- BEGIN Enable Checkbox
c = d:option(Flag, "enabled", translate("Enable"))
-c.optional=false; c.rmempty = false;
+c.optional = false
+c.rmempty = false
-- END Enable Checkbox
-
-- BEGIN Day(s) of Week
dow = d:option(MultiValue, "daysofweek", translate("Day(s) of Week"))
dow.optional = false
dow.rmempty = false
-dow:value("Monday")
-dow:value("Tuesday")
-dow:value("Wednesday")
-dow:value("Thursday")
-dow:value("Friday")
-dow:value("Saturday")
-dow:value("Sunday")
+dow:value("Monday", translate("Monday"))
+dow:value("Tuesday", translate("Tuesday"))
+dow:value("Wednesday", translate("Wednesday"))
+dow:value("Thursday", translate("Thursday"))
+dow:value("Friday", translate("Friday"))
+dow:value("Saturday", translate("Saturday"))
+dow:value("Sunday", translate("Sunday"))
-- END Day(s) of Weel
-- BEGIN Start Wifi Dropdown
starttime = d:option(Value, "starttime", translate("Start WiFi"))
-starttime.optional=false;
-starttime.rmempty = false;
+starttime.optional = false
+starttime.rmempty = false
starttime:value("00:00")
starttime:value("01:00")
starttime:value("02:00")
@@ -198,14 +192,12 @@ starttime:value("23:00")
function starttime.validate(self, value, d)
return time_validator(self, value, translate("Start Time"))
end
-
-- END Start Wifi Dropdown
-
-- BEGIN Stop Wifi Dropdown
-stoptime = d:option(Value, "stoptime", translate("Stop WiFi"))
-stoptime.optional=false;
-stoptime.rmempty = false;
+stoptime = d:option(Value, "stoptime", translate("Stop WiFi"))
+stoptime.optional = false
+stoptime.rmempty = false
stoptime:value("00:00")
stoptime:value("01:00")
stoptime:value("02:00")
@@ -236,15 +228,14 @@ function stoptime.validate(self, value, d)
end
-- END Stop Wifi Dropdown
-
-- BEGIN Force Wifi Stop Checkbox
force_wifi = d:option(Flag, "forcewifidown", translate("Force disabling wifi even if stations associated"))
force_wifi.default = false
-force_wifi.rmempty = false;
+force_wifi.rmempty = false
function force_wifi.validate(self, value, d)
if value == "0" then
- if file_exists("/usr/bin/iwinfo") then
+ if fs.access("/usr/bin/iwinfo") then
return value
else
return nil, translate("Could not find required programm /usr/bin/iwinfo")
@@ -255,5 +246,4 @@ function force_wifi.validate(self, value, d)
end
-- END Force Wifi Checkbox
-
return m
diff --git a/applications/luci-app-wifischedule/po/ja/wifischedule.po b/applications/luci-app-wifischedule/po/ja/wifischedule.po
new file mode 100644
index 000000000..3bc7864ad
--- /dev/null
+++ b/applications/luci-app-wifischedule/po/ja/wifischedule.po
@@ -0,0 +1,112 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Language-Team: \n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+msgid "Activate wifi"
+msgstr "WiFiã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化"
+
+msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi"
+msgstr "必須㮠/usr/bin/wifi_schedule.sh ã¾ãŸã¯ /sbin/wifi ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚"
+
+msgid "Could not find required programm /usr/bin/iwinfo"
+msgstr "å¿…é ˆã®ãƒ—ログラム /usr/bin/iwinfo ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚"
+
+msgid "Cron Jobs"
+msgstr "Cronジョブ"
+
+msgid "Day(s) of Week"
+msgstr "曜日"
+
+msgid "Defines a schedule when to turn on and off wifi."
+msgstr "WiFiã®ã‚ªãƒ³ã¨ã‚ªãƒ•ã‚’切り替ãˆã‚‹ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’設定ã—ã¾ã™ã€‚"
+
+msgid "Determine Modules Automatically"
+msgstr "モジュールを自動的ã«æ±ºå®šã™ã‚‹"
+
+msgid "Disable wifi gracefully"
+msgstr "WiFiã®é€šå¸¸çµ‚了"
+
+msgid "Disabled wifi forced"
+msgstr "WiFiã®å¼·åˆ¶çµ‚了"
+
+msgid "Enable"
+msgstr "有効"
+
+msgid "Enable Wifi Schedule"
+msgstr "WiFi スケジュールã®æœ‰åŠ¹åŒ–"
+
+msgid "Enable logging"
+msgstr "ログã®æœ‰åŠ¹åŒ–"
+
+msgid "Force disabling wifi even if stations associated"
+msgstr "ステーションãŒé–¢é€£ä»˜ã‘られã¦ã„ã¦ã‚‚WiFiを強制終了ã™ã‚‹"
+
+msgid "Friday"
+msgstr "金曜日"
+
+msgid "Global Settings"
+msgstr "全体設定"
+
+msgid "Monday"
+msgstr "月曜日"
+
+msgid "Saturday"
+msgstr "土曜日"
+
+msgid "Schedule"
+msgstr "スケジュール"
+
+msgid "Schedule events"
+msgstr "実行スケジュール"
+
+msgid "Start Time"
+msgstr "開始時刻"
+
+msgid "Start WiFi"
+msgstr "WiFiã®é–‹å§‹"
+
+msgid "Stop Time"
+msgstr "åœæ­¢æ™‚刻"
+
+msgid "Stop WiFi"
+msgstr "WiFiã®åœæ­¢"
+
+msgid "Sunday"
+msgstr "日曜日"
+
+msgid "The value %s is invalid"
+msgstr "%s ã®å€¤ãŒç„¡åŠ¹ã§ã™"
+
+msgid "Thursday"
+msgstr "木曜日"
+
+msgid "Tuesday"
+msgstr "ç«æ›œæ—¥"
+
+msgid "Unload Modules (experimental; saves more power)"
+msgstr "モジュールã®ã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ï¼ˆå®Ÿé¨“çš„ã€ã‚ˆã‚Šçœé›»åŠ›ï¼‰"
+
+msgid "View Cron Jobs"
+msgstr "Cronジョブã®ç¢ºèª"
+
+msgid "View Logfile"
+msgstr "ログファイルã®ç¢ºèª"
+
+msgid "Wednesday"
+msgstr "水曜日"
+
+msgid "Wifi Schedule"
+msgstr "WiFi スケジュール"
+
+msgid "Wifi Schedule Logfile"
+msgstr "WiFiスケジュール ログファイル"
diff --git a/applications/luci-app-wifischedule/po/pt-br/wifischedule.po b/applications/luci-app-wifischedule/po/pt-br/wifischedule.po
new file mode 100644
index 000000000..19e31b54c
--- /dev/null
+++ b/applications/luci-app-wifischedule/po/pt-br/wifischedule.po
@@ -0,0 +1,114 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "Activate wifi"
+msgstr "Ativar a WiFi"
+
+msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi"
+msgstr ""
+"Não foi possível localizar os programas necessários '/usr/bin/wifi_schedule."
+"sh' ou '/sbin/wifi'."
+
+msgid "Could not find required programm /usr/bin/iwinfo"
+msgstr "Não foi possível localizar o programa necessário '/usr/bin/iwinfo'"
+
+msgid "Cron Jobs"
+msgstr "Tarefas da Cron"
+
+msgid "Day(s) of Week"
+msgstr "Dia(s) da semana"
+
+msgid "Defines a schedule when to turn on and off wifi."
+msgstr "Define um agendamento para quando ligar ou desligar a WiFi."
+
+msgid "Determine Modules Automatically"
+msgstr "Determinar os Módulos Automaticamente"
+
+msgid "Disable wifi gracefully"
+msgstr "Desabilitar a WiFi amistosamente"
+
+msgid "Disabled wifi forced"
+msgstr "WiFi foi desabilitada de forma forçada."
+
+msgid "Enable"
+msgstr "Habilitar"
+
+msgid "Enable Wifi Schedule"
+msgstr "Habilitar o agendamento da WiFi"
+
+msgid "Enable logging"
+msgstr "Habilite os registros (log)"
+
+msgid "Force disabling wifi even if stations associated"
+msgstr "Force a desativação da WiFi mesmo se existirem estações associadas "
+
+msgid "Friday"
+msgstr "Sexta-feira"
+
+msgid "Global Settings"
+msgstr "Configurações Globais"
+
+msgid "Monday"
+msgstr "Segunda-Feira"
+
+msgid "Saturday"
+msgstr "Sábado"
+
+msgid "Schedule"
+msgstr "Agendamento"
+
+msgid "Schedule events"
+msgstr "Eventos do agendamento"
+
+msgid "Start Time"
+msgstr "Hora Inicial"
+
+msgid "Start WiFi"
+msgstr "Iniciar WiFi"
+
+msgid "Stop Time"
+msgstr "Hora Final"
+
+msgid "Stop WiFi"
+msgstr "Parar WiFi"
+
+msgid "Sunday"
+msgstr "Domingo"
+
+msgid "The value %s is invalid"
+msgstr "O valor %s é inválido"
+
+msgid "Thursday"
+msgstr "Quita-feira"
+
+msgid "Tuesday"
+msgstr "Terça-feira"
+
+msgid "Unload Modules (experimental; saves more power)"
+msgstr "Descarregar Módulos (experimental, poupa mais energia)"
+
+msgid "View Cron Jobs"
+msgstr "Visualizar Tarefas da Cron"
+
+msgid "View Logfile"
+msgstr "Visualizar o Arquivo de Registros (log)"
+
+msgid "Wednesday"
+msgstr "Quarta-feira"
+
+msgid "Wifi Schedule"
+msgstr "Agendamento da Wifi"
+
+msgid "Wifi Schedule Logfile"
+msgstr "Arquivo de Registros (log) do Agendamento da Wifi"
diff --git a/applications/luci-app-wifischedule/po/templates/wifischedule.pot b/applications/luci-app-wifischedule/po/templates/wifischedule.pot
new file mode 100644
index 000000000..639c432e5
--- /dev/null
+++ b/applications/luci-app-wifischedule/po/templates/wifischedule.pot
@@ -0,0 +1,101 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "Activate wifi"
+msgstr ""
+
+msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi"
+msgstr ""
+
+msgid "Could not find required programm /usr/bin/iwinfo"
+msgstr ""
+
+msgid "Cron Jobs"
+msgstr ""
+
+msgid "Day(s) of Week"
+msgstr ""
+
+msgid "Defines a schedule when to turn on and off wifi."
+msgstr ""
+
+msgid "Determine Modules Automatically"
+msgstr ""
+
+msgid "Disable wifi gracefully"
+msgstr ""
+
+msgid "Disabled wifi forced"
+msgstr ""
+
+msgid "Enable"
+msgstr ""
+
+msgid "Enable Wifi Schedule"
+msgstr ""
+
+msgid "Enable logging"
+msgstr ""
+
+msgid "Force disabling wifi even if stations associated"
+msgstr ""
+
+msgid "Friday"
+msgstr ""
+
+msgid "Global Settings"
+msgstr ""
+
+msgid "Monday"
+msgstr ""
+
+msgid "Saturday"
+msgstr ""
+
+msgid "Schedule"
+msgstr ""
+
+msgid "Schedule events"
+msgstr ""
+
+msgid "Start Time"
+msgstr ""
+
+msgid "Start WiFi"
+msgstr ""
+
+msgid "Stop Time"
+msgstr ""
+
+msgid "Stop WiFi"
+msgstr ""
+
+msgid "Sunday"
+msgstr ""
+
+msgid "The value %s is invalid"
+msgstr ""
+
+msgid "Thursday"
+msgstr ""
+
+msgid "Tuesday"
+msgstr ""
+
+msgid "Unload Modules (experimental; saves more power)"
+msgstr ""
+
+msgid "View Cron Jobs"
+msgstr ""
+
+msgid "View Logfile"
+msgstr ""
+
+msgid "Wednesday"
+msgstr ""
+
+msgid "Wifi Schedule"
+msgstr ""
+
+msgid "Wifi Schedule Logfile"
+msgstr ""
diff --git a/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po b/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po
new file mode 100644
index 000000000..ab3a8d0bf
--- /dev/null
+++ b/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po
@@ -0,0 +1,101 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8\n"
+
+msgid "Activate wifi"
+msgstr "激活 WiFi"
+
+msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi"
+msgstr "无法找到必需的 /usr/bin/wifi_schedule.sh 或 /sbin/wifi"
+
+msgid "Could not find required programm /usr/bin/iwinfo"
+msgstr "无法找到必需程åºï¼š/usr/bin/iwinfo"
+
+msgid "Cron Jobs"
+msgstr "计划任务"
+
+msgid "Day(s) of Week"
+msgstr "星期"
+
+msgid "Defines a schedule when to turn on and off wifi."
+msgstr "定义自动打开和关闭 WiFi 的计划表"
+
+msgid "Determine Modules Automatically"
+msgstr "自动确定模å—"
+
+msgid "Disable wifi gracefully"
+msgstr "正常关闭 WiFi"
+
+msgid "Disabled wifi forced"
+msgstr "强制关闭 WiFi"
+
+msgid "Enable"
+msgstr "å¯ç”¨"
+
+msgid "Enable Wifi Schedule"
+msgstr "å¯ç”¨ WiFi 计划"
+
+msgid "Enable logging"
+msgstr "å¯ç”¨æ—¥å¿—"
+
+msgid "Force disabling wifi even if stations associated"
+msgstr "å³ä½¿æœ‰è®¾å¤‡è¿žæŽ¥ä¹Ÿå¼ºåˆ¶å…³é—­ WiFi"
+
+msgid "Friday"
+msgstr "星期五"
+
+msgid "Global Settings"
+msgstr "全局设置"
+
+msgid "Monday"
+msgstr "星期一"
+
+msgid "Saturday"
+msgstr "星期六"
+
+msgid "Schedule"
+msgstr "计划表"
+
+msgid "Schedule events"
+msgstr "计划事件"
+
+msgid "Start Time"
+msgstr "å¯åŠ¨æ—¶é—´"
+
+msgid "Start WiFi"
+msgstr "å¯åŠ¨ WiFi"
+
+msgid "Stop Time"
+msgstr "关闭时间"
+
+msgid "Stop WiFi"
+msgstr "关闭 WiFi"
+
+msgid "Sunday"
+msgstr "星期日"
+
+msgid "The value %s is invalid"
+msgstr "%s 的值无效"
+
+msgid "Thursday"
+msgstr "星期四"
+
+msgid "Tuesday"
+msgstr "星期二"
+
+msgid "Unload Modules (experimental; saves more power)"
+msgstr "å¸è½½æ¨¡å—(实验性的,节çœæ›´å¤šç”µé‡ï¼‰"
+
+msgid "View Cron Jobs"
+msgstr "查看计划任务"
+
+msgid "View Logfile"
+msgstr "查看日志文件"
+
+msgid "Wednesday"
+msgstr "星期三"
+
+msgid "Wifi Schedule"
+msgstr "WiFi 计划"
+
+msgid "Wifi Schedule Logfile"
+msgstr "WiFi 计划日志文件"
diff --git a/applications/luci-app-wireguard/Makefile b/applications/luci-app-wireguard/Makefile
new file mode 100644
index 000000000..92cdcf270
--- /dev/null
+++ b/applications/luci-app-wireguard/Makefile
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2016-2017 Dan Luedtke <mail@danrl.com>
+#
+# This is free software, licensed under the Apache License, Version 2.0 .
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=WireGuard Status
+LUCI_DEPENDS:=+wireguard-tools +kmod-wireguard
+LUCI_PKGARCH:=all
+
+PKG_MAINTAINER:=Dan Luedtke <mail@danrl.com>
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-wireguard/luasrc/controller/wireguard.lua b/applications/luci-app-wireguard/luasrc/controller/wireguard.lua
new file mode 100644
index 000000000..68a82fe5c
--- /dev/null
+++ b/applications/luci-app-wireguard/luasrc/controller/wireguard.lua
@@ -0,0 +1,8 @@
+-- Copyright 2016-2017 Dan Luedtke <mail@danrl.com>
+-- Licensed to the public under the Apache License 2.0.
+
+module("luci.controller.wireguard", package.seeall)
+
+function index()
+ entry({"admin", "status", "wireguard"}, template("wireguard"), _("WireGuard Status"), 92)
+end
diff --git a/applications/luci-app-wireguard/luasrc/view/wireguard.htm b/applications/luci-app-wireguard/luasrc/view/wireguard.htm
new file mode 100644
index 000000000..5b5d59a96
--- /dev/null
+++ b/applications/luci-app-wireguard/luasrc/view/wireguard.htm
@@ -0,0 +1,209 @@
+<%#
+ Copyright 2016-2017 Dan Luedtke <mail@danrl.com>
+ Licensed to the public under the Apache License 2.0.
+-%>
+
+<%
+ local data = { }
+ local last_device = ""
+
+ local wg_dump = io.popen("wg show all dump")
+ if wg_dump then
+ local line
+ for line in wg_dump:lines() do
+ local line = string.split(line, "\t")
+ if not (last_device == line[1]) then
+ last_device = line[1]
+ data[line[1]] = {
+ name = line[1],
+ public_key = line[3],
+ listen_port = line[5],
+ fwmark = line[6],
+ peers = { }
+ }
+ else
+ local peer = {
+ public_key = line[2],
+ endpoint = line[3],
+ allowed_ips = { },
+ latest_handshake = line[5],
+ transfer_rx = line[6],
+ transfer_tx = line[7],
+ persistent_keepalive = line[8]
+ }
+ if not (line[4] == '(none)') then
+ for ipkey, ipvalue in pairs(string.split(line[4], ",")) do
+ if #ipvalue > 0 then
+ table.insert(peer['allowed_ips'], ipvalue)
+ end
+ end
+ end
+ table.insert(data[line[1]].peers, peer)
+ end
+ end
+ end
+
+ if luci.http.formvalue("status") == "1" then
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(data)
+ return
+ end
+-%>
+
+<%+header%>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+<script type="text/javascript">//<![CDATA[
+
+ function bytes_to_str(bytes) {
+ bytes = parseFloat(bytes);
+ if (bytes < 1) { return "0 B"; }
+ var sizes = ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB'];
+ var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)));
+ return Math.round(bytes / Math.pow(1024, i), 2) + ' ' + sizes[i];
+ };
+
+ function timestamp_to_str(timestamp) {
+ if (timestamp < 1) {
+ return '<%:Never%>';
+ }
+ var now = new Date();
+ var seconds = (now.getTime() / 1000) - timestamp;
+ var ago = "";
+ if (seconds < 60) {
+ ago = parseInt(seconds) + '<%:s ago%>';
+ } else if (seconds < 3600) {
+ ago = parseInt(seconds / 60) + '<%:m ago%>';
+ } else if (seconds < 86401) {
+ ago = parseInt(seconds / 3600) + '<%:h ago%>';
+ } else {
+ ago = '<%:over a day ago%>';
+ }
+ var t = new Date(timestamp * 1000);
+ return t.toUTCString() + ' (' + ago + ')';
+ }
+
+ XHR.poll(5, '<%=REQUEST_URI%>', { status: 1 },
+ function(x, data) {
+ for (var key in data) {
+ if (!data.hasOwnProperty(key)) { continue; }
+ var ifname = key;
+ var iface = data[key];
+ var s = "";
+ if (iface.public_key == '(none)') {
+ s += '<em><%:Interface does not have a public key!%></em>';
+ } else {
+ s += String.format(
+ '<strong><%:Public Key%>: </strong>%s',
+ iface.public_key
+ );
+ }
+ if (iface.listen_port > 0) {
+ s += String.format(
+ '<br /><strong><%:Listen Port%>: </strong>%s',
+ iface.listen_port
+ );
+ }
+ if (iface.fwmark != 'off') {
+ s += String.format(
+ '<br /><strong><%:Firewall Mark%>: </strong>%s',
+ iface.fwmark
+ );
+ }
+ document.getElementById(ifname + "_info").innerHTML = s;
+ for (var i = 0, ilen = iface.peers.length; i < ilen; i++) {
+ var peer = iface.peers[i];
+ var s = String.format(
+ '<strong><%:Public Key%>: </strong>%s',
+ peer.public_key
+ );
+ if (peer.endpoint != '(none)') {
+ s += String.format(
+ '<br /><strong><%:Endpoint%>: </strong>%s',
+ peer.endpoint
+ );
+ }
+ if (peer.allowed_ips.length > 0) {
+ s += '<br /><strong><%:Allowed IPs%>:</strong>';
+ for (var k = 0, klen = peer.allowed_ips.length; k < klen; k++) {
+ s += '<br />&nbsp;&nbsp;&bull;&nbsp;' + peer.allowed_ips[k];
+ }
+ }
+ if (peer.persistent_keepalive != 'off') {
+ s += String.format(
+ '<br /><strong><%:Persistent Keepalive%>: </strong>%ss',
+ peer.persistent_keepalive
+ );
+ }
+ var icon = '<img src="<%=resource%>/icons/tunnel_disabled.png" />';
+ var now = new Date();
+ if (((now.getTime() / 1000) - peer.latest_handshake) < 140) {
+ icon = '<img src="<%=resource%>/icons/tunnel.png" />';
+ }
+ s += String.format(
+ '<br /><strong><%:Latest Handshake%>: </strong>%s',
+ timestamp_to_str(peer.latest_handshake)
+ );
+ s += String.format(
+ '<br /><strong><%:Data Received%>: </strong>%s' +
+ '<br /><strong><%:Data Transmitted%>: </strong>%s',
+ bytes_to_str(peer.transfer_rx),
+ bytes_to_str(peer.transfer_tx)
+ );
+ document.getElementById(ifname + "_" + peer.public_key + "_icon").innerHTML = icon;
+ document.getElementById(ifname + "_" + peer.public_key + "_info").innerHTML = s;
+ }
+ }
+ });
+//]]></script>
+
+<h2>WireGuard Status</h2>
+
+<fieldset class="cbi-section">
+<%-
+for ikey, iface in pairs(data) do
+ -%>
+ <legend><%:Interface%> <%=ikey%></legend>
+ <table width="100%" cellspacing="10">
+ <tr>
+ <td width="33%" style="vertical-align:top"><%:Configuration%></td>
+ <td>
+ <table>
+ <tr>
+ <td id="<%=ikey%>_icon" style="width:16px; text-align:center; padding:3px">
+ &nbsp;
+ </td>
+ <td id="<%=ikey%>_info" style="vertical-align:middle; padding: 3px">
+ <em><%:Collecting data...%></em>
+ </td>
+ </tr></table>
+ </td>
+ </tr>
+ <%-
+ for pkey, peer in pairs(iface.peers) do
+ -%>
+ <tr>
+ <td width="33%" style="vertical-align:top"><%:Peer%></td>
+ <td>
+ <table>
+ <tr>
+ <td id="<%=ikey%>_<%=peer.public_key%>_icon" style="width:16px; text-align:center; padding:3px">
+ <img src="<%=resource%>/icons/tunnel_disabled.png" /><br />
+ <small>?</small>
+ </td>
+ <td id="<%=ikey%>_<%=peer.public_key%>_info" style="vertical-align:middle; padding: 3px">
+ <em><%:Collecting data...%></em>
+ </td>
+ </tr></table>
+ </td>
+ </tr>
+ <%-
+ end
+ -%>
+ </table>
+ <%-
+end
+-%>
+</fieldset>
+
+<%+footer%>
diff --git a/applications/luci-app-wireguard/po/ja/wireguard.po b/applications/luci-app-wireguard/po/ja/wireguard.po
new file mode 100644
index 000000000..5cd7a9003
--- /dev/null
+++ b/applications/luci-app-wireguard/po/ja/wireguard.po
@@ -0,0 +1,74 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2017-02-28 00:31+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Language-Team: \n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.12\n"
+"X-Poedit-Basepath: .\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+msgid "Allowed IPs"
+msgstr "許å¯ã•ã‚ŒãŸIP"
+
+msgid "Collecting data..."
+msgstr "データåŽé›†ä¸­ã§ã™..."
+
+msgid "Configuration"
+msgstr "設定"
+
+msgid "Data Received"
+msgstr "å—信済ã¿ãƒ‡ãƒ¼ã‚¿"
+
+msgid "Data Transmitted"
+msgstr "é€ä¿¡æ¸ˆã¿ãƒ‡ãƒ¼ã‚¿"
+
+msgid "Endpoint"
+msgstr "エンドãƒã‚¤ãƒ³ãƒˆ"
+
+msgid "Firewall Mark"
+msgstr "ファイアウォール マーク"
+
+msgid "Interface"
+msgstr "インターフェース"
+
+msgid "Interface does not have a public key!"
+msgstr "インターフェースã«å…¬é–‹éµãŒã‚ã‚Šã¾ã›ã‚“ï¼"
+
+msgid "Latest Handshake"
+msgstr "最新ã®ãƒãƒ³ãƒ‰ã‚·ã‚§ã‚¤ã‚¯"
+
+msgid "Listen Port"
+msgstr "å¾…ã¡å—ã‘ãƒãƒ¼ãƒˆ"
+
+msgid "Never"
+msgstr "ç„¡ã—"
+
+msgid "Peer"
+msgstr "ピア"
+
+msgid "Persistent Keepalive"
+msgstr "永続的ãªã‚­ãƒ¼ãƒ—アライブ"
+
+msgid "Public Key"
+msgstr "公開éµ"
+
+msgid "WireGuard Status"
+msgstr "WireGuard ステータス"
+
+msgid "h ago"
+msgstr "時間å‰"
+
+msgid "m ago"
+msgstr "分å‰"
+
+msgid "over a day ago"
+msgstr "1日以上å‰"
+
+msgid "s ago"
+msgstr "秒å‰"
diff --git a/applications/luci-app-wireguard/po/pt-br/wireguard.po b/applications/luci-app-wireguard/po/pt-br/wireguard.po
new file mode 100644
index 000000000..d3b5059d5
--- /dev/null
+++ b/applications/luci-app-wireguard/po/pt-br/wireguard.po
@@ -0,0 +1,73 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.11\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Language: pt_BR\n"
+
+msgid "Allowed IPs"
+msgstr "Endereços IP autorizados"
+
+msgid "Collecting data..."
+msgstr "Coletando dados..."
+
+msgid "Configuration"
+msgstr "Configuração"
+
+msgid "Data Received"
+msgstr "Dados Recebidos"
+
+msgid "Data Transmitted"
+msgstr "Dados Enviados"
+
+msgid "Endpoint"
+msgstr "Equipamento do ponto final"
+
+msgid "Firewall Mark"
+msgstr "Marca do Firewall"
+
+msgid "Interface"
+msgstr "Interface"
+
+msgid "Interface does not have a public key!"
+msgstr "A interface não tem uma chave pública!"
+
+msgid "Latest Handshake"
+msgstr "Última Negociação"
+
+msgid "Listen Port"
+msgstr "Porta de Escuta"
+
+msgid "Never"
+msgstr "Nunca"
+
+msgid "Peer"
+msgstr "Parceiro"
+
+msgid "Persistent Keepalive"
+msgstr "Manter Conexões Abertas (Keepalive)"
+
+msgid "Public Key"
+msgstr "Chave Pública"
+
+msgid "WireGuard Status"
+msgstr "Estado do WireGuard"
+
+msgid "h ago"
+msgstr "horas atrás"
+
+msgid "m ago"
+msgstr "meses atrás"
+
+msgid "over a day ago"
+msgstr "mais de um dia atrás"
+
+msgid "s ago"
+msgstr "segundos atrás"
diff --git a/applications/luci-app-wireguard/po/templates/wireguard.pot b/applications/luci-app-wireguard/po/templates/wireguard.pot
new file mode 100644
index 000000000..9ec5c6004
--- /dev/null
+++ b/applications/luci-app-wireguard/po/templates/wireguard.pot
@@ -0,0 +1,62 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "Allowed IPs"
+msgstr ""
+
+msgid "Collecting data..."
+msgstr ""
+
+msgid "Configuration"
+msgstr ""
+
+msgid "Data Received"
+msgstr ""
+
+msgid "Data Transmitted"
+msgstr ""
+
+msgid "Endpoint"
+msgstr ""
+
+msgid "Firewall Mark"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid "Interface does not have a public key!"
+msgstr ""
+
+msgid "Latest Handshake"
+msgstr ""
+
+msgid "Listen Port"
+msgstr ""
+
+msgid "Never"
+msgstr ""
+
+msgid "Peer"
+msgstr ""
+
+msgid "Persistent Keepalive"
+msgstr ""
+
+msgid "Public Key"
+msgstr ""
+
+msgid "WireGuard Status"
+msgstr ""
+
+msgid "h ago"
+msgstr ""
+
+msgid "m ago"
+msgstr ""
+
+msgid "over a day ago"
+msgstr ""
+
+msgid "s ago"
+msgstr ""
diff --git a/applications/luci-app-wireguard/po/zh-cn/wireguard.po b/applications/luci-app-wireguard/po/zh-cn/wireguard.po
new file mode 100644
index 000000000..e873a8389
--- /dev/null
+++ b/applications/luci-app-wireguard/po/zh-cn/wireguard.po
@@ -0,0 +1,73 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.0.1\n"
+"Last-Translator: liushuyu <liushuyu011@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: zh_CN\n"
+
+msgid "Allowed IPs"
+msgstr "å…许的 IP"
+
+msgid "Collecting data..."
+msgstr "正在收集数æ®..."
+
+msgid "Configuration"
+msgstr "é…ç½®"
+
+msgid "Data Received"
+msgstr "已接收"
+
+msgid "Data Transmitted"
+msgstr "å·²å‘é€"
+
+msgid "Endpoint"
+msgstr "传输端点"
+
+msgid "Firewall Mark"
+msgstr "防ç«å¢™æ ‡è¯†"
+
+msgid "Interface"
+msgstr "接å£"
+
+msgid "Interface does not have a public key!"
+msgstr "接å£æ²¡æœ‰é…置公钥ï¼"
+
+msgid "Latest Handshake"
+msgstr "上次æ¡æ‰‹"
+
+msgid "Listen Port"
+msgstr "监å¬ç«¯å£"
+
+msgid "Never"
+msgstr "从ä¸"
+
+msgid "Peer"
+msgstr "对端"
+
+msgid "Persistent Keepalive"
+msgstr "Keepalive 间隔(秒)"
+
+msgid "Public Key"
+msgstr "公钥"
+
+msgid "WireGuard Status"
+msgstr "WireGuard 状æ€"
+
+msgid "h ago"
+msgstr "å°æ—¶å‰"
+
+msgid "m ago"
+msgstr "分钟å‰"
+
+msgid "over a day ago"
+msgstr "超过一天å‰"
+
+msgid "s ago"
+msgstr "秒å‰"
diff --git a/applications/luci-app-wol/luasrc/controller/wol.lua b/applications/luci-app-wol/luasrc/controller/wol.lua
index 73a9594b2..dbbfdde12 100644
--- a/applications/luci-app-wol/luasrc/controller/wol.lua
+++ b/applications/luci-app-wol/luasrc/controller/wol.lua
@@ -1,6 +1,6 @@
module("luci.controller.wol", package.seeall)
function index()
- entry({"admin", "network", "wol"}, cbi("wol"), _("Wake on LAN"), 90)
- entry({"mini", "network", "wol"}, cbi("wol"), _("Wake on LAN"), 90)
+ entry({"admin", "services", "wol"}, cbi("wol"), _("Wake on LAN"), 90)
+ entry({"mini", "services", "wol"}, cbi("wol"), _("Wake on LAN"), 90)
end
diff --git a/applications/luci-app-wol/luasrc/model/cbi/wol.lua b/applications/luci-app-wol/luasrc/model/cbi/wol.lua
index e87cac3dc..ec6a1be2a 100644
--- a/applications/luci-app-wol/luasrc/model/cbi/wol.lua
+++ b/applications/luci-app-wol/luasrc/model/cbi/wol.lua
@@ -48,6 +48,13 @@ sys.net.mac_hints(function(mac, name)
host:value(mac, "%s (%s)" %{ mac, name })
end)
+if has_ewk then
+ broadcast = s:option(Flag, "broadcast",
+ translate("Send to broadcast address"))
+ if has_wol then
+ broadcast:depends("binary", "/usr/bin/etherwake")
+ end
+end
function host.write(self, s, val)
local host = luci.http.formvalue("cbid.wol.1.mac")
@@ -59,8 +66,10 @@ function host.write(self, s, val)
if util == "/usr/bin/etherwake" then
local iface = luci.http.formvalue("cbid.wol.1.iface")
- cmd = "%s -D%s %q" %{
- util, (iface ~= "" and " -i %q" % iface or ""), host
+ local broadcast = luci.http.formvalue("cbid.wol.1.broadcast")
+ cmd = "%s -D%s %s %q" %{
+ util, (iface ~= "" and " -i %q" % iface or ""),
+ (broadcast == "1" and " -b" or ""), host
}
else
cmd = "%s -v %q" %{ util, host }
diff --git a/applications/luci-app-wol/po/ca/wol.po b/applications/luci-app-wol/po/ca/wol.po
index 42f7cf75a..387b4717c 100644
--- a/applications/luci-app-wol/po/ca/wol.po
+++ b/applications/luci-app-wol/po/ca/wol.po
@@ -29,6 +29,9 @@ msgstr "Host per a despertar"
msgid "Network interface to use"
msgstr "Interfície de xarxa per a utilitzar"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/cs/wol.po b/applications/luci-app-wol/po/cs/wol.po
index 6ee7f67b8..49488125e 100644
--- a/applications/luci-app-wol/po/cs/wol.po
+++ b/applications/luci-app-wol/po/cs/wol.po
@@ -27,6 +27,9 @@ msgstr "Adresa zařízení, které má být probuzeno"
msgid "Network interface to use"
msgstr "Použité síťové rozhraní"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/de/wol.po b/applications/luci-app-wol/po/de/wol.po
index 52940efa3..efbd122d4 100644
--- a/applications/luci-app-wol/po/de/wol.po
+++ b/applications/luci-app-wol/po/de/wol.po
@@ -28,6 +28,9 @@ msgstr "Anzuschaltender Rechner"
msgid "Network interface to use"
msgstr "Verwendete Schnittstelle"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/el/wol.po b/applications/luci-app-wol/po/el/wol.po
index cb7c3b971..422a51b3d 100644
--- a/applications/luci-app-wol/po/el/wol.po
+++ b/applications/luci-app-wol/po/el/wol.po
@@ -25,6 +25,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/en/wol.po b/applications/luci-app-wol/po/en/wol.po
index 48c7302a3..877ba34fa 100644
--- a/applications/luci-app-wol/po/en/wol.po
+++ b/applications/luci-app-wol/po/en/wol.po
@@ -23,6 +23,9 @@ msgstr "Host to wake up"
msgid "Network interface to use"
msgstr "Network interface to use"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/es/wol.po b/applications/luci-app-wol/po/es/wol.po
index f5bcf6bf4..e54ffdc78 100644
--- a/applications/luci-app-wol/po/es/wol.po
+++ b/applications/luci-app-wol/po/es/wol.po
@@ -27,6 +27,9 @@ msgstr "Máquina a despertar"
msgid "Network interface to use"
msgstr "Interfaz de red a utilizar"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/fr/wol.po b/applications/luci-app-wol/po/fr/wol.po
index 0bed86d8f..848690568 100644
--- a/applications/luci-app-wol/po/fr/wol.po
+++ b/applications/luci-app-wol/po/fr/wol.po
@@ -27,6 +27,9 @@ msgstr "Hôte à réveiller"
msgid "Network interface to use"
msgstr "Interface réseau à utiliser"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/he/wol.po b/applications/luci-app-wol/po/he/wol.po
index cb7c3b971..422a51b3d 100644
--- a/applications/luci-app-wol/po/he/wol.po
+++ b/applications/luci-app-wol/po/he/wol.po
@@ -25,6 +25,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/hu/wol.po b/applications/luci-app-wol/po/hu/wol.po
index f47191cba..3895e92e7 100644
--- a/applications/luci-app-wol/po/hu/wol.po
+++ b/applications/luci-app-wol/po/hu/wol.po
@@ -29,6 +29,9 @@ msgstr "Felélesztendő gép"
msgid "Network interface to use"
msgstr "Használandó interfész"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/it/wol.po b/applications/luci-app-wol/po/it/wol.po
index 63ac0d8dc..bf23eb8ce 100644
--- a/applications/luci-app-wol/po/it/wol.po
+++ b/applications/luci-app-wol/po/it/wol.po
@@ -27,6 +27,9 @@ msgstr "Host da \"svegliare\""
msgid "Network interface to use"
msgstr "Interfacci di rete da usare"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/ja/wol.po b/applications/luci-app-wol/po/ja/wol.po
index c18b83193..bedcbbfc4 100644
--- a/applications/luci-app-wol/po/ja/wol.po
+++ b/applications/luci-app-wol/po/ja/wol.po
@@ -2,18 +2,18 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-19 00:29+0200\n"
-"PO-Revision-Date: 2013-10-06 17:12+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
+"PO-Revision-Date: 2017-01-27 21:03+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language-Team: none\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
msgid "Broadcast on all interfaces"
msgstr "å…¨ã¦ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¸ãƒ–ロードキャスト"
@@ -27,12 +27,14 @@ msgstr "èµ·å‹•ã™ã‚‹ãƒ›ã‚¹ãƒˆã‚’指定"
msgid "Network interface to use"
msgstr "使用ã™ã‚‹ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
-#, fuzzy
+msgid "Send to broadcast address"
+msgstr "ブロードキャスト アドレスã«é€ä¿¡ã™ã‚‹"
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
-"片方ã®ãƒ„ールã®ã¿ãŒå‹•ä½œã™ã‚‹å ´åˆãŒã‚ã‚‹ãŸã‚ã€ç‰‡æ–¹ãŒå¤±æ•—ã™ã‚‹å ´åˆã¯åˆ¥ã®ãƒ„ールを試"
-"ã—ã¦ã¿ã¦ãã ã•ã„。"
+"片方ã®ãƒ„ールã®ã¿ãŒå‹•ä½œã™ã‚‹å ´åˆãŒã‚ã‚‹ãŸã‚ã€ç‰‡æ–¹ãŒå¤±æ•—ã™ã‚‹å ´åˆã¯åˆ¥ã®ãƒ„ールを"
+"試ã—ã¦ã¿ã¦ãã ã•ã„。"
msgid "Specifies the interface the WoL packet is sent on"
msgstr "WoLパケットをé€ä¿¡ã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’指定"
@@ -46,8 +48,8 @@ msgstr "Wake on LAN"
msgid ""
"Wake on LAN is a mechanism to remotely boot computers in the local network."
msgstr ""
-"Wake on LANã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã®ã‚³ãƒ³ãƒ”ュータをé éš”ã§èµ·å‹•ã•ã›ã‚‹ã“ã¨ãŒã§ã"
-"る機能ã§ã™ã€‚"
+"Wake on LANã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã®ã‚³ãƒ³ãƒ”ュータをé éš”ã§èµ·å‹•ã•ã›ã‚‹ã“ã¨ãŒã§"
+"ãる機能ã§ã™ã€‚"
msgid "Wake up host"
msgstr "ホストを起動"
diff --git a/applications/luci-app-wol/po/ms/wol.po b/applications/luci-app-wol/po/ms/wol.po
index 74380f27b..47c335d2e 100644
--- a/applications/luci-app-wol/po/ms/wol.po
+++ b/applications/luci-app-wol/po/ms/wol.po
@@ -24,6 +24,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/no/wol.po b/applications/luci-app-wol/po/no/wol.po
index 2f0a8ad63..6dd0c0ea6 100644
--- a/applications/luci-app-wol/po/no/wol.po
+++ b/applications/luci-app-wol/po/no/wol.po
@@ -18,6 +18,9 @@ msgstr "Vert som skal startes opp"
msgid "Network interface to use"
msgstr "Nettverksgrensesnitt"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/pl/wol.po b/applications/luci-app-wol/po/pl/wol.po
index c599b9ec3..3533e4574 100644
--- a/applications/luci-app-wol/po/pl/wol.po
+++ b/applications/luci-app-wol/po/pl/wol.po
@@ -28,6 +28,9 @@ msgstr "Host do wybudzenia"
msgid "Network interface to use"
msgstr "Użyty interfejs sieciowy"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/pt-br/wol.po b/applications/luci-app-wol/po/pt-br/wol.po
index 6a21a855b..783ec0bc0 100644
--- a/applications/luci-app-wol/po/pt-br/wol.po
+++ b/applications/luci-app-wol/po/pt-br/wol.po
@@ -2,18 +2,18 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-19 00:29+0200\n"
-"PO-Revision-Date: 2011-10-11 20:31+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
+"PO-Revision-Date: 2017-02-20 18:13-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language-Team: none\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.4\n"
+"X-Generator: Poedit 1.8.11\n"
msgid "Broadcast on all interfaces"
msgstr "Broadcast em todas as interfaces"
@@ -27,12 +27,14 @@ msgstr "Computador para acordar"
msgid "Network interface to use"
msgstr "Interfaces de rede para usar"
-#, fuzzy
+msgid "Send to broadcast address"
+msgstr "Enviar para o endereço de broadcast"
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
-"Algumas vezes, somente uma das ferramentas funciona. Se uma delas falhar, "
-"tente a outra"
+"Algumas vezes, somente uma das duas ferramentas funciona. Se uma delas "
+"falhar, tente a outra"
msgid "Specifies the interface the WoL packet is sent on"
msgstr "Especifica a interface para onde os pacotes de WoL serão enviados"
diff --git a/applications/luci-app-wol/po/pt/wol.po b/applications/luci-app-wol/po/pt/wol.po
index 540e54369..1cce43086 100644
--- a/applications/luci-app-wol/po/pt/wol.po
+++ b/applications/luci-app-wol/po/pt/wol.po
@@ -27,6 +27,9 @@ msgstr "Host a acordar"
msgid "Network interface to use"
msgstr "Interface de rede a usar"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/ro/wol.po b/applications/luci-app-wol/po/ro/wol.po
index 154a3f9fb..71a06975c 100644
--- a/applications/luci-app-wol/po/ro/wol.po
+++ b/applications/luci-app-wol/po/ro/wol.po
@@ -28,6 +28,9 @@ msgstr "Statie pentru \"trezire\""
msgid "Network interface to use"
msgstr "Interfata de retea pentru utilizare"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/ru/wol.po b/applications/luci-app-wol/po/ru/wol.po
index 9a8436601..9d3e08d56 100644
--- a/applications/luci-app-wol/po/ru/wol.po
+++ b/applications/luci-app-wol/po/ru/wol.po
@@ -29,6 +29,9 @@ msgstr "ХоÑÑ‚, который необходимо разбудить"
msgid "Network interface to use"
msgstr "ИÑпользуемый Ñетевой интерфейÑ"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/sk/wol.po b/applications/luci-app-wol/po/sk/wol.po
index eea59ebc3..bdaf4e70c 100644
--- a/applications/luci-app-wol/po/sk/wol.po
+++ b/applications/luci-app-wol/po/sk/wol.po
@@ -20,6 +20,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/sv/wol.po b/applications/luci-app-wol/po/sv/wol.po
index f08f727a8..5b3e92347 100644
--- a/applications/luci-app-wol/po/sv/wol.po
+++ b/applications/luci-app-wol/po/sv/wol.po
@@ -23,6 +23,9 @@ msgstr "Värd som ska väckas upp"
msgid "Network interface to use"
msgstr "Nätverksgränssnitt som ska användas"
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/templates/wol.pot b/applications/luci-app-wol/po/templates/wol.pot
index 1305c5388..9593dea65 100644
--- a/applications/luci-app-wol/po/templates/wol.pot
+++ b/applications/luci-app-wol/po/templates/wol.pot
@@ -13,6 +13,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/tr/wol.po b/applications/luci-app-wol/po/tr/wol.po
index 9be6934cf..684a9ae5f 100644
--- a/applications/luci-app-wol/po/tr/wol.po
+++ b/applications/luci-app-wol/po/tr/wol.po
@@ -25,6 +25,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/uk/wol.po b/applications/luci-app-wol/po/uk/wol.po
index c09d144b3..703cd370f 100644
--- a/applications/luci-app-wol/po/uk/wol.po
+++ b/applications/luci-app-wol/po/uk/wol.po
@@ -30,6 +30,9 @@ msgstr "Комп'ютер, Ñкий необхідно розбудити"
msgid "Network interface to use"
msgstr "ВикориÑтовувати мережевий інтерфейÑ"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/vi/wol.po b/applications/luci-app-wol/po/vi/wol.po
index 9be6934cf..684a9ae5f 100644
--- a/applications/luci-app-wol/po/vi/wol.po
+++ b/applications/luci-app-wol/po/vi/wol.po
@@ -25,6 +25,9 @@ msgstr ""
msgid "Network interface to use"
msgstr ""
+msgid "Send to broadcast address"
+msgstr ""
+
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
msgstr ""
diff --git a/applications/luci-app-wol/po/zh-cn/wol.po b/applications/luci-app-wol/po/zh-cn/wol.po
index 6d9cc7227..7bbae6117 100644
--- a/applications/luci-app-wol/po/zh-cn/wol.po
+++ b/applications/luci-app-wol/po/zh-cn/wol.po
@@ -25,6 +25,9 @@ msgstr "选择è¦å”¤é†’的主机"
msgid "Network interface to use"
msgstr "选择使用的网络接å£"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wol/po/zh-tw/wol.po b/applications/luci-app-wol/po/zh-tw/wol.po
index ee290ec2e..553d2d04f 100644
--- a/applications/luci-app-wol/po/zh-tw/wol.po
+++ b/applications/luci-app-wol/po/zh-tw/wol.po
@@ -23,6 +23,9 @@ msgstr "è¦å–šé†’主機清單"
msgid "Network interface to use"
msgstr "使用的網路介é¢"
+msgid "Send to broadcast address"
+msgstr ""
+
#, fuzzy
msgid ""
"Sometimes only one of the two tools works. If one fails, try the other one"
diff --git a/applications/luci-app-wshaper/luasrc/controller/wshaper.lua b/applications/luci-app-wshaper/luasrc/controller/wshaper.lua
deleted file mode 100644
index 2d0fe484f..000000000
--- a/applications/luci-app-wshaper/luasrc/controller/wshaper.lua
+++ /dev/null
@@ -1,9 +0,0 @@
--- Copyright 2011 Manuel Munz <freifunk somakoma de>
--- Licensed to the public under the Apache License 2.0.
-
-module "luci.controller.wshaper"
-
-function index()
- entry({"admin", "network", "wshaper"}, cbi("wshaper"), _("Wondershaper"), 80)
-end
-
diff --git a/applications/luci-app-wshaper/luasrc/model/cbi/wshaper.lua b/applications/luci-app-wshaper/luasrc/model/cbi/wshaper.lua
deleted file mode 100644
index 6bd0255cd..000000000
--- a/applications/luci-app-wshaper/luasrc/model/cbi/wshaper.lua
+++ /dev/null
@@ -1,46 +0,0 @@
--- Copyright 2011 Manuel Munz <freifunk at somakoma dot de>
--- Licensed to the public under the Apache License 2.0.
-
-require("luci.tools.webadmin")
-
-m = Map("wshaper", translate("Wondershaper"),
- translate("Wondershaper shapes traffic to ensure low latencies for interactive traffic even when your " ..
- "internet connection is highly saturated."))
-
-s = m:section(NamedSection, "settings", "wshaper", translate("Wondershaper settings"))
-s.anonymous = true
-
-network = s:option(ListValue, "network", translate("Interface"))
-luci.tools.webadmin.cbi_add_networks(network)
-
-uplink = s:option(Value, "uplink", translate("Uplink"), translate("Upstream bandwidth in kbit/s"))
-uplink.optional = false
-uplink.datatype = "uinteger"
-uplink.default = "240"
-
-uplink = s:option(Value, "downlink", translate("Downlink"), translate("Downstream bandwidth in kbit/s"))
-uplink.optional = false
-uplink.datatype = "uinteger"
-uplink.default = "200"
-
-nopriohostsrc = s:option(DynamicList, "nopriohostsrc", translate("Low priority hosts (Source)"), translate("Host or Network in CIDR notation."))
-nopriohostsrc.optional = true
-nopriohostsrc.datatype = ipaddr
-nopriohostsrc.placeholder = "10.0.0.1/32"
-
-nopriohostdst = s:option(DynamicList, "nopriohostdst", translate("Low priority hosts (Destination)"), translate("Host or Network in CIDR notation."))
-nopriohostdst.optional = true
-nopriohostdst.datatype = ipaddr
-nopriohostdst.placeholder = "10.0.0.1/32"
-
-noprioportsrc = s:option(DynamicList, "noprioportsrc", translate("Low priority source ports"))
-noprioportsrc.optional = true
-noprioportsrc.datatype = "range(0,65535)"
-noprioportsrc.placeholder = "21"
-
-noprioportdst = s:option(DynamicList, "noprioportdst", translate("Low priority destination ports"))
-noprioportdst.optional = true
-noprioportdst.datatype = "range(0,65535)"
-noprioportdst.placeholder = "21"
-
-return m
diff --git a/applications/luci-app-wshaper/po/ca/wshaper.po b/applications/luci-app-wshaper/po/ca/wshaper.po
deleted file mode 100644
index 256038332..000000000
--- a/applications/luci-app-wshaper/po/ca/wshaper.po
+++ /dev/null
@@ -1,59 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-06-01 22:51+0200\n"
-"PO-Revision-Date: 2014-07-01 03:51+0200\n"
-"Last-Translator: Alex <alexhenrie24@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: ca\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr "Enllaç descendent"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Amplada de banda descendent en kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Host o xarxa en notació CIDR."
-
-msgid "Interface"
-msgstr "Interfície"
-
-msgid "Low priority destination ports"
-msgstr "Ports de destí de baixa prioritat"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Hosts de baixa prioritat (destí)"
-
-msgid "Low priority hosts (Source)"
-msgstr "Hosts de baixa prioritat (origen)"
-
-msgid "Low priority source ports"
-msgstr "Ports d'origen de baixa prioritat"
-
-msgid "Uplink"
-msgstr "Enllaç ascendent"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Amplada de banda ascendent en kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Ajusts del Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershapter afaiçona el trànsit per assegurar latències baixes per a "
-"trànsit interactiu encara que la vostra connexió de Internet estigui "
-"altament saturada."
diff --git a/applications/luci-app-wshaper/po/cs/wshaper.po b/applications/luci-app-wshaper/po/cs/wshaper.po
deleted file mode 100644
index bca6c4e57..000000000
--- a/applications/luci-app-wshaper/po/cs/wshaper.po
+++ /dev/null
@@ -1,58 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2012-04-24 15:20+0200\n"
-"Last-Translator: awm1 <awm1klimes8vladimir@gmail.com>\n"
-"Language-Team: none\n"
-"Language: cs\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-"X-Generator: Pootle 2.0.4\n"
-
-msgid "Downlink"
-msgstr "Příchozí rychlost"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Rychlost stahování dat v kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Adresa poÄítaÄe nebo sítÄ› v CIDR notaci."
-
-msgid "Interface"
-msgstr "Síťové rozhraní"
-
-msgid "Low priority destination ports"
-msgstr "Cílové porty s nízkou prioritou"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Adresy cílových poÄítaÄů s nízkou prioritou"
-
-msgid "Low priority hosts (Source)"
-msgstr "Adresy zdrojových poÄítaÄů s nízkou prioritou"
-
-msgid "Low priority source ports"
-msgstr "Zdrojové porty s nízkou prioritou"
-
-msgid "Uplink"
-msgstr "Odchozí rychlost"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Rychlost odesílání dat v kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Nastavení skriptu Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Úkolem skriptu Wondershaper je řízení provozu na daném síťovém rozhraní. "
-"Snaží se zajistit nízké přenosové zpoždění pro \"interaktivní\" síťový "
-"provoz (např. SSH), a to především v okamžicích, kdy ostatní síťový provoz "
-"zahltí linku."
diff --git a/applications/luci-app-wshaper/po/de/wshaper.po b/applications/luci-app-wshaper/po/de/wshaper.po
deleted file mode 100644
index 39dd61771..000000000
--- a/applications/luci-app-wshaper/po/de/wshaper.po
+++ /dev/null
@@ -1,58 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: 2011-10-18 12:28+0200\n"
-"Last-Translator: Manuel <freifunk@somakoma.de>\n"
-"Language-Team: \n"
-"Language: de\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Pootle 2.0.4\n"
-
-msgid "Downlink"
-msgstr "Download"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Download Bandbreite in kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Rechner oder Netzwerk in CIDR Schreibweise"
-
-msgid "Interface"
-msgstr "Schnittstelle"
-
-msgid "Low priority destination ports"
-msgstr "Zielports mit niedriger Priorität"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Zielrechner mit nideriger Priorität"
-
-msgid "Low priority hosts (Source)"
-msgstr "Quellrechner mit neidriger Priorität"
-
-msgid "Low priority source ports"
-msgstr "Quellports mit niedriger Priorität"
-
-msgid "Uplink"
-msgstr "Upload"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Upload Bandbreite in kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Wondershaper Einstellungen"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper ermöglicht mit Hilfe von Traffic Shaping niedrige Latenzzeiten "
-"für interaktiven Internetverkehr selbst wenn die Internetverbindung extrem "
-"ausgelastet ist."
diff --git a/applications/luci-app-wshaper/po/el/wshaper.po b/applications/luci-app-wshaper/po/el/wshaper.po
deleted file mode 100644
index 6d2f09284..000000000
--- a/applications/luci-app-wshaper/po/el/wshaper.po
+++ /dev/null
@@ -1,55 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-18 17:10+0200\n"
-"PO-Revision-Date: 2012-03-18 17:10+0200\n"
-"Last-Translator: Vasilis <acinonyx@openwrt.gr>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: el\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Pootle 2.0.4\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr "Διεπαφή"
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/en/wshaper.po b/applications/luci-app-wshaper/po/en/wshaper.po
deleted file mode 100644
index b6858398c..000000000
--- a/applications/luci-app-wshaper/po/en/wshaper.po
+++ /dev/null
@@ -1,54 +0,0 @@
-msgid ""
-msgstr ""
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"Project-Id-Version: LuCI\n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en\n"
-"X-Generator: Poedit 1.6.10\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/es/wshaper.po b/applications/luci-app-wshaper/po/es/wshaper.po
deleted file mode 100644
index f562760d5..000000000
--- a/applications/luci-app-wshaper/po/es/wshaper.po
+++ /dev/null
@@ -1,58 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-04-16 01:00+0200\n"
-"PO-Revision-Date: 2012-09-03 18:57+0200\n"
-"Last-Translator: José Vicente <josevteg@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: es\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr "Enlace de bajada"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Ancho de banda de bajada en Kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Máquina o red en notación CIDR."
-
-msgid "Interface"
-msgstr "Interfaz"
-
-msgid "Low priority destination ports"
-msgstr "Puertos de destino de prioridad baja"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Máquinas de prioridad baja (destino)"
-
-msgid "Low priority hosts (Source)"
-msgstr "Máquinas de prioridad baja (origen)"
-
-msgid "Low priority source ports"
-msgstr "Puertos de origen de prioridad baja"
-
-msgid "Uplink"
-msgstr "Enlace de salida"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Ancho de banda de subida en Kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Configuración de Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper modela el tráfico para asegurar latencias bajas al tráfico "
-"interactivo incluso cuando la conexión a Internet esté muy saturada."
diff --git a/applications/luci-app-wshaper/po/fr/wshaper.po b/applications/luci-app-wshaper/po/fr/wshaper.po
deleted file mode 100644
index 2fc9f53c5..000000000
--- a/applications/luci-app-wshaper/po/fr/wshaper.po
+++ /dev/null
@@ -1,62 +0,0 @@
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"Project-Id-Version: LuCI\n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fr\n"
-"X-Generator: Poedit 1.6.10\n"
-
-msgid "Downlink"
-msgstr "Lien descendant (télé-chargement)"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Bande-passante descendante en kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Hôte ou réseau en notation CIDR."
-
-msgid "Interface"
-msgstr "Interface"
-
-msgid "Low priority destination ports"
-msgstr "Ports-cible à faible priorité"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Hôtes-cible à faible priorité"
-
-msgid "Low priority hosts (Source)"
-msgstr "Hôtes-source à faible priorité"
-
-msgid "Low priority source ports"
-msgstr "Ports-source à faible priorité"
-
-msgid "Uplink"
-msgstr "Lien montant (envois)"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Bande-passante montante en kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Paramètres Wondershaper"
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-
-#~ msgid ""
-#~ "Wondershaper uses traffic shaping to ensure low latencies for interactive "
-#~ "traffic even when your internet connection is highly saturated."
-#~ msgstr ""
-#~ "Wondershaper gère la priorités entre les flux pour assurer une faible "
-#~ "latence au trafic interactif même quand votre connexion Internet est très "
-#~ "chargée."
diff --git a/applications/luci-app-wshaper/po/he/wshaper.po b/applications/luci-app-wshaper/po/he/wshaper.po
deleted file mode 100644
index f03d5df03..000000000
--- a/applications/luci-app-wshaper/po/he/wshaper.po
+++ /dev/null
@@ -1,54 +0,0 @@
-msgid ""
-msgstr ""
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"Project-Id-Version: LuCI\n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: he\n"
-"X-Generator: Poedit 1.6.10\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/hu/wshaper.po b/applications/luci-app-wshaper/po/hu/wshaper.po
deleted file mode 100644
index 2377fa543..000000000
--- a/applications/luci-app-wshaper/po/hu/wshaper.po
+++ /dev/null
@@ -1,54 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-msgid "Downlink"
-msgstr "Letöltés"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Letöltési sebesség kbit/másodberc-ben"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Gép vagy hálózat (CIDR jelöléssel)"
-
-msgid "Interface"
-msgstr "Interfész"
-
-msgid "Low priority destination ports"
-msgstr "Alacsony prioritású cél portok"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Alacson prioritású cél gépek"
-
-msgid "Low priority hosts (Source)"
-msgstr "Alacsony prioritású forrás gépek"
-
-msgid "Low priority source ports"
-msgstr "Alacson prioritású forrás portok"
-
-msgid "Uplink"
-msgstr "Feltöltés"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Feltöltési sebesség kbit/másodperc-ben"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Wondershaper beállítások"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"A Wondershaper 'traffic shaping'-et használatával biztosítja az interaktív "
-"forgalom alacsony késleletetését még akkor is ha az internet kapcsolat "
-"erősen leterhelt."
diff --git a/applications/luci-app-wshaper/po/it/wshaper.po b/applications/luci-app-wshaper/po/it/wshaper.po
deleted file mode 100644
index 6a72c7e5d..000000000
--- a/applications/luci-app-wshaper/po/it/wshaper.po
+++ /dev/null
@@ -1,59 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-01-28 01:36+0200\n"
-"PO-Revision-Date: 2013-02-03 14:07+0200\n"
-"Last-Translator: Francesco <3gasas@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: it\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr "Collegamento discendente"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Larghezza di banda in downstream in kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Host o rete in notazione CIDR."
-
-msgid "Interface"
-msgstr "Interfaccia"
-
-msgid "Low priority destination ports"
-msgstr "Porte di destinazione a bassa priorità"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Hosts a bassa priorità (Destinazione)"
-
-msgid "Low priority hosts (Source)"
-msgstr "Hosts a bassa priorità (Fonte)"
-
-msgid "Low priority source ports"
-msgstr "Porte sorgenti a bassa priorità"
-
-msgid "Uplink"
-msgstr "Uplink"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Larghezza di banda in upstream in kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Impostazioni Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"WonderShaper usa la regolazione del traffico per garantire bassa latenza per "
-"il traffico interattivo anche quando la connessione a Internet è molto "
-"satura."
diff --git a/applications/luci-app-wshaper/po/ja/wshaper.po b/applications/luci-app-wshaper/po/ja/wshaper.po
deleted file mode 100644
index d58476cf3..000000000
--- a/applications/luci-app-wshaper/po/ja/wshaper.po
+++ /dev/null
@@ -1,58 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-17 18:28+0200\n"
-"PO-Revision-Date: 2012-03-18 09:07+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: ja\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.4\n"
-
-msgid "Downlink"
-msgstr "下りリンク"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "下りリンク帯域 (kbit/sec)"
-
-msgid "Host or Network in CIDR notation."
-msgstr "ホストåã¾ãŸã¯CIDR表記ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¢ãƒ‰ãƒ¬ã‚¹"
-
-msgid "Interface"
-msgstr "インターフェース"
-
-msgid "Low priority destination ports"
-msgstr "低優先度ã®å®›å…ˆãƒãƒ¼ãƒˆ"
-
-msgid "Low priority hosts (Destination)"
-msgstr "低優先度ã®å®›å…ˆãƒ›ã‚¹ãƒˆ"
-
-msgid "Low priority hosts (Source)"
-msgstr "低優先度ã®é€ä¿¡å…ƒãƒ›ã‚¹ãƒˆ"
-
-msgid "Low priority source ports"
-msgstr "低優先度ã®é€ä¿¡å…ƒãƒãƒ¼ãƒˆ"
-
-msgid "Uplink"
-msgstr "上りリンク"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "上りリンク帯域 (kbit/sec)"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Wondershaper 設定"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondweshaperã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆæŽ¥ç¶šãŒé£½å’ŒçŠ¶æ…‹ã®å ´åˆã§ã‚‚ã€ä½Žã„レイテンシ・円滑"
-"ãªé€šä¿¡ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ãƒˆãƒ©ãƒ•ã‚£ãƒƒã‚¯ãƒ»ã‚·ã‚§ãƒ¼ãƒ”ングを行ã„ã¾ã™ã€‚"
diff --git a/applications/luci-app-wshaper/po/ms/wshaper.po b/applications/luci-app-wshaper/po/ms/wshaper.po
deleted file mode 100644
index ede138662..000000000
--- a/applications/luci-app-wshaper/po/ms/wshaper.po
+++ /dev/null
@@ -1,54 +0,0 @@
-msgid ""
-msgstr ""
-"Plural-Forms: nplurals=1; plural=0;\n"
-"Project-Id-Version: LuCI\n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ms\n"
-"X-Generator: Poedit 1.6.10\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/no/wshaper.po b/applications/luci-app-wshaper/po/no/wshaper.po
deleted file mode 100644
index 1b1ab329e..000000000
--- a/applications/luci-app-wshaper/po/no/wshaper.po
+++ /dev/null
@@ -1,54 +0,0 @@
-msgid ""
-msgstr ""
-"Language: nn\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"Project-Id-Version: LuCI\n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.6.10\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/pl/wshaper.po b/applications/luci-app-wshaper/po/pl/wshaper.po
deleted file mode 100644
index a85bf0044..000000000
--- a/applications/luci-app-wshaper/po/pl/wshaper.po
+++ /dev/null
@@ -1,59 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-04-14 14:15+0200\n"
-"PO-Revision-Date: 2012-04-14 17:21+0200\n"
-"Last-Translator: Tomecki <przykryweczka@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: pl\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
-"|| n%100>=20) ? 1 : 2);\n"
-"X-Generator: Pootle 2.0.4\n"
-
-msgid "Downlink"
-msgstr "Downlink"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Przepustowość pobierania w kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Adres hosta lub adres sieci w notacji CIDR"
-
-msgid "Interface"
-msgstr "Interfejs"
-
-msgid "Low priority destination ports"
-msgstr "Porty docelowe o niskim priorytecie"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Hosty docelowe o niskim priorytecie"
-
-msgid "Low priority hosts (Source)"
-msgstr "Hosty źródłowe o niskim priorytecie"
-
-msgid "Low priority source ports"
-msgstr "Porty źródłowe o niskim priorytecie"
-
-msgid "Uplink"
-msgstr "Uplink"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Przepustowość wysyłania w kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Ustawienia Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper wykorzystuje kształtowanie ruchu aby zapewnić niskie opóźnienia "
-"nawet wtedy, gdy Twoje połączenie internetowe jest wysycone."
diff --git a/applications/luci-app-wshaper/po/pt-br/wshaper.po b/applications/luci-app-wshaper/po/pt-br/wshaper.po
deleted file mode 100644
index f973ebb5c..000000000
--- a/applications/luci-app-wshaper/po/pt-br/wshaper.po
+++ /dev/null
@@ -1,59 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-10-18 19:32+0200\n"
-"PO-Revision-Date: 2011-10-18 19:39+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: pt_BR\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.4\n"
-
-msgid "Downlink"
-msgstr "Velocidade para baixar (downlink)"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Taxa de transferência para baixar em kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Equipamento ou Rede na notação CIDR."
-
-msgid "Interface"
-msgstr "Interface"
-
-msgid "Low priority destination ports"
-msgstr "Portas de destino de baixa prioridade"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Equipamentos de baixa prioridade (Destino)"
-
-msgid "Low priority hosts (Source)"
-msgstr "Equipamentos de baixa prioridade (Origem)"
-
-msgid "Low priority source ports"
-msgstr "Portas de origem de baixa prioridade"
-
-msgid "Uplink"
-msgstr "Velocidade para subir (uplink)"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Taxa de transferência para subir em kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Configuração do Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper usa o controle de tráfego para garantir baixa latência para "
-"tráfego interativo mesmo quando sua conexão com a internet está extremamente "
-"saturada."
diff --git a/applications/luci-app-wshaper/po/pt/wshaper.po b/applications/luci-app-wshaper/po/pt/wshaper.po
deleted file mode 100644
index 96a7be816..000000000
--- a/applications/luci-app-wshaper/po/pt/wshaper.po
+++ /dev/null
@@ -1,55 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-05-31 12:13+0200\n"
-"PO-Revision-Date: 2013-05-31 12:15+0200\n"
-"Last-Translator: joao.f.vieira <joao.f.vieira@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: pt\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr "Interface"
-
-msgid "Low priority destination ports"
-msgstr "Porta de destino com baixa prioridade"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Hosts com baixa prioridade (Destino)"
-
-msgid "Low priority hosts (Source)"
-msgstr "Hosts com baixa prioridade (Origem)"
-
-msgid "Low priority source ports"
-msgstr "Portas de origem com baixa prioridade"
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/ro/wshaper.po b/applications/luci-app-wshaper/po/ro/wshaper.po
deleted file mode 100644
index d2569f6d2..000000000
--- a/applications/luci-app-wshaper/po/ro/wshaper.po
+++ /dev/null
@@ -1,56 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-06-28 18:45+0200\n"
-"PO-Revision-Date: 2014-06-28 18:46+0200\n"
-"Last-Translator: xxvirusxx <condor20_05@yahoo.it>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: ro\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
-"20)) ? 1 : 2);;\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/ru/wshaper.po b/applications/luci-app-wshaper/po/ru/wshaper.po
deleted file mode 100644
index 1984aacb6..000000000
--- a/applications/luci-app-wshaper/po/ru/wshaper.po
+++ /dev/null
@@ -1,61 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: LuCI: wsharper\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-26 15:09+0200\n"
-"PO-Revision-Date: 2012-08-15 11:53+0300\n"
-"Last-Translator: Roman A. aka BasicXP <x12ozmouse@ya.ru>\n"
-"Language-Team: Russian <x12ozmouse@ya.ru>\n"
-"Language: ru\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Pootle 2.0.4\n"
-"X-Poedit-SourceCharset: UTF-8\n"
-
-msgid "Downlink"
-msgstr "ÐиÑходÑщий канал"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Ширина полоÑÑ‹ пропуÑÐºÐ°Ð½Ð¸Ñ Ð¿Ñ€Ñмого канала (кбит/Ñ)"
-
-msgid "Host or Network in CIDR notation."
-msgstr "ХоÑÑ‚ или Ñеть в нотации CIDR."
-
-msgid "Interface"
-msgstr "ИнтерфейÑ"
-
-msgid "Low priority destination ports"
-msgstr "Ðизкоприоритетные порты назначениÑ"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Ðизкоприоритетные хоÑÑ‚Ñ‹ назначениÑ"
-
-msgid "Low priority hosts (Source)"
-msgstr "Ðизкоприоритетные хоÑÑ‚Ñ‹ иÑточника"
-
-msgid "Low priority source ports"
-msgstr "Ðизкоприоритетные порты иÑточника"
-
-msgid "Uplink"
-msgstr "ВоÑходÑщий канал"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "ПропуÑÐºÐ½Ð°Ñ ÑпоÑобноÑÑ‚ÑŒ обратного канала (кбит/c)"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "УÑтановки Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper иÑпользует формирование трафика Ð´Ð»Ñ Ð¾Ð±ÐµÑÐ¿ÐµÑ‡ÐµÐ½Ð¸Ñ Ð½Ð¸Ð·ÐºÐ¸Ñ… задержек "
-"интерактивного трафика даже в Ñлучае выÑокой загруженноÑти интернет-"
-"ÑоединениÑ."
diff --git a/applications/luci-app-wshaper/po/sk/wshaper.po b/applications/luci-app-wshaper/po/sk/wshaper.po
deleted file mode 100644
index 4e03aa8f8..000000000
--- a/applications/luci-app-wshaper/po/sk/wshaper.po
+++ /dev/null
@@ -1,50 +0,0 @@
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Project-Id-Version: PACKAGE VERSION\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"MIME-Version: 1.0\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/sv/wshaper.po b/applications/luci-app-wshaper/po/sv/wshaper.po
deleted file mode 100644
index 4f0fc5346..000000000
--- a/applications/luci-app-wshaper/po/sv/wshaper.po
+++ /dev/null
@@ -1,53 +0,0 @@
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Project-Id-Version: PACKAGE VERSION\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"Language: sv\n"
-"MIME-Version: 1.0\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-msgid "Downlink"
-msgstr "Nerladdningslänk"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Nerströms bandbredd i kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Värd eller Nätverk i CIDR-noteringen"
-
-msgid "Interface"
-msgstr "Gränssnitt"
-
-msgid "Low priority destination ports"
-msgstr "Destinations-portar med låg prioritet"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Värdar med låg prioritet (Destination)"
-
-msgid "Low priority hosts (Source)"
-msgstr "Värdar med låg prioritet (Källa)"
-
-msgid "Low priority source ports"
-msgstr "Käll-portar med låg prioritet"
-
-msgid "Uplink"
-msgstr "Uppladdningslänk"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Bandbredd uppströms i kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Inställningar för Wondershaper"
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper formar trafiken för att säkerställa låga latenser för "
-"interaktiv trafik även när din internetanslutning är mättad som mest."
diff --git a/applications/luci-app-wshaper/po/templates/wshaper.pot b/applications/luci-app-wshaper/po/templates/wshaper.pot
deleted file mode 100644
index 42de011b3..000000000
--- a/applications/luci-app-wshaper/po/templates/wshaper.pot
+++ /dev/null
@@ -1,43 +0,0 @@
-msgid ""
-msgstr "Content-Type: text/plain; charset=UTF-8"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/tr/wshaper.po b/applications/luci-app-wshaper/po/tr/wshaper.po
deleted file mode 100644
index 7c0acb06d..000000000
--- a/applications/luci-app-wshaper/po/tr/wshaper.po
+++ /dev/null
@@ -1,50 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/uk/wshaper.po b/applications/luci-app-wshaper/po/uk/wshaper.po
deleted file mode 100644
index 94d20df99..000000000
--- a/applications/luci-app-wshaper/po/uk/wshaper.po
+++ /dev/null
@@ -1,58 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2012-04-28 21:54+0200\n"
-"Last-Translator: Yurii <yuripet@gmail.com>\n"
-"Language-Team: none\n"
-"Language: uk\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr "ПрÑмий канал"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "Ширина Ñмуги пропуÑÐºÐ°Ð½Ð½Ñ Ð¿Ñ€Ñмого каналу (кбіт/Ñ)"
-
-msgid "Host or Network in CIDR notation."
-msgstr "Вузол або мережа в нотації CIDR."
-
-msgid "Interface"
-msgstr "ІнтерфейÑ"
-
-msgid "Low priority destination ports"
-msgstr "Ðизькопріоритетні порти призначеннÑ"
-
-msgid "Low priority hosts (Destination)"
-msgstr "Ðизькопріоритетні вузли призначеннÑ"
-
-msgid "Low priority hosts (Source)"
-msgstr "Ðизькопріоритетні вузли джерела"
-
-msgid "Low priority source ports"
-msgstr "Ðизькопріоритетні порти джерела"
-
-msgid "Uplink"
-msgstr "Зворотній канал"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "Ширина Ñмуги пропуÑÐºÐ°Ð½Ð½Ñ Ð·Ð²Ð¾Ñ€Ð¾Ñ‚Ð½Ð¾Ð³Ð¾ каналу (кбіт/c)"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Wondershaper"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper викориÑтовує Ñ„Ð¾Ñ€Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ñ€Ð°Ñ„Ñ–ÐºÑƒ Ð´Ð»Ñ Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ Ð½Ð¸Ð·ÑŒÐºÐ¾Ñ— "
-"затримки інтерактивного трафіку, навіть Ñкщо ваше з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· інтернетом "
-"дуже наÑичене."
diff --git a/applications/luci-app-wshaper/po/vi/wshaper.po b/applications/luci-app-wshaper/po/vi/wshaper.po
deleted file mode 100644
index e0b8e5324..000000000
--- a/applications/luci-app-wshaper/po/vi/wshaper.po
+++ /dev/null
@@ -1,54 +0,0 @@
-msgid ""
-msgstr ""
-"Plural-Forms: nplurals=1; plural=0;\n"
-"Project-Id-Version: LuCI\n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: \n"
-"Last-Translator: \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: vi\n"
-"X-Generator: Poedit 1.6.10\n"
-
-msgid "Downlink"
-msgstr ""
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Host or Network in CIDR notation."
-msgstr ""
-
-msgid "Interface"
-msgstr ""
-
-msgid "Low priority destination ports"
-msgstr ""
-
-msgid "Low priority hosts (Destination)"
-msgstr ""
-
-msgid "Low priority hosts (Source)"
-msgstr ""
-
-msgid "Low priority source ports"
-msgstr ""
-
-msgid "Uplink"
-msgstr ""
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr ""
-
-msgid "Wondershaper"
-msgstr ""
-
-msgid "Wondershaper settings"
-msgstr ""
-
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
diff --git a/applications/luci-app-wshaper/po/zh-cn/wshaper.po b/applications/luci-app-wshaper/po/zh-cn/wshaper.po
deleted file mode 100644
index a35ccd02d..000000000
--- a/applications/luci-app-wshaper/po/zh-cn/wshaper.po
+++ /dev/null
@@ -1,58 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-11-03 08:25+0200\n"
-"PO-Revision-Date: 2013-10-10 20:15+0200\n"
-"Last-Translator: Tanyingyu <Tanyingyu@163.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: zh_CN\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr "下载链接"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "下载带宽kbit/s"
-
-msgid "Host or Network in CIDR notation."
-msgstr "主机或网络的CIDR标记。"
-
-msgid "Interface"
-msgstr "端å£"
-
-msgid "Low priority destination ports"
-msgstr "低优先级目标端å£"
-
-msgid "Low priority hosts (Destination)"
-msgstr "低优先级目标主机"
-
-msgid "Low priority hosts (Source)"
-msgstr "低优先级æºä¸»æœº"
-
-msgid "Low priority source ports"
-msgstr "低优先级æºç«¯å£"
-
-msgid "Uplink"
-msgstr "上è”"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "上行带宽kbit/s"
-
-msgid "Wondershaper"
-msgstr "Wondershaper"
-
-msgid "Wondershaper settings"
-msgstr "Wondershaper设置"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"Wondershaper通过æµé‡åŒ¹é…,ç¡®ä¿ä½Žå»¶æ—¶çš„交互数æ®åŒ…,甚至当你的互è”网连接是高度饱"
-"和。"
diff --git a/applications/luci-app-wshaper/po/zh-tw/wshaper.po b/applications/luci-app-wshaper/po/zh-tw/wshaper.po
deleted file mode 100644
index 18148259f..000000000
--- a/applications/luci-app-wshaper/po/zh-tw/wshaper.po
+++ /dev/null
@@ -1,56 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"PO-Revision-Date: 2014-05-14 12:40+0200\n"
-"Last-Translator: omnistack <omnistack@gmail.com>\n"
-"Language-Team: none\n"
-"Language: zh_TW\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
-
-msgid "Downlink"
-msgstr "下載"
-
-msgid "Downstream bandwidth in kbit/s"
-msgstr "以 kbit/s表示的下載頻寬"
-
-msgid "Host or Network in CIDR notation."
-msgstr "CIDR無類別域間路由中的主機或網路"
-
-msgid "Interface"
-msgstr "介é¢"
-
-msgid "Low priority destination ports"
-msgstr "低優先權目地埠號"
-
-msgid "Low priority hosts (Destination)"
-msgstr "低優先權主機(目的地)"
-
-msgid "Low priority hosts (Source)"
-msgstr "低優先權主機(來æº)"
-
-msgid "Low priority source ports"
-msgstr "低優先權來æºåŸ è™Ÿ"
-
-msgid "Uplink"
-msgstr "上傳"
-
-msgid "Upstream bandwidth in kbit/s"
-msgstr "以kbit/s表示的上傳頻寬"
-
-msgid "Wondershaper"
-msgstr "Wondershaper頻寬管ç†"
-
-msgid "Wondershaper settings"
-msgstr "Wondershaper設定值"
-
-#, fuzzy
-msgid ""
-"Wondershaper shapes traffic to ensure low latencies for interactive traffic "
-"even when your internet connection is highly saturated."
-msgstr ""
-"既使你的網路連線é”到高飽和, Wondershaper採用æµé‡éŠ³åŒ–塑形以é‡å°æœªçŸ¥çš„æµé‡ä¿è­‰"
-"低延é²"
diff --git a/applications/luci-app-wshaper/root/etc/uci-defaults/40_wshaper b/applications/luci-app-wshaper/root/etc/uci-defaults/40_wshaper
deleted file mode 100644
index 918dff280..000000000
--- a/applications/luci-app-wshaper/root/etc/uci-defaults/40_wshaper
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-uci -q batch <<-EOF >/dev/null
- delete ucitrack.@wshaper[-1]
- set ucitrack.wshaper="wshaper"
- set ucitrack.wshaper.exec='/etc/init.d/wshaper start'
- commit ucitrack
-EOF
-
-rm -f /tmp/luci-indexcache
-exit 0
diff --git a/collections/luci-ssl-openssl/Makefile b/collections/luci-ssl-openssl/Makefile
index 37442a37d..d1e752e8b 100644
--- a/collections/luci-ssl-openssl/Makefile
+++ b/collections/luci-ssl-openssl/Makefile
@@ -11,8 +11,10 @@ LUCI_BASENAME:=ssl-openssl
LUCI_TITLE:=LuCI with HTTPS support (OpenSSL as SSL backend)
LUCI_DESCRIPTION:=LuCI with OpenSSL as the SSL backend (libustream-openssl). \
- Note: px5g still requires libpolarssl
-LUCI_DEPENDS:=+luci +libustream-openssl +px5g
+ OpenSSL cmd tools (openssl-util) are used by uhttpd for SSL key generation \
+ instead of the default px5g. (If px5g is installed, uhttpd will prefer that.)
+
+LUCI_DEPENDS:=+luci +libustream-openssl +openssl-util
include ../../luci.mk
diff --git a/collections/luci-ssl/Makefile b/collections/luci-ssl/Makefile
index f25e3112d..8fb8ff462 100644
--- a/collections/luci-ssl/Makefile
+++ b/collections/luci-ssl/Makefile
@@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk
LUCI_TYPE:=col
LUCI_BASENAME:=ssl
-LUCI_TITLE:=LuCI with HTTPS support (PolarSSL as SSL backend)
-LUCI_DEPENDS:=+luci +libustream-polarssl +px5g
+LUCI_TITLE:=LuCI with HTTPS support (mbedTLS as SSL backend)
+LUCI_DEPENDS:=+luci +libustream-mbedtls +px5g
include ../../luci.mk
diff --git a/contrib/package/community-profiles/files/etc/config/profile_berlin b/contrib/package/community-profiles/files/etc/config/profile_berlin
index 7fff870d4..1bfc8ed7d 100644
--- a/contrib/package/community-profiles/files/etc/config/profile_berlin
+++ b/contrib/package/community-profiles/files/etc/config/profile_berlin
@@ -8,6 +8,7 @@ config 'community' 'profile'
option 'splash_prefix' '27'
option 'latitude' '52.52075'
option 'longitude' '13.40948'
+ option 'owm_api' 'http://util.berlin.freifunk.net'
config 'defaults' 'wifi_device'
option 'channel' '13'
diff --git a/contrib/package/community-profiles/files/etc/config/profile_potsdam b/contrib/package/community-profiles/files/etc/config/profile_potsdam
index c15624a9f..9bdb60323 100644
--- a/contrib/package/community-profiles/files/etc/config/profile_potsdam
+++ b/contrib/package/community-profiles/files/etc/config/profile_potsdam
@@ -1,19 +1,35 @@
config 'community' 'profile'
option 'name' 'Freifunk Potsdam'
option 'homepage' 'http://potsdam.freifunk.net'
- option 'ssid' 'www.freifunk-potsdam.de'
+ option 'ssid' 'Freifunk-Potsdam-XXX-YYY'
option 'mesh_network' '10.22.0.0/16'
option 'splash_network' '192.168.22.0/24'
option 'splash_prefix' '24'
option 'latitude' '52.39349'
option 'longitude' '13.06489'
+ option 'ipv6' '0'
+
+config 'defaults' 'interface'
+ option 'netmask' '255.255.0.0'
+ option 'dns' '85.214.20.141 213.73.91.35 194.150.168.168'
+ option 'delegate' '0'
config 'defaults' 'wifi_device'
option 'channel' '5'
+config 'defaults' 'wifi_device_5'
+ option 'channel' '44'
+
config 'defaults' 'bssidscheme'
option '5' '02:CA:FF:EE:BA:BE'
+ option '44' '02:CA:FF:EE:BA:BE'
-config 'defaults' 'interface'
- option 'dns' '85.214.20.141 213.73.91.35 194.150.168.168'
+config 'defaults' 'ssidscheme'
+ option '5' 'Mesh23'
+ option '44' 'Mesh23'
+
+config 'defaults' 'dhcp'
+ option 'leasetime' '15m'
+config 'defaults' 'olsrd'
+ option 'LinkQualityAlgorithm' 'etx_ffeth'
diff --git a/contrib/package/freifunk-common/Makefile b/contrib/package/freifunk-common/Makefile
index c15f02dcf..2b9336fb0 100644
--- a/contrib/package/freifunk-common/Makefile
+++ b/contrib/package/freifunk-common/Makefile
@@ -4,7 +4,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=freifunk-common
-PKG_RELEASE:=1
+PKG_RELEASE:=3
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
diff --git a/contrib/package/freifunk-common/files/etc/config/freifunk b/contrib/package/freifunk-common/files/etc/config/freifunk
index 9a46f056a..b1a2e41e2 100644
--- a/contrib/package/freifunk-common/files/etc/config/freifunk
+++ b/contrib/package/freifunk-common/files/etc/config/freifunk
@@ -104,12 +104,6 @@ config 'defaults' 'wifi_iface'
option 'bssid' '12:CA:FF:EE:BA:BE'
option 'mcast_rate' '6000'
-config 'defaults' 'madwifi_wifi_iface'
- option 'bgscan' '0'
- option 'sw_merge' '1'
- option 'probereq' '1'
- option 'mcast_rate' '5500'
-
config 'defaults' 'interface'
option 'netmask' '255.255.0.0'
option 'dns' '8.8.8.8 212.204.49.83 141.1.1.1'
diff --git a/contrib/package/freifunk-common/files/usr/bin/neigh.sh b/contrib/package/freifunk-common/files/usr/bin/neigh.sh
index b1dc01a77..468ed7a3e 100755
--- a/contrib/package/freifunk-common/files/usr/bin/neigh.sh
+++ b/contrib/package/freifunk-common/files/usr/bin/neigh.sh
@@ -66,7 +66,8 @@ VARS="$VARS neighborLinkQuality:NLQ linkCost:Cost remoteHostname:Host"
for HOST in '127.0.0.1' '::1';do
json_init
- json_load "$(echo /links|nc ${HOST} 9090)"
+ json_load "$( echo /links | nc $HOST 9090 | sed -n '/^[}{ ]/p' )" # remove header/non-json
+
if json_is_a links array;then
json_select links
for v in ${VARS};do
diff --git a/contrib/package/meshwizard/Makefile b/contrib/package/meshwizard/Makefile
index 9ac5a0628..62983465c 100644
--- a/contrib/package/meshwizard/Makefile
+++ b/contrib/package/meshwizard/Makefile
@@ -4,7 +4,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=meshwizard
-PKG_RELEASE:=0.3.2
+PKG_RELEASE:=0.3.3
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
diff --git a/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/rename-wifi.sh b/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/rename-wifi.sh
index e9139ed51..f2d10cc9e 100755
--- a/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/rename-wifi.sh
+++ b/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/rename-wifi.sh
@@ -1,6 +1,6 @@
#!/bin/sh
# This script renames IB_wifi_ interface names into real interface names used on this system.
-# E.g. wireless.IB_wifi0 would become wireless.wifi0 on madwifi and wireless.radio0 on mac80211
+# E.g. wireless.IB_wifi0 would become wireless.radio0 on mac80211
. $dir/functions.sh
diff --git a/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/setup_wifi.sh b/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/setup_wifi.sh
index 41feb8665..707b7b72c 100755
--- a/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/setup_wifi.sh
+++ b/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/setup_wifi.sh
@@ -59,11 +59,6 @@ uci set wireless.$net\_iface=wifi-iface
# create new wifi-iface for $net from defaults
set_defaults "wifi_iface_" wireless.$net\_iface
-# overwrite some settings for type atheros (madwifi)
-if [ "$type" = "atheros" ]; then
- set_defaults "madwifi_wifi_iface_" wireless.${net}
-fi
-
# overwrite defaults
bssid="$($dir/helpers/gen_bssid.sh $channel $community)"
diff --git a/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/supports_vap.sh b/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/supports_vap.sh
index 0585ab5fe..7fdff3c56 100755
--- a/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/supports_vap.sh
+++ b/contrib/package/meshwizard/files/usr/bin/meshwizard/helpers/supports_vap.sh
@@ -8,9 +8,7 @@ if [ -z "$dev" -o -z "$type" ]; then
exit 1
fi
-if [ "$type" = "atheros" ]; then
- exit 0
-elif [ "$type" = "mac80211" ]; then
+if [ "$type" = "mac80211" ]; then
# not hostapd[-mini], no VAP
if [ ! -x /usr/sbin/hostapd ]; then
echo "WARNING: hostapd[-mini] is required to be able to use VAP with mac80211."
diff --git a/contrib/package/remote-update/Makefile b/contrib/package/remote-update/Makefile
deleted file mode 100644
index 4f8b3a596..000000000
--- a/contrib/package/remote-update/Makefile
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Copyright (C) 2009 Jo-Philipp Wich <jow@openwrt.org>
-#
-# This is free software, licensed under the Apache 2.0 license.
-#
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=remote-update
-PKG_RELEASE:=4
-
-PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/remote-update
- SECTION:=luci
- CATEGORY:=LuCI
- SUBMENU:=9. Freifunk
- TITLE:=Freifunk remote update utility.
- DEPENDS:=@TARGET_atheros||@TARGET_ar71xx||@TARGET_brcm_2_4
-endef
-
-define Package/remote-update/description
- The freifunk remote-update utility uses sysupgrade to reflash the currently
- running firmware while keeping most of the existing configuratio.
-endef
-
-define Build/Prepare
- mkdir -p $(PKG_BUILD_DIR)
-endef
-
-define Build/Configure
-endef
-
-define Build/Compile
-endef
-
-define Package/remote-update/install
- $(CP) ./files/* $(1)/
-endef
-
-$(eval $(call BuildPackage,remote-update))
diff --git a/contrib/package/remote-update/files/usr/sbin/remote-update b/contrib/package/remote-update/files/usr/sbin/remote-update
deleted file mode 100755
index 6e45e482b..000000000
--- a/contrib/package/remote-update/files/usr/sbin/remote-update
+++ /dev/null
@@ -1,306 +0,0 @@
-#!/bin/sh
-
-local tempfile=/tmp/remote-upgrade.img
-local D2='\([0-9]\{2\}\)'
-local D4='\([0-9]\{4\}\)'
-local NL='
-'
-
-find_architecture()
-{
- local ifs="$IFS"; IFS="-"
- set -- $(opkg list_installed kernel)
- IFS="$ifs"
-
- echo "$3"
-}
-
-find_image()
-{
- case "$1" in
- atheros)
- echo "openwrt-atheros-combined.squashfs.img"
- ;;
- ar71xx)
- echo "openwrt-ar71xx-combined.squashfs.img"
- ;;
- brcm)
- echo "openwrt-brcm-2.4-squashfs.trx"
- ;;
- esac
-}
-
-check_image()
-{
- local file; for file in /lib/upgrade/*.sh; do . $file; done
- if platform_check_image "$1" >/dev/null 2>/dev/null; then
- return 0
- fi
- return 1
-}
-
-find_remote_checksum()
-{
- wget -qO- ${1%/*}/md5sums 2>/dev/null | \
- sed -ne '/'$2'/ { s/ .*//p }'
-}
-
-find_local_checksum()
-{
- set -- $(md5sum "$tempfile")
- echo $1
-}
-
-find_remote_info()
-{
- wget -qO- "${1%/*}/VERSION.txt" 2>/dev/null
-}
-
-find_remote_version()
-{
- find_remote_info "$1" | \
- sed -ne "s!.*$D4/$D2/$D2 $D2:$D2.*!\\1\\2\\3\\4\\5!p;t"
-}
-
-find_local_version()
-{
- if [ -f /rom/etc/banner ]; then
- sed -ne "s!.*$D4/$D2/$D2 $D2:$D2.*!\\1\\2\\3\\4\\5!p;t" \
- /rom/etc/banner
- else
- date +"%Y%m%d%H%M" -r /bin/sh
- fi
-}
-
-stop_service()
-{
- [ -x /etc/init.d/$1 ] && {
- echo -n "Stopping service $1 ... "
- /etc/init.d/$1 stop >/dev/null 2>/dev/null
- echo "done"
- }
-}
-
-do_wait()
-{
- if [ ${1:-0} -gt 0 ]; then
- echo -n "${2:-Waiting} "
- for i in $(seq 1 $1); do
- printf "%-2dseconds" $(($1-$i))
- sleep 1
- echo -en "\b\b\b\b\b\b\b\b\b"
- done
- echo "${NL}"
- fi
-}
-
-version_compare()
-{
- local v1="$1"
- local v2="$2"
-
- while [ -n "$v1" -o -n "$v2" ]; do
- if [ -z "${v2:0:4}" -o "${v1:0:4}" -gt "${v2:0:4}" ]; then
- return 1
- elif [ -z "${v1:0:4}" -o "${v1:0:4}" -lt "${v2:0:4}" ]; then
- return 2
- fi
-
- v1="${v1:4}"
- v2="${v2:4}"
- done
-
- return 0
-}
-
-usage()
-{
- cat <<EOT
-
-Usage:
- remote-update -h
- remote-update [-u <update url>] -c
- remote-update [-v] [-y] [-u <update url>] -w
- remote-update [-d] [-n] [-v] [-y] [-s <sleep seconds>] [-u <update url>]
-
-Actions:
- -h Display this help message and exit.
- -c Check for firmware update and exit.
- -w Fetch image and exit, do not perform flash write.
-
-Options:
- -d Do not detach from terminal.
- -n Do not backup configuration.
- -v Skip verification of downloaded image.
- -y Assume defaults for all questions.
-
- -s <seconds>
- Sleep given amount of seconds before starting flash write.
- If ommitted and '-y' is not used, 5 seconds are assumed.
-
- -u <url>
- Fetch firmware image from given url. A file "md5sums" is expected
- in the same remote directory. If there is no such file, use -v to
- suppress verification.
-
-EOT
-
- exit 1
-}
-
-
-while getopts "s:u:cdnvwyh" flag; do
- case $flag in
- s) sleeptime="$OPTARG";;
- u) updateurl="$OPTARG";;
- c) checkupdate=1;;
- d) nodetach=1;;
- n) nobackup=1;;
- v) noverify=1;;
- w) noflash=1;;
- y) noquestions=1;;
- *) usage;;
- esac
-done
-
-
-local image_url="$updateurl"
-local image_name="${image_url##*/}"
-
-[ -z "$image_url" ] && {
- local arch=$(find_architecture)
- local image=$(find_image "$arch")
- local repo=$(uci get freifunk.upgrade.repository 2>/dev/null)
- repo=${repo:-$(uci get system.upgrade.repository 2>/dev/null)}
-
- [ -z "$arch" ] && {
- echo "Can not determine the current architecture."
- exit 1
- }
-
- [ -z "$repo" ] && {
- echo "No repository configured in 'system.upgrade.repository'."
- echo "Use the '-u' flag to specify an image location."
- exit 1
- }
-
- [ -z "$image" ] && {
- echo "No suitable image for the '$arch' architecture."
- echo "Your platform is not supported."
- exit 1
- }
-
- echo "Architecture: $arch"
- echo "Repository: $repo"
-
- image_name="$image"
- image_url="${repo%/}/$arch/$image"
-}
-
-
-if [ "$checkupdate" = 1 ]; then
- local v1=$(find_local_version)
- local v2=$(find_remote_version "$image_url")
-
- [ -n "$v1" -a -n "$v2" ] && {
- version_compare "$v1" "$v2"
- [ $? == 2 ] && {
- echo "Update available!${NL}Local: $v1${NL}Remote: $v2${NL}--"
- find_remote_info "$image_url"
- exit 0
- } || {
- echo "Local version $v1 is up to date"
- exit 2
- }
- } || {
- echo "No remote time stamp found."
- exit 1
- }
-else
- if [ "$noquestions" != 1 ]; then
- echo -n "${NL}About to download $image_name. Continue? [y] "
- read answer
- case "$answer" in
- [nN]) exit 1;;
- esac
- fi
-
- echo -n "Downloading $image_name ... "
- rm -f $tempfile
- wget -qO $tempfile "$image_url" 2>/dev/null
- [ $? == 0 ] && echo done || {
- echo failed
- rm -f $tempfile
- exit 1
- }
-
- if [ "$noverify" != 1 ]; then
- echo -n "Verifying $image_name ... "
-
- local md5_remote=$(find_remote_checksum "$image_url" "$image_name")
- local md5_local=$(find_local_checksum)
-
- check_image "$tempfile"
- local image_ok=$?
-
- if [ $image_ok = 0 -a -n "$md5_remote" -a -n "$md5_local" -a "$md5_remote" = "$md5_local" ]; then
- echo "done"
- else
- if [ $image_ok != 0 ]; then
- echo "unsupported image type"
- else
- echo "checksum mismatch! (local:${md5_local:-(none)} remote:${md5_remote:-(none)})"
- fi
-
- local answer=n
- if [ "$noquestions" != 1 ]; then
- echo -n "${NL}Verification failed. Continue anyway? [n] "
- read answer
- fi
-
- case "$answer" in
- [yYjJ]*) : ;;
- *)
- echo "Aborting."
- rm -f $tempfile
- exit 1
- ;;
- esac
- fi
- fi
-
- if [ "$noflash" != 1 ]; then
- if [ -f "$tempfile" ]; then
- if [ "$noquestions" == 1 ]; then
- do_wait ${sleeptime:-5} "${NL}About to start flashing, hit <Ctrl-C> to abort!${NL}${NL}Starting in"
- else
- if [ -z "$nobackup" ]; then
- echo -n "${NL}Keep configuration files? [y] "
- read answer
- case "$answer" in
- [nN]) nobackup=1;;
- esac
- fi
-
- echo -n "${NL}About to start flashing!${NL}Hit <Enter> to continue or <Ctrl-C> to abort.${NL}"
- read answer
- fi
-
- for s in lucid collectd; do stop_service $s; done
-
- if [ "$nodetach" != 1 ]; then
- echo -n "Starting sysupgrade in background ... "
- /bin/busybox start-stop-daemon -S -b -x /sbin/sysupgrade -- ${nobackup:+-n} "$tempfile"
- echo "done"
- else
- echo "Executing sysupgrade ... "
- exec /sbin/sysupgrade ${nobackup:+-n} "$tempfile"
- fi
- else
- echo "No upgrade image found!"
- exit 1
- fi
- else
- echo "Image saved in '$tempfile'"
- fi
-fi
diff --git a/libs/luci-lib-nixio/src/fs.c b/libs/luci-lib-nixio/src/fs.c
index 12ca111ac..ba184ed11 100644
--- a/libs/luci-lib-nixio/src/fs.c
+++ b/libs/luci-lib-nixio/src/fs.c
@@ -355,7 +355,7 @@ static int nixio_stat(lua_State *L) {
static int nixio_lstat(lua_State *L) {
nixio_stat_t buf;
- if (stat(luaL_checkstring(L, 1), &buf)) {
+ if (lstat(luaL_checkstring(L, 1), &buf)) {
return nixio__perror(L);
} else {
nixio__push_stat(L, &buf);
diff --git a/luci.mk b/luci.mk
index 2235cc5f0..7674825b4 100644
--- a/luci.mk
+++ b/luci.mk
@@ -23,6 +23,7 @@ LUCI_LANG.he=עִבְרִית (Hebrew)
LUCI_LANG.hu=Magyar (Hungarian)
LUCI_LANG.it=Italiano (Italian)
LUCI_LANG.ja=日本語 (Japanese)
+LUCI_LANG.ko=한국어 (Korean)
LUCI_LANG.ms=Bahasa Melayu (Malay)
LUCI_LANG.no=Norsk (Norwegian)
LUCI_LANG.pl=Polski (Polish)
@@ -55,7 +56,7 @@ PKG_VERSION?=$(if $(DUMP),x,$(strip $(shell \
elif git log -1 >/dev/null 2>/dev/null; then \
revision="svn-r$$(LC_ALL=C git log -1 | sed -ne 's/.*git-svn-id: .*@\([0-9]\+\) .*/\1/p')"; \
if [ "$$revision" = "svn-r" ]; then \
- set -- $$(git log -1 --format="%ct %h"); \
+ set -- $$(git log -1 --format="%ct %h" --abbrev=7); \
secs="$$(($$1 % 86400))"; \
yday="$$(date --utc --date="@$$1" "+%y.%j")"; \
revision="$$(printf 'git-%s.%05d-%s' "$$yday" "$$secs" "$$2")"; \
@@ -69,7 +70,8 @@ PKG_VERSION?=$(if $(DUMP),x,$(strip $(shell \
PKG_GITBRANCH?=$(if $(DUMP),x,$(strip $(shell \
variant="LuCI"; \
if git log -1 >/dev/null 2>/dev/null; then \
- branch="$$(git symbolic-ref --short -q HEAD 2>/dev/null)"; \
+ branch="$$(git branch --remote --verbose --no-abbrev --contains 2>/dev/null | \
+ sed -rne 's|^[^/]+/([^ ]+) [a-f0-9]{40} .+$$|\1|p' | head -n1)"; \
if [ "$$branch" != "master" ]; then \
variant="LuCI $$branch branch"; \
else \
diff --git a/modules/luci-base/Makefile b/modules/luci-base/Makefile
index 972a451c6..753ff259f 100644
--- a/modules/luci-base/Makefile
+++ b/modules/luci-base/Makefile
@@ -15,8 +15,8 @@ LUCI_TITLE:=LuCI core libraries
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
-PKG_MD5SUM:=8a0812701e29b6715e4d76f2f118264a
+PKG_SOURCE_URL:=https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luasrcdiet
+PKG_MD5SUM:=ed7680f2896269ae8633756e7edcf09050812f78c8f49e280e63c30d14f35aea
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/LuaSrcDiet-0.12.1
@@ -24,6 +24,7 @@ include $(INCLUDE_DIR)/host-build.mk
define Package/luci-base/conffiles
/etc/luci-uploads
+/etc/config/luci
endef
include ../../luci.mk
diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi.js b/modules/luci-base/htdocs/luci-static/resources/cbi.js
index 5790e303d..8e66cbc38 100644
--- a/modules/luci-base/htdocs/luci-static/resources/cbi.js
+++ b/modules/luci-base/htdocs/luci-static/resources/cbi.js
@@ -118,6 +118,50 @@ var cbi_validators = {
return false;
},
+ 'ipmask': function()
+ {
+ return cbi_validators.ipmask4.apply(this) ||
+ cbi_validators.ipmask6.apply(this);
+ },
+
+ 'ipmask4': function()
+ {
+ var ip = this, mask = 32;
+
+ if (ip.match(/^(\S+)\/(\S+)$/))
+ {
+ ip = RegExp.$1;
+ mask = RegExp.$2;
+ }
+
+ if (!isNaN(mask) && (mask < 0 || mask > 32))
+ return false;
+
+ if (isNaN(mask) && !cbi_validators.ip4addr.apply(mask))
+ return false;
+
+ return cbi_validators.ip4addr.apply(ip);
+ },
+
+ 'ipmask6': function()
+ {
+ var ip = this, mask = 128;
+
+ if (ip.match(/^(\S+)\/(\S+)$/))
+ {
+ ip = RegExp.$1;
+ mask = RegExp.$2;
+ }
+
+ if (!isNaN(mask) && (mask < 0 || mask > 128))
+ return false;
+
+ if (isNaN(mask) && !cbi_validators.ip6addr.apply(mask))
+ return false;
+
+ return cbi_validators.ip6addr.apply(ip);
+ },
+
'port': function()
{
var p = Int(this);
@@ -523,13 +567,6 @@ function cbi_init() {
}
}
- nodes = document.querySelectorAll('[data-type]');
-
- for (var i = 0, node; (node = nodes[i]) !== undefined; i++) {
- cbi_validate_field(node, node.getAttribute('data-optional') === 'true',
- node.getAttribute('data-type'));
- }
-
nodes = document.querySelectorAll('[data-choices]');
for (var i = 0, node; (node = nodes[i]) !== undefined; i++) {
@@ -562,6 +599,13 @@ function cbi_init() {
cbi_dynlist_init(node, choices[2], choices[3], options);
}
+ nodes = document.querySelectorAll('[data-type]');
+
+ for (var i = 0, node; (node = nodes[i]) !== undefined; i++) {
+ cbi_validate_field(node, node.getAttribute('data-optional') === 'true',
+ node.getAttribute('data-type'));
+ }
+
cbi_d_update();
}
diff --git a/modules/luci-base/luasrc/cbi/datatypes.lua b/modules/luci-base/luasrc/cbi/datatypes.lua
index 626ad91c7..cf5656628 100644
--- a/modules/luci-base/luasrc/cbi/datatypes.lua
+++ b/modules/luci-base/luasrc/cbi/datatypes.lua
@@ -1,4 +1,5 @@
-- Copyright 2010 Jo-Philipp Wich <jow@openwrt.org>
+-- Copyright 2017 Dan Luedtke <mail@danrl.com>
-- Licensed to the public under the Apache License 2.0.
local fs = require "nixio.fs"
@@ -131,6 +132,48 @@ function ip6prefix(val)
return ( val and val >= 0 and val <= 128 )
end
+function ipmask(val)
+ return ipmask4(val) or ipmask6(val)
+end
+
+function ipmask4(val)
+ local ip, mask = val:match("^([^/]+)/([^/]+)$")
+ local bits = tonumber(mask)
+
+ if bits and (bits < 0 or bits > 32) then
+ return false
+ end
+
+ if not bits and mask and not ip4addr(mask) then
+ return false
+ end
+
+ return ip4addr(ip or val)
+end
+
+function ipmask6(val)
+ local ip, mask = val:match("^([^/]+)/([^/]+)$")
+ local bits = tonumber(mask)
+
+ if bits and (bits < 0 or bits > 128) then
+ return false
+ end
+
+ if not bits and mask and not ip6addr(mask) then
+ return false
+ end
+
+ return ip6addr(ip or val)
+end
+
+function ip6hostid(val)
+ if val and val:match("^[a-fA-F0-9:]+$") and (#val > 2) then
+ return (ip6addr("2001:db8:0:0" .. val) or ip6addr("2001:db8:0:0:" .. val))
+ end
+
+ return false
+end
+
function port(val)
val = tonumber(val)
return ( val and val >= 0 and val <= 65535 )
@@ -233,11 +276,33 @@ function wepkey(val)
end
end
+function hexstring(val)
+ if val then
+ return (val:match("^[a-fA-F0-9]+$") ~= nil)
+ end
+ return false
+end
+
+function hex(val, maxbytes)
+ maxbytes = tonumber(maxbytes)
+ if val and maxbytes ~= nil then
+ return ((val:match("^0x[a-fA-F0-9]+$") ~= nil) and (#val <= 2 + maxbytes * 2))
+ end
+ return false
+end
+
+function base64(val)
+ if val then
+ return (val:match("^[a-zA-Z0-9/+]+=?=?$") ~= nil) and (math.fmod(#val, 4) == 0)
+ end
+ return false
+end
+
function string(val)
return true -- Everything qualifies as valid string
end
-function directory( val, seen )
+function directory(val, seen)
local s = fs.stat(val)
seen = seen or { }
@@ -253,7 +318,7 @@ function directory( val, seen )
return false
end
-function file( val, seen )
+function file(val, seen)
local s = fs.stat(val)
seen = seen or { }
@@ -269,7 +334,7 @@ function file( val, seen )
return false
end
-function device( val, seen )
+function device(val, seen)
local s = fs.stat(val)
seen = seen or { }
@@ -378,30 +443,29 @@ function dateyyyymmdd(val)
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
+ 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/dispatcher.lua b/modules/luci-base/luasrc/dispatcher.lua
index 0876ce658..0bd19456f 100644
--- a/modules/luci-base/luasrc/dispatcher.lua
+++ b/modules/luci-base/luasrc/dispatcher.lua
@@ -101,7 +101,7 @@ function error500(message)
return false
end
-function authenticator.htmlauth(validator, accs, default)
+function authenticator.htmlauth(validator, accs, default, template)
local user = http.formvalue("luci_username")
local pass = http.formvalue("luci_password")
@@ -113,7 +113,7 @@ function authenticator.htmlauth(validator, accs, default)
require("luci.template")
context.path = {}
http.status(403, "Forbidden")
- luci.template.render("sysauth", {duser=default, fuser=user})
+ luci.template.render(template or "sysauth", {duser=default, fuser=user})
return false
@@ -360,7 +360,7 @@ function dispatch(request)
if not util.contains(accs, user) then
if authen then
- local user, sess = authen(sys.user.checkpasswd, accs, def)
+ local user, sess = authen(sys.user.checkpasswd, accs, def, track.sysauth_template)
local token
if not user or not util.contains(accs, user) then
return
diff --git a/modules/luci-base/luasrc/model/network.lua b/modules/luci-base/luasrc/model/network.lua
index 2d8336bf3..d9ef4089c 100644
--- a/modules/luci-base/luasrc/model/network.lua
+++ b/modules/luci-base/luasrc/model/network.lua
@@ -950,6 +950,13 @@ function protocol.dns6addrs(self)
return dns
end
+function protocol.ip6prefix(self)
+ local prefix = self:_ubus("ipv6-prefix")
+ if prefix and #prefix > 0 then
+ return "%s/%d" %{ prefix[1].address, prefix[1].mask }
+ end
+end
+
function protocol.is_bridge(self)
return (not self:is_virtual() and self:type() == "bridge")
end
@@ -1355,8 +1362,6 @@ function wifidev.get_i18n(self)
local t = "Generic"
if self.iwinfo.type == "wl" then
t = "Broadcom"
- elseif self.iwinfo.type == "madwifi" then
- t = "Atheros"
end
local m = ""
diff --git a/modules/luci-base/luasrc/sys/iptparser.lua b/modules/luci-base/luasrc/sys/iptparser.lua
index a9dbc3082..7ff665e7a 100644
--- a/modules/luci-base/luasrc/sys/iptparser.lua
+++ b/modules/luci-base/luasrc/sys/iptparser.lua
@@ -31,29 +31,43 @@ function IptParser.__init__( self, family )
self._family = (tonumber(family) == 6) and 6 or 4
self._rules = { }
self._chains = { }
+ self._tables = { }
+
+ local t = self._tables
+ local s = self:_supported_tables(self._family)
+
+ if s.filter then t[#t+1] = "filter" end
+ if s.nat then t[#t+1] = "nat" end
+ if s.mangle then t[#t+1] = "mangle" end
+ if s.raw then t[#t+1] = "raw" end
if self._family == 4 then
self._nulladdr = "0.0.0.0/0"
- self._tables = { "filter", "nat", "mangle", "raw" }
self._command = "iptables -t %s --line-numbers -nxvL"
else
self._nulladdr = "::/0"
- self._tables = { "filter", "mangle", "raw" }
- local ok, lines = pcall(io.lines, "/proc/net/ip6_tables_names")
- if ok and lines then
- local line
- for line in lines do
- if line == "nat" then
- self._tables = { "filter", "nat", "mangle", "raw" }
- end
- end
- end
self._command = "ip6tables -t %s --line-numbers -nxvL"
end
self:_parse_rules()
end
+function IptParser._supported_tables( self, family )
+ local tables = { }
+ local ok, lines = pcall(io.lines,
+ (family == 6) and "/proc/net/ip6_tables_names"
+ or "/proc/net/ip_tables_names")
+
+ if ok and lines then
+ local line
+ for line in lines do
+ tables[line] = true
+ end
+ end
+
+ return tables
+end
+
-- search criteria as only argument. If args is nil or an empty table then all
-- rules will be returned.
--
diff --git a/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua b/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua
index 465d7df3d..2d32b39b1 100644
--- a/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua
+++ b/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua
@@ -59,42 +59,42 @@ TZ = {
{ 'America/Anchorage', 'AKST9AKDT,M3.2.0,M11.1.0' },
{ 'America/Anguilla', 'AST4' },
{ 'America/Antigua', 'AST4' },
- { 'America/Araguaina', 'BRT3' },
- { 'America/Argentina/Buenos Aires', 'ART3' },
- { 'America/Argentina/Catamarca', 'ART3' },
- { 'America/Argentina/Cordoba', 'ART3' },
- { 'America/Argentina/Jujuy', 'ART3' },
- { 'America/Argentina/La Rioja', 'ART3' },
- { 'America/Argentina/Mendoza', 'ART3' },
- { 'America/Argentina/Rio Gallegos', 'ART3' },
- { 'America/Argentina/Salta', 'ART3' },
- { 'America/Argentina/San Juan', 'ART3' },
- { 'America/Argentina/San Luis', 'ART3' },
- { 'America/Argentina/Tucuman', 'ART3' },
- { 'America/Argentina/Ushuaia', 'ART3' },
+ { 'America/Araguaina', '<-03>3' },
+ { 'America/Argentina/Buenos Aires', '<-03>3' },
+ { 'America/Argentina/Catamarca', '<-03>3' },
+ { 'America/Argentina/Cordoba', '<-03>3' },
+ { 'America/Argentina/Jujuy', '<-03>3' },
+ { 'America/Argentina/La Rioja', '<-03>3' },
+ { 'America/Argentina/Mendoza', '<-03>3' },
+ { 'America/Argentina/Rio Gallegos', '<-03>3' },
+ { 'America/Argentina/Salta', '<-03>3' },
+ { 'America/Argentina/San Juan', '<-03>3' },
+ { 'America/Argentina/San Luis', '<-03>3' },
+ { 'America/Argentina/Tucuman', '<-03>3' },
+ { 'America/Argentina/Ushuaia', '<-03>3' },
{ 'America/Aruba', 'AST4' },
- { 'America/Asuncion', 'PYT4PYST,M10.1.0/0,M3.4.0/0' },
+ { 'America/Asuncion', '<-04>4<-03>,M10.1.0/0,M3.4.0/0' },
{ 'America/Atikokan', 'EST5' },
- { 'America/Bahia', 'BRT3' },
+ { 'America/Bahia', '<-03>3' },
{ 'America/Bahia Banderas', 'CST6CDT,M4.1.0,M10.5.0' },
{ 'America/Barbados', 'AST4' },
- { 'America/Belem', 'BRT3' },
+ { 'America/Belem', '<-03>3' },
{ 'America/Belize', 'CST6' },
{ 'America/Blanc-Sablon', 'AST4' },
- { 'America/Boa Vista', 'AMT4' },
- { 'America/Bogota', 'COT5' },
+ { 'America/Boa Vista', '<-04>4' },
+ { 'America/Bogota', '<-05>5' },
{ 'America/Boise', 'MST7MDT,M3.2.0,M11.1.0' },
{ 'America/Cambridge Bay', 'MST7MDT,M3.2.0,M11.1.0' },
- { 'America/Campo Grande', 'AMT4AMST,M10.3.0/0,M2.3.0/0' },
+ { 'America/Campo Grande', '<-04>4<-03>,M10.3.0/0,M2.3.0/0' },
{ 'America/Cancun', 'EST5' },
- { 'America/Caracas', 'VET4' },
- { 'America/Cayenne', 'GFT3' },
+ { 'America/Caracas', '<-04>4' },
+ { 'America/Cayenne', '<-03>3' },
{ 'America/Cayman', 'EST5' },
{ 'America/Chicago', 'CST6CDT,M3.2.0,M11.1.0' },
{ 'America/Chihuahua', 'MST7MDT,M4.1.0,M10.5.0' },
{ 'America/Costa Rica', 'CST6' },
{ 'America/Creston', 'MST7' },
- { 'America/Cuiaba', 'AMT4AMST,M10.3.0/0,M2.3.0/0' },
+ { 'America/Cuiaba', '<-04>4<-03>,M10.3.0/0,M2.3.0/0' },
{ 'America/Curacao', 'AST4' },
{ 'America/Danmarkshavn', 'GMT0' },
{ 'America/Dawson', 'PST8PDT,M3.2.0,M11.1.0' },
@@ -103,19 +103,19 @@ TZ = {
{ 'America/Detroit', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/Dominica', 'AST4' },
{ 'America/Edmonton', 'MST7MDT,M3.2.0,M11.1.0' },
- { 'America/Eirunepe', 'ACT5' },
+ { 'America/Eirunepe', '<-05>5' },
{ 'America/El Salvador', 'CST6' },
{ 'America/Fort Nelson', 'MST7' },
- { 'America/Fortaleza', 'BRT3' },
+ { 'America/Fortaleza', '<-03>3' },
{ 'America/Glace Bay', 'AST4ADT,M3.2.0,M11.1.0' },
- { 'America/Godthab', 'WGT3WGST,M3.5.0/-2,M10.5.0/-1' },
+ { 'America/Godthab', '<-03>3<-02>,M3.5.0/-2,M10.5.0/-1' },
{ 'America/Goose Bay', 'AST4ADT,M3.2.0,M11.1.0' },
{ 'America/Grand Turk', 'AST4' },
{ 'America/Grenada', 'AST4' },
{ 'America/Guadeloupe', 'AST4' },
{ 'America/Guatemala', 'CST6' },
- { 'America/Guayaquil', 'ECT5' },
- { 'America/Guyana', 'GYT4' },
+ { 'America/Guayaquil', '<-05>5' },
+ { 'America/Guyana', '<-04>4' },
{ 'America/Halifax', 'AST4ADT,M3.2.0,M11.1.0' },
{ 'America/Havana', 'CST5CDT,M3.2.0/0,M11.1.0/1' },
{ 'America/Hermosillo', 'MST7' },
@@ -134,13 +134,13 @@ TZ = {
{ 'America/Kentucky/Louisville', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/Kentucky/Monticello', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/Kralendijk', 'AST4' },
- { 'America/La Paz', 'BOT4' },
- { 'America/Lima', 'PET5' },
+ { 'America/La Paz', '<-04>4' },
+ { 'America/Lima', '<-05>5' },
{ 'America/Los Angeles', 'PST8PDT,M3.2.0,M11.1.0' },
{ 'America/Lower Princes', 'AST4' },
- { 'America/Maceio', 'BRT3' },
+ { 'America/Maceio', '<-03>3' },
{ 'America/Managua', 'CST6' },
- { 'America/Manaus', 'AMT4' },
+ { 'America/Manaus', '<-04>4' },
{ 'America/Marigot', 'AST4' },
{ 'America/Martinique', 'AST4' },
{ 'America/Matamoros', 'CST6CDT,M3.2.0,M11.1.0' },
@@ -149,39 +149,40 @@ TZ = {
{ 'America/Merida', 'CST6CDT,M4.1.0,M10.5.0' },
{ 'America/Metlakatla', 'AKST9AKDT,M3.2.0,M11.1.0' },
{ 'America/Mexico City', 'CST6CDT,M4.1.0,M10.5.0' },
- { 'America/Miquelon', 'PMST3PMDT,M3.2.0,M11.1.0' },
+ { 'America/Miquelon', '<-03>3<-02>,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', 'UYT3' },
+ { 'America/Montevideo', '<-03>3' },
{ 'America/Montserrat', 'AST4' },
{ 'America/Nassau', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/New York', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/Nipigon', 'EST5EDT,M3.2.0,M11.1.0' },
{ 'America/Nome', 'AKST9AKDT,M3.2.0,M11.1.0' },
- { 'America/Noronha', 'FNT2' },
+ { 'America/Noronha', '<-02>2' },
{ 'America/North Dakota/Beulah', 'CST6CDT,M3.2.0,M11.1.0' },
{ 'America/North Dakota/Center', 'CST6CDT,M3.2.0,M11.1.0' },
{ 'America/North Dakota/New Salem', 'CST6CDT,M3.2.0,M11.1.0' },
{ 'America/Ojinaga', 'MST7MDT,M3.2.0,M11.1.0' },
{ 'America/Panama', 'EST5' },
{ 'America/Pangnirtung', 'EST5EDT,M3.2.0,M11.1.0' },
- { 'America/Paramaribo', 'SRT3' },
+ { 'America/Paramaribo', '<-03>3' },
{ 'America/Phoenix', 'MST7' },
{ 'America/Port of Spain', 'AST4' },
- { 'America/Port-au-Prince', 'EST5' },
- { 'America/Porto Velho', 'AMT4' },
+ { 'America/Port-au-Prince', 'EST5EDT,M3.2.0,M11.1.0' },
+ { 'America/Porto Velho', '<-04>4' },
{ 'America/Puerto Rico', 'AST4' },
+ { 'America/Punta Arenas', '<-03>3' },
{ 'America/Rainy River', 'CST6CDT,M3.2.0,M11.1.0' },
{ 'America/Rankin Inlet', 'CST6CDT,M3.2.0,M11.1.0' },
- { 'America/Recife', 'BRT3' },
+ { 'America/Recife', '<-03>3' },
{ 'America/Regina', 'CST6' },
{ 'America/Resolute', 'CST6CDT,M3.2.0,M11.1.0' },
- { 'America/Rio Branco', 'ACT5' },
- { 'America/Santarem', 'BRT3' },
- { 'America/Santiago', 'CLT4CLST,M8.2.6/24,M5.2.6/24' },
+ { 'America/Rio Branco', '<-05>5' },
+ { 'America/Santarem', '<-03>3' },
+ { 'America/Santiago', '<-04>4<-03>,M8.2.6/24,M5.2.6/24' },
{ 'America/Santo Domingo', 'AST4' },
- { 'America/Sao Paulo', 'BRT3BRST,M10.3.0/0,M2.3.0/0' },
- { 'America/Scoresbysund', 'EGT1EGST,M3.5.0/0,M10.5.0/1' },
+ { 'America/Sao Paulo', '<-03>3<-02>,M10.3.0/0,M2.3.0/0' },
+ { 'America/Scoresbysund', '<-01>1<+00>,M3.5.0/0,M10.5.0/1' },
{ 'America/Sitka', 'AKST9AKDT,M3.2.0,M11.1.0' },
{ 'America/St Barthelemy', 'AST4' },
{ 'America/St Johns', 'NST3:30NDT,M3.2.0,M11.1.0' },
@@ -204,16 +205,16 @@ TZ = {
{ 'Antarctica/Casey', '<+11>-11' },
{ 'Antarctica/Davis', '<+07>-7' },
{ 'Antarctica/DumontDUrville', '<+10>-10' },
- { 'Antarctica/Macquarie', 'MIST-11' },
+ { 'Antarctica/Macquarie', '<+11>-11' },
{ 'Antarctica/Mawson', '<+05>-5' },
{ 'Antarctica/McMurdo', 'NZST-12NZDT,M9.5.0,M4.1.0/3' },
- { 'Antarctica/Palmer', 'CLT4CLST,M8.2.6/24,M5.2.6/24' },
+ { 'Antarctica/Palmer', '<-03>3' },
{ 'Antarctica/Rothera', '<-03>3' },
{ 'Antarctica/Syowa', '<+03>-3' },
{ 'Antarctica/Troll', '<+00>0<+02>-2,M3.5.0/1,M10.5.0/3' },
{ 'Antarctica/Vostok', '<+06>-6' },
{ 'Arctic/Longyearbyen', 'CET-1CEST,M3.5.0,M10.5.0/3' },
- { 'Asia/Aden', 'AST-3' },
+ { 'Asia/Aden', '<+03>-3' },
{ 'Asia/Almaty', '<+06>-6' },
{ 'Asia/Amman', 'EET-2EEST,M3.5.4/24,M10.5.5/1' },
{ 'Asia/Anadyr', '<+12>-12' },
@@ -221,99 +222,99 @@ TZ = {
{ 'Asia/Aqtobe', '<+05>-5' },
{ 'Asia/Ashgabat', '<+05>-5' },
{ 'Asia/Atyrau', '<+05>-5' },
- { 'Asia/Baghdad', 'AST-3' },
- { 'Asia/Bahrain', 'AST-3' },
+ { 'Asia/Baghdad', '<+03>-3' },
+ { 'Asia/Bahrain', '<+03>-3' },
{ 'Asia/Baku', '<+04>-4' },
- { 'Asia/Bangkok', 'ICT-7' },
+ { 'Asia/Bangkok', '<+07>-7' },
{ 'Asia/Barnaul', '<+07>-7' },
{ 'Asia/Beirut', 'EET-2EEST,M3.5.0/0,M10.5.0/0' },
{ 'Asia/Bishkek', '<+06>-6' },
- { 'Asia/Brunei', 'BNT-8' },
+ { 'Asia/Brunei', '<+08>-8' },
{ 'Asia/Chita', '<+09>-9' },
- { 'Asia/Choibalsan', 'CHOT-8CHOST,M3.5.6,M9.5.6/0' },
+ { 'Asia/Choibalsan', '<+08>-8' },
{ 'Asia/Colombo', '<+0530>-5:30' },
{ 'Asia/Damascus', 'EET-2EEST,M3.5.5/0,M10.5.5/0' },
- { 'Asia/Dhaka', 'BDT-6' },
- { 'Asia/Dili', 'TLT-9' },
- { 'Asia/Dubai', 'GST-4' },
+ { 'Asia/Dhaka', '<+06>-6' },
+ { 'Asia/Dili', '<+09>-9' },
+ { 'Asia/Dubai', '<+04>-4' },
{ 'Asia/Dushanbe', '<+05>-5' },
{ 'Asia/Famagusta', '<+03>-3' },
{ 'Asia/Gaza', 'EET-2EEST,M3.5.6/1,M10.5.6/1' },
{ 'Asia/Hebron', 'EET-2EEST,M3.5.6/1,M10.5.6/1' },
- { 'Asia/Ho Chi Minh', 'ICT-7' },
+ { 'Asia/Ho Chi Minh', '<+07>-7' },
{ 'Asia/Hong Kong', 'HKT-8' },
- { 'Asia/Hovd', 'HOVT-7HOVST,M3.5.6,M9.5.6/0' },
+ { 'Asia/Hovd', '<+07>-7' },
{ 'Asia/Irkutsk', '<+08>-8' },
{ 'Asia/Jakarta', 'WIB-7' },
{ 'Asia/Jayapura', 'WIT-9' },
{ 'Asia/Jerusalem', 'IST-2IDT,M3.4.4/26,M10.5.0' },
- { 'Asia/Kabul', 'AFT-4:30' },
+ { 'Asia/Kabul', '<+0430>-4:30' },
{ 'Asia/Kamchatka', '<+12>-12' },
{ 'Asia/Karachi', 'PKT-5' },
- { 'Asia/Kathmandu', 'NPT-5:45' },
+ { 'Asia/Kathmandu', '<+0545>-5:45' },
{ 'Asia/Khandyga', '<+09>-9' },
{ 'Asia/Kolkata', 'IST-5:30' },
{ 'Asia/Krasnoyarsk', '<+07>-7' },
- { 'Asia/Kuala Lumpur', 'MYT-8' },
- { 'Asia/Kuching', 'MYT-8' },
- { 'Asia/Kuwait', 'AST-3' },
+ { 'Asia/Kuala Lumpur', '<+08>-8' },
+ { 'Asia/Kuching', '<+08>-8' },
+ { 'Asia/Kuwait', '<+03>-3' },
{ 'Asia/Macau', 'CST-8' },
{ 'Asia/Magadan', '<+11>-11' },
{ 'Asia/Makassar', 'WITA-8' },
- { 'Asia/Manila', 'PHT-8' },
- { 'Asia/Muscat', 'GST-4' },
+ { 'Asia/Manila', '<+08>-8' },
+ { 'Asia/Muscat', '<+04>-4' },
{ 'Asia/Nicosia', 'EET-2EEST,M3.5.0/3,M10.5.0/4' },
{ 'Asia/Novokuznetsk', '<+07>-7' },
{ 'Asia/Novosibirsk', '<+07>-7' },
{ 'Asia/Omsk', '<+06>-6' },
{ 'Asia/Oral', '<+05>-5' },
- { 'Asia/Phnom Penh', 'ICT-7' },
+ { 'Asia/Phnom Penh', '<+07>-7' },
{ 'Asia/Pontianak', 'WIB-7' },
{ 'Asia/Pyongyang', 'KST-8:30' },
- { 'Asia/Qatar', 'AST-3' },
+ { 'Asia/Qatar', '<+03>-3' },
{ 'Asia/Qyzylorda', '<+06>-6' },
- { 'Asia/Riyadh', 'AST-3' },
+ { 'Asia/Riyadh', '<+03>-3' },
{ 'Asia/Sakhalin', '<+11>-11' },
{ 'Asia/Samarkand', '<+05>-5' },
{ 'Asia/Seoul', 'KST-9' },
{ 'Asia/Shanghai', 'CST-8' },
- { 'Asia/Singapore', 'SGT-8' },
+ { 'Asia/Singapore', '<+08>-8' },
{ 'Asia/Srednekolymsk', '<+11>-11' },
{ 'Asia/Taipei', 'CST-8' },
{ 'Asia/Tashkent', '<+05>-5' },
{ 'Asia/Tbilisi', '<+04>-4' },
- { 'Asia/Tehran', 'IRST-3:30IRDT,J80/0,J264/0' },
- { 'Asia/Thimphu', 'BTT-6' },
+ { 'Asia/Tehran', '<+0330>-3:30<+0430>,J80/0,J264/0' },
+ { 'Asia/Thimphu', '<+06>-6' },
{ 'Asia/Tokyo', 'JST-9' },
{ 'Asia/Tomsk', '<+07>-7' },
- { 'Asia/Ulaanbaatar', 'ULAT-8ULAST,M3.5.6,M9.5.6/0' },
- { 'Asia/Urumqi', 'XJT-6' },
+ { 'Asia/Ulaanbaatar', '<+08>-8' },
+ { 'Asia/Urumqi', '<+06>-6' },
{ 'Asia/Ust-Nera', '<+10>-10' },
- { 'Asia/Vientiane', 'ICT-7' },
+ { 'Asia/Vientiane', '<+07>-7' },
{ 'Asia/Vladivostok', '<+10>-10' },
{ 'Asia/Yakutsk', '<+09>-9' },
- { 'Asia/Yangon', 'MMT-6:30' },
+ { 'Asia/Yangon', '<+0630>-6:30' },
{ 'Asia/Yekaterinburg', '<+05>-5' },
{ 'Asia/Yerevan', '<+04>-4' },
- { 'Atlantic/Azores', 'AZOT1AZOST,M3.5.0/0,M10.5.0/1' },
+ { 'Atlantic/Azores', '<-01>1<+00>,M3.5.0/0,M10.5.0/1' },
{ 'Atlantic/Bermuda', 'AST4ADT,M3.2.0,M11.1.0' },
{ 'Atlantic/Canary', 'WET0WEST,M3.5.0/1,M10.5.0' },
- { 'Atlantic/Cape Verde', 'CVT1' },
+ { 'Atlantic/Cape Verde', '<-01>1' },
{ 'Atlantic/Faroe', 'WET0WEST,M3.5.0/1,M10.5.0' },
{ 'Atlantic/Madeira', 'WET0WEST,M3.5.0/1,M10.5.0' },
{ 'Atlantic/Reykjavik', 'GMT0' },
- { 'Atlantic/South Georgia', 'GST2' },
+ { 'Atlantic/South Georgia', '<-02>2' },
{ 'Atlantic/St Helena', 'GMT0' },
- { 'Atlantic/Stanley', 'FKST3' },
+ { 'Atlantic/Stanley', '<-03>3' },
{ 'Australia/Adelaide', 'ACST-9:30ACDT,M10.1.0,M4.1.0/3' },
{ 'Australia/Brisbane', 'AEST-10' },
{ 'Australia/Broken Hill', 'ACST-9:30ACDT,M10.1.0,M4.1.0/3' },
{ 'Australia/Currie', 'AEST-10AEDT,M10.1.0,M4.1.0/3' },
{ 'Australia/Darwin', 'ACST-9:30' },
- { 'Australia/Eucla', 'ACWST-8:45' },
+ { 'Australia/Eucla', '<+0845>-8:45' },
{ 'Australia/Hobart', 'AEST-10AEDT,M10.1.0,M4.1.0/3' },
{ 'Australia/Lindeman', 'AEST-10' },
- { 'Australia/Lord Howe', 'LHST-10:30LHDT-11,M10.1.0,M4.1.0' },
+ { 'Australia/Lord Howe', '<+1030>-10:30<+11>-11,M10.1.0,M4.1.0' },
{ 'Australia/Melbourne', 'AEST-10AEDT,M10.1.0,M4.1.0/3' },
{ 'Australia/Perth', 'AWST-8' },
{ 'Australia/Sydney', 'AEST-10AEDT,M10.1.0,M4.1.0/3' },
@@ -378,53 +379,52 @@ TZ = {
{ 'Europe/Zaporozhye', 'EET-2EEST,M3.5.0/3,M10.5.0/4' },
{ 'Europe/Zurich', 'CET-1CEST,M3.5.0,M10.5.0/3' },
{ 'Indian/Antananarivo', 'EAT-3' },
- { 'Indian/Chagos', 'IOT-6' },
- { 'Indian/Christmas', 'CXT-7' },
- { 'Indian/Cocos', 'CCT-6:30' },
+ { 'Indian/Chagos', '<+06>-6' },
+ { 'Indian/Christmas', '<+07>-7' },
+ { 'Indian/Cocos', '<+0630>-6:30' },
{ 'Indian/Comoro', 'EAT-3' },
{ 'Indian/Kerguelen', '<+05>-5' },
- { 'Indian/Mahe', 'SCT-4' },
- { 'Indian/Maldives', 'MVT-5' },
- { 'Indian/Mauritius', 'MUT-4' },
+ { 'Indian/Mahe', '<+04>-4' },
+ { 'Indian/Maldives', '<+05>-5' },
+ { 'Indian/Mauritius', '<+04>-4' },
{ 'Indian/Mayotte', 'EAT-3' },
- { 'Indian/Reunion', 'RET-4' },
- { 'Pacific/Apia', 'WSST-13WSDT,M9.5.0/3,M4.1.0/4' },
+ { 'Indian/Reunion', '<+04>-4' },
+ { 'Pacific/Apia', '<+13>-13<+14>,M9.5.0/3,M4.1.0/4' },
{ 'Pacific/Auckland', 'NZST-12NZDT,M9.5.0,M4.1.0/3' },
- { 'Pacific/Bougainville', 'BST-11' },
- { 'Pacific/Chatham', 'CHAST-12:45CHADT,M9.5.0/2:45,M4.1.0/3:45' },
- { 'Pacific/Chuuk', 'CHUT-10' },
- { 'Pacific/Easter', 'EAST6EASST,M8.2.6/22,M5.2.6/22' },
- { 'Pacific/Efate', 'VUT-11' },
- { 'Pacific/Enderbury', 'PHOT-13' },
- { 'Pacific/Fakaofo', 'TKT-13' },
- { 'Pacific/Fiji', 'FJT-12FJST,M11.1.0,M1.3.0/3' },
- { 'Pacific/Funafuti', 'TVT-12' },
- { 'Pacific/Galapagos', 'GALT6' },
- { 'Pacific/Gambier', 'GAMT9' },
- { 'Pacific/Guadalcanal', 'SBT-11' },
+ { 'Pacific/Bougainville', '<+11>-11' },
+ { 'Pacific/Chatham', '<+1245>-12:45<+1345>,M9.5.0/2:45,M4.1.0/3:45' },
+ { 'Pacific/Chuuk', '<+10>-10' },
+ { 'Pacific/Easter', '<-06>6<-05>,M8.2.6/22,M5.2.6/22' },
+ { 'Pacific/Efate', '<+11>-11' },
+ { 'Pacific/Enderbury', '<+13>-13' },
+ { 'Pacific/Fakaofo', '<+13>-13' },
+ { 'Pacific/Fiji', '<+12>-12<+13>,M11.1.0,M1.3.0/3' },
+ { 'Pacific/Funafuti', '<+12>-12' },
+ { 'Pacific/Galapagos', '<-06>6' },
+ { 'Pacific/Gambier', '<-09>9' },
+ { 'Pacific/Guadalcanal', '<+11>-11' },
{ 'Pacific/Guam', 'ChST-10' },
{ 'Pacific/Honolulu', 'HST10' },
- { 'Pacific/Johnston', 'HST10' },
- { 'Pacific/Kiritimati', 'LINT-14' },
- { 'Pacific/Kosrae', 'KOST-11' },
- { 'Pacific/Kwajalein', 'MHT-12' },
- { 'Pacific/Majuro', 'MHT-12' },
- { 'Pacific/Marquesas', 'MART9:30' },
+ { 'Pacific/Kiritimati', '<+14>-14' },
+ { 'Pacific/Kosrae', '<+11>-11' },
+ { 'Pacific/Kwajalein', '<+12>-12' },
+ { 'Pacific/Majuro', '<+12>-12' },
+ { 'Pacific/Marquesas', '<-0930>9:30' },
{ 'Pacific/Midway', 'SST11' },
- { 'Pacific/Nauru', 'NRT-12' },
- { 'Pacific/Niue', 'NUT11' },
- { 'Pacific/Norfolk', 'NFT-11' },
- { 'Pacific/Noumea', 'NCT-11' },
+ { 'Pacific/Nauru', '<+12>-12' },
+ { 'Pacific/Niue', '<-11>11' },
+ { 'Pacific/Norfolk', '<+11>-11' },
+ { 'Pacific/Noumea', '<+11>-11' },
{ 'Pacific/Pago Pago', 'SST11' },
- { 'Pacific/Palau', 'PWT-9' },
- { 'Pacific/Pitcairn', 'PST8' },
- { 'Pacific/Pohnpei', 'PONT-11' },
- { 'Pacific/Port Moresby', 'PGT-10' },
- { 'Pacific/Rarotonga', 'CKT10' },
+ { 'Pacific/Palau', '<+09>-9' },
+ { 'Pacific/Pitcairn', '<-08>8' },
+ { 'Pacific/Pohnpei', '<+11>-11' },
+ { 'Pacific/Port Moresby', '<+10>-10' },
+ { 'Pacific/Rarotonga', '<-10>10' },
{ 'Pacific/Saipan', 'ChST-10' },
- { 'Pacific/Tahiti', 'TAHT10' },
- { 'Pacific/Tarawa', 'GILT-12' },
+ { 'Pacific/Tahiti', '<-10>10' },
+ { 'Pacific/Tarawa', '<+12>-12' },
{ 'Pacific/Tongatapu', '<+13>-13<+14>,M11.1.0,M1.3.0/3' },
- { 'Pacific/Wake', 'WAKT-12' },
- { 'Pacific/Wallis', 'WFT-12' },
+ { 'Pacific/Wake', '<+12>-12' },
+ { 'Pacific/Wallis', '<+12>-12' },
}
diff --git a/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua b/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua
index e5da7c644..cf5afeb9d 100644
--- a/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua
+++ b/modules/luci-base/luasrc/sys/zoneinfo/tzoffset.lua
@@ -16,123 +16,30 @@ OFFSET = {
akst = -32400, -- AKST
akdt = -28800, -- AKDT
ast = -14400, -- AST
- brt = -10800, -- BRT
- art = -10800, -- ART
- pyt = -14400, -- PYT
- pyst = -10800, -- PYST
est = -18000, -- EST
cst = -21600, -- CST
cdt = -18000, -- CDT
- amt = -14400, -- AMT
- cot = -18000, -- COT
mst = -25200, -- MST
mdt = -21600, -- MDT
- vet = -14400, -- VET
- gft = -10800, -- GFT
pst = -28800, -- PST
pdt = -25200, -- PDT
- act = -18000, -- ACT
- wgt = -10800, -- WGT
- wgst = -7200, -- WGST
- ect = -18000, -- ECT
- gyt = -14400, -- GYT
- bot = -14400, -- BOT
- pet = -18000, -- PET
- pmst = -10800, -- PMST
- pmdt = -7200, -- PMDT
- uyt = -10800, -- UYT
- fnt = -7200, -- FNT
- srt = -10800, -- SRT
- clt = -14400, -- CLT
- clst = -10800, -- CLST
- egt = -3600, -- EGT
- egst = 0, -- EGST
nst = -12600, -- NST
ndt = -9000, -- NDT
- mist = 39600, -- MIST
nzst = 43200, -- NZST
nzdt = 46800, -- NZDT
- ict = 25200, -- ICT
- bnt = 28800, -- BNT
- chot = 28800, -- CHOT
- chost = 32400, -- CHOST
- bdt = 21600, -- BDT
- tlt = 32400, -- TLT
- gst = 14400, -- GST
hkt = 28800, -- HKT
- hovt = 25200, -- HOVT
- hovst = 28800, -- HOVST
wib = 25200, -- WIB
wit = 32400, -- WIT
ist = 7200, -- IST
idt = 10800, -- IDT
- aft = 16200, -- AFT
pkt = 18000, -- PKT
- npt = 20700, -- NPT
- myt = 28800, -- MYT
wita = 28800, -- WITA
- pht = 28800, -- PHT
kst = 30600, -- KST
- sgt = 28800, -- SGT
- irst = 12600, -- IRST
- irdt = 16200, -- IRDT
- btt = 21600, -- BTT
jst = 32400, -- JST
- ulat = 28800, -- ULAT
- ulast = 32400, -- ULAST
- xjt = 21600, -- XJT
- mmt = 23400, -- MMT
- azot = -3600, -- AZOT
- azost = 0, -- AZOST
- cvt = -3600, -- CVT
- fkst = -10800, -- FKST
acst = 34200, -- ACST
acdt = 37800, -- ACDT
aest = 36000, -- AEST
- acwst = 31500, -- ACWST
- lhst = 37800, -- LHST
- lhdt = 39600, -- LHDT
awst = 28800, -- AWST
msk = 10800, -- MSK
- iot = 21600, -- IOT
- cxt = 25200, -- CXT
- cct = 23400, -- CCT
- sct = 14400, -- SCT
- mvt = 18000, -- MVT
- mut = 14400, -- MUT
- ret = 14400, -- RET
- wsst = 46800, -- WSST
- wsdt = 50400, -- WSDT
- bst = 39600, -- BST
- chast = 45900, -- CHAST
- chadt = 49500, -- CHADT
- chut = 36000, -- CHUT
- east = -21600, -- EAST
- easst = -18000, -- EASST
- vut = 39600, -- VUT
- phot = 46800, -- PHOT
- tkt = 46800, -- TKT
- fjt = 43200, -- FJT
- fjst = 46800, -- FJST
- tvt = 43200, -- TVT
- galt = -21600, -- GALT
- gamt = -32400, -- GAMT
- sbt = 39600, -- SBT
- lint = 50400, -- LINT
- kost = 39600, -- KOST
- mht = 43200, -- MHT
- mart = -34200, -- MART
sst = -39600, -- SST
- nrt = 43200, -- NRT
- nut = -39600, -- NUT
- nft = 39600, -- NFT
- nct = 39600, -- NCT
- pwt = 32400, -- PWT
- pont = 39600, -- PONT
- pgt = 36000, -- PGT
- ckt = -36000, -- CKT
- taht = -36000, -- TAHT
- gilt = 43200, -- GILT
- wakt = 43200, -- WAKT
- wft = 43200, -- WFT
}
diff --git a/modules/luci-base/luasrc/tools/status.lua b/modules/luci-base/luasrc/tools/status.lua
index 4da0cf984..95ff46df1 100644
--- a/modules/luci-base/luasrc/tools/status.lua
+++ b/modules/luci-base/luasrc/tools/status.lua
@@ -26,17 +26,18 @@ local function dhcp_leases_common(family)
break
else
local ts, mac, ip, name, duid = ln:match("^(%d+) (%S+) (%S+) (%S+) (%S+)")
+ local expire = tonumber(ts) or 0
if ts and mac and ip and name and duid then
if family == 4 and not ip:match(":") then
rv[#rv+1] = {
- expires = os.difftime(tonumber(ts) or 0, os.time()),
+ expires = (expire ~= 0) and os.difftime(expire, os.time()),
macaddr = mac,
ipaddr = ip,
hostname = (name ~= "*") and name
}
elseif family == 6 and ip:match(":") then
rv[#rv+1] = {
- expires = os.difftime(tonumber(ts) or 0, os.time()),
+ expires = (expire ~= 0) and os.difftime(expire, os.time()),
ip6addr = ip,
duid = (duid ~= "*") and duid,
hostname = (name ~= "*") and name
@@ -73,9 +74,19 @@ local function dhcp_leases_common(family)
hostname = (name ~= "-") and name
}
elseif ip and iaid == "ipv4" and family == 4 then
+ local mac, mac1, mac2, mac3, mac4, mac5, mac6
+ if duid and type(duid) == "string" then
+ mac1, mac2, mac3, mac4, mac5, mac6 = duid:match("^(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)$")
+ end
+ if not (mac1 and mac2 and mac3 and mac4 and mac5 and mac6) then
+ mac = "FF:FF:FF:FF:FF:FF"
+ else
+ mac = mac1..":"..mac2..":"..mac3..":"..mac4..":"..mac5..":"..mac6
+ end
rv[#rv+1] = {
expires = (expire >= 0) and os.difftime(expire, os.time()),
macaddr = duid,
+ macaddr = mac:lower(),
ipaddr = ip,
hostname = (name ~= "-") and name
}
diff --git a/modules/luci-base/luasrc/tools/webadmin.lua b/modules/luci-base/luasrc/tools/webadmin.lua
index 8273175de..106810aa0 100644
--- a/modules/luci-base/luasrc/tools/webadmin.lua
+++ b/modules/luci-base/luasrc/tools/webadmin.lua
@@ -96,7 +96,7 @@ function iface_get_network(iface)
if net.l3_device == iface or net.device == iface then
-- cross check with uci to filter out @name style aliases
local uciname = cur:get("network", net.interface, "ifname")
- if not uciname or uciname:sub(1, 1) ~= "@" then
+ if type(uciname) == "string" and uciname:sub(1,1) ~= "@" or uciname then
return net.interface
end
end
diff --git a/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm b/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm
index b3b454008..5cb31511f 100644
--- a/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm
+++ b/modules/luci-base/luasrc/view/cbi/firewall_zonelist.htm
@@ -28,6 +28,7 @@
<% if self.allowlocal then %>
<li style="padding:0.5em">
<input class="cbi-input-radio" data-update="click change"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_empty") .. attr("name", cbid) .. attr("value", "") .. ifattr(checked[""], "checked", "checked")%> /> &#160;
+ <label<%=attr("for", cbid .. "_empty")%>></label>
<label<%=attr("for", cbid .. "_empty")%> style="background-color:<%=fwm.zone.get_color()%>" class="zonebadge">
<strong><%:Device%></strong>
<% if self.allowany and self.allowlocal then %>(<%:input%>)<% end %>
@@ -37,6 +38,7 @@
<% if self.allowany then %>
<li style="padding:0.5em">
<input class="cbi-input-radio" data-update="click change"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_any") .. attr("name", cbid) .. attr("value", "*") .. ifattr(checked["*"], "checked", "checked")%> /> &#160;
+ <label<%=attr("for", cbid .. "_any")%>></label>
<label<%=attr("for", cbid .. "_any")%> style="background-color:<%=fwm.zone.get_color()%>" class="zonebadge">
<strong><%:Any zone%></strong>
<% if self.allowany and self.allowlocal then %>(<%:forward%>)<% end %>
@@ -50,6 +52,7 @@
%>
<li style="padding:0.5em">
<input class="cbi-input-radio" data-update="click change"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "." .. zone:name()) .. attr("name", cbid) .. attr("value", zone:name()) .. ifattr(checked[zone:name()], "checked", "checked")%> /> &#160;
+ <label<%=attr("for", cbid .. "." .. zone:name())%>></label>
<label<%=attr("for", cbid .. "." .. zone:name())%> style="background-color:<%=zone:get_color()%>" class="zonebadge">
<strong><%=zone:name()%>:</strong>
<%
@@ -78,6 +81,7 @@
<% if self.widget ~= "checkbox" and not self.nocreate then %>
<li style="padding:0.5em">
<input class="cbi-input-radio" data-update="click change" type="radio"<%=attr("id", cbid .. "_new") .. attr("name", cbid) .. attr("value", "-") .. ifattr(not selected, "checked", "checked")%> /> &#160;
+ <label<%=attr("for", cbid .. "_new")%>></label>
<div onclick="document.getElementById('<%=cbid%>_new').checked=true" class="zonebadge" style="background-color:<%=fwm.zone.get_color()%>">
<em><%:unspecified -or- create:%>&#160;</em>
<input type="text"<%=attr("name", cbid .. ".newzone") .. ifattr(not selected, "value", luci.http.formvalue(cbid .. ".newzone") or self.default)%> onfocus="document.getElementById('<%=cbid%>_new').checked=true" />
diff --git a/modules/luci-base/luasrc/view/cbi/fvalue.htm b/modules/luci-base/luasrc/view/cbi/fvalue.htm
index 5eddcf22a..197d03cf3 100644
--- a/modules/luci-base/luasrc/view/cbi/fvalue.htm
+++ b/modules/luci-base/luasrc/view/cbi/fvalue.htm
@@ -6,4 +6,5 @@
attr("id", cbid) .. attr("name", cbid) .. attr("value", self.enabled or 1) ..
ifattr((self:cfgvalue(section) or self.default) == self.enabled, "checked", "checked")
%> />
+ <label<%= attr("for", cbid)%>></label>
<%+cbi/valuefooter%>
diff --git a/modules/luci-base/luasrc/view/cbi/lvalue.htm b/modules/luci-base/luasrc/view/cbi/lvalue.htm
index 99f456dc5..34d02eeca 100644
--- a/modules/luci-base/luasrc/view/cbi/lvalue.htm
+++ b/modules/luci-base/luasrc/view/cbi/lvalue.htm
@@ -24,15 +24,16 @@
<div>
<% for i, key in pairs(self.keylist) do %>
<label<%=
- attr("id", cbid.."-"..key) ..
attr("data-index", i) ..
attr("data-depends", self:deplist2json(section, self.deplist[i]))
%>>
<input class="cbi-input-radio" data-update="click change" type="radio"<%=
+ attr("id", cbid.."-"..key) ..
attr("name", cbid) ..
attr("value", key) ..
ifattr((self:cfgvalue(section) or self.default) == key, "checked", "checked")
%> />
+ <label<%= attr("for", cbid.."-"..key)%>></label>
<%=pcdata(self.vallist[i])%>
</label>
<% if i == self.size then write(br) end %>
diff --git a/modules/luci-base/luasrc/view/cbi/mvalue.htm b/modules/luci-base/luasrc/view/cbi/mvalue.htm
index ca7b94c15..db17450d2 100644
--- a/modules/luci-base/luasrc/view/cbi/mvalue.htm
+++ b/modules/luci-base/luasrc/view/cbi/mvalue.htm
@@ -24,18 +24,19 @@
<div>
<% for i, key in pairs(self.keylist) do %>
<label<%=
- attr("id", cbid.."-"..key) ..
attr("data-index", i) ..
attr("data-depends", self:deplist2json(section, self.deplist[i]))
%>>
<input class="cbi-input-checkbox" type="checkbox" data-update="click change"<%=
+ attr("id", cbid.."-"..key) ..
attr("name", cbid) ..
attr("value", key) ..
ifattr(luci.util.contains(v, key), "checked", "checked")
%> />
+ <label<%= attr("for", cbid.."-"..key)%>></label>
<%=pcdata(self.vallist[i])%>
</label>
- <% if i == self.size then write('<br />') end %>
+ <% if self.size and (i % self.size) == 0 then write('<br />') end %>
<% end %>
</div>
<% end %>
diff --git a/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm b/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm
index db6112992..62dbde7dd 100644
--- a/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm
+++ b/modules/luci-base/luasrc/view/cbi/network_ifacelist.htm
@@ -46,7 +46,11 @@
attr("id", cbid .. "." .. iface:name()) ..
attr("name", cbid) .. attr("value", iface:name()) ..
ifattr(checked[iface:name()], "checked", "checked")
- %> /> &#160;
+ %> />
+ <%- if not self.widget or self.widget == "checkbox" or self.widget == "radio" then -%>
+ <label<%=attr("for", cbid .. "." .. iface:name())%>></label>
+ <%- end -%>
+ &#160;
<label<%=attr("for", cbid .. "." .. iface:name())%>>
<% if link then -%><a href="<%=link%>"><% end -%>
<img<%=attr("title", iface:get_i18n())%> style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" />
@@ -68,7 +72,11 @@
attr("id", cbid .. "_custom") ..
attr("name", cbid) ..
attr("value", " ")
- %> /> &#160;
+ %> />
+ <%- if not self.widget or self.widget == "checkbox" or self.widget == "radio" then -%>
+ <label<%=attr("for", cbid .. "_custom")%>></label>
+ <%- end -%>
+ &#160;
<label<%=attr("for", cbid .. "_custom")%>>
<img title="<%:Custom Interface%>" style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/ethernet_disabled.png" />
<%:Custom Interface%>:
diff --git a/modules/luci-base/luasrc/view/cbi/network_netlist.htm b/modules/luci-base/luasrc/view/cbi/network_netlist.htm
index f8a2b72f3..8bf1a70a2 100644
--- a/modules/luci-base/luasrc/view/cbi/network_netlist.htm
+++ b/modules/luci-base/luasrc/view/cbi/network_netlist.htm
@@ -52,6 +52,9 @@
<% if not self.nocreate then %>
<li style="padding:0.25em 0">
<input class="cbi-input-<%=self.widget or "radio"%>" data-update="click change"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_new") .. attr("name", cbid) .. attr("value", "-") .. ifattr(not value and self.widget ~= "checkbox", "checked", "checked")%> /> &#160;
+ <%- if not self.widget or self.widget == "checkbox" or self.widget == "radio" then -%>
+ <label<%=attr("for", cbid .. "_new")%>></label>
+ <%- end -%>
<div style="padding:0.5em; display:inline">
<label<%=attr("for", cbid .. "_new")%>><em>
<%- if self.widget == "checkbox" then -%>
diff --git a/modules/luci-base/po/ca/base.po b/modules/luci-base/po/ca/base.po
index 3012e8ef0..186aa213b 100644
--- a/modules/luci-base/po/ca/base.po
+++ b/modules/luci-base/po/ca/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Càrrega d'1 minut:"
msgid "15 Minute Load:"
msgstr "Càrrega de 15 minuts:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Càrrega de 5 minuts:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -143,9 +170,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Suport AR"
-
msgid "ARP retry threshold"
msgstr "Llindar de reintent ARP"
@@ -281,6 +305,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr "Permet respostes del rang 127.0.0.0/8, p.e. per serveis RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -289,9 +316,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -387,9 +411,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Estacions associades"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Controlador sense fils d'Atheros 802.11%s"
-
msgid "Auth Group"
msgstr ""
@@ -399,6 +420,9 @@ msgstr ""
msgid "Authentication"
msgstr "Autenticació"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritzada"
@@ -466,9 +490,6 @@ msgstr "Enrere al resum"
msgid "Back to scan results"
msgstr "Enrere als resultats de l'escaneig"
-msgid "Background Scan"
-msgstr "Escaneig de fons"
-
msgid "Backup / Flash Firmware"
msgstr "Còpia de seguretat / Recàrrega de programari"
@@ -496,9 +517,15 @@ msgstr ""
"en els fitxers de configuració canviats i marcats per l'opkg, fitxers base "
"essencials i els patrons de còpia de seguretat definits per l'usuari."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Velocitat de bits"
@@ -567,6 +594,9 @@ msgstr "Comprovació"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Suma de verificació"
@@ -623,9 +653,6 @@ msgstr "Ordre"
msgid "Common Configuration"
msgstr "Configuració comuna"
-msgid "Compression"
-msgstr "Compressió"
-
msgid "Configuration"
msgstr "Configuració"
@@ -843,12 +870,12 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Inhabilita el temporitzador HW-Beacon"
-
msgid "Disabled"
msgstr "Inhabilitat"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Descarta les respostes RFC1918 des de dalt"
@@ -887,15 +914,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr "No enviïs les respostes de prova"
-
msgid "Domain required"
msgstr "Es requereix un domini"
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -966,6 +993,9 @@ msgstr "Habilita l'<abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Habilita negociació IPv6 en la enllaç PPP"
@@ -996,6 +1026,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -1008,6 +1041,11 @@ msgstr "Activa/Desactiva"
msgid "Enabled"
msgstr "Habilitat"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Habilita l'Spanning Tree Protocol a aquest pont"
@@ -1017,6 +1055,12 @@ msgstr "Mode d'encapsulació"
msgid "Encryption"
msgstr "Encriptació"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Esborrant..."
@@ -1048,6 +1092,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1060,9 +1110,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Fast Frames"
-
msgid "File"
msgstr "Fitxer"
@@ -1098,6 +1145,9 @@ msgstr "Acaba"
msgid "Firewall"
msgstr "Tallafocs"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Ajusts de tallafocs"
@@ -1143,6 +1193,9 @@ msgstr "Força el TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Força el TKIP i el CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1173,6 +1226,11 @@ msgstr "Lliures"
msgid "Free space"
msgstr "Espai lliure"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1232,6 +1290,9 @@ msgstr "Contrasenya de HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1290,6 +1351,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Adreça IP"
@@ -1332,6 +1396,9 @@ msgstr "Longitud de prefix IPv4"
msgid "IPv4-Address"
msgstr "Adreça IPv6"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1380,6 +1447,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "Adreça IPv6"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-en-IPv4 (RFC4213)"
@@ -1525,6 +1595,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Usuari i/o contrasenya invàlids! Si us plau prova-ho de nou."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1533,7 +1606,7 @@ msgstr ""
"Sembla que intentes actualitzar una imatge que no hi cap a la memòria flaix, "
"si us plau verifica el fitxer d'imatge!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr "Es requereix JavaScript!"
msgid "Join Network"
@@ -1646,6 +1719,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1658,6 +1747,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1775,9 +1867,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Velocitat màxima"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1813,9 +1902,6 @@ msgstr "Ús de Memòria (%)"
msgid "Metric"
msgstr "Mètric"
-msgid "Minimum Rate"
-msgstr "Velocitat mínima"
-
msgid "Minimum hold time"
msgstr ""
@@ -1828,6 +1914,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Manca l'extensió de protocol del protocol %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mode"
@@ -1886,9 +1975,6 @@ msgstr "Baixa"
msgid "Move up"
msgstr "Puja"
-msgid "Multicast Rate"
-msgstr "Velocitat de difusió selectiva"
-
msgid "Multicast address"
msgstr "Adreça de difusió selectiva"
@@ -1901,6 +1987,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2081,12 +2170,50 @@ msgstr "Opció canviada"
msgid "Option removed"
msgstr "Opció treta"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Opcions"
@@ -2099,9 +2226,6 @@ msgstr ""
msgid "Outbound:"
msgstr "Sortint:"
-msgid "Outdoor Channels"
-msgstr "Canals d'exteriors"
-
msgid "Output Interface"
msgstr ""
@@ -2111,6 +2235,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2143,6 +2273,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2227,6 +2360,9 @@ msgstr "Màxim:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2236,6 +2372,9 @@ msgstr "Executa un reinici"
msgid "Perform reset"
msgstr "Executa un reinici"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Velocitat física:"
@@ -2266,6 +2405,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2280,6 +2431,9 @@ msgstr "Evita la comunicació client a client"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "continua"
@@ -2313,12 +2467,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Calidad"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2400,6 +2566,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2418,6 +2587,9 @@ msgstr "Rep"
msgid "Receiver Antenna"
msgstr "Antena receptora"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Reconnex aquesta interfície"
@@ -2427,9 +2599,6 @@ msgstr "Reconnectant la interfície"
msgid "References"
msgstr "Referències"
-msgid "Regulatory Domain"
-msgstr "Domini regulatori"
-
msgid "Relay"
msgstr "Relé"
@@ -2445,6 +2614,9 @@ msgstr "Pont de relé"
msgid "Remote IPv4 address"
msgstr "Adreça IPv6 remota"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Treu"
@@ -2466,9 +2638,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Alguns ISP ho requereixen, per exemple el Charter amb DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2513,6 +2705,12 @@ msgstr "Directori arrel dels fitxers servits per TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2602,9 +2800,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Clients separats"
-msgid "Separate WDS"
-msgstr "WDS separat"
-
msgid "Server Settings"
msgstr "Ajusts de servidor"
@@ -2628,6 +2823,11 @@ msgstr "Tipus de servei"
msgid "Services"
msgstr "Serveis"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Sincronització de hora"
@@ -2694,8 +2894,8 @@ msgstr "Tristament, el servidor ha encontrat un error inesperat."
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2726,6 +2926,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Especifiqueu el clau de xifració secret aquí."
@@ -2750,9 +2963,6 @@ msgstr "Leases estàtics"
msgid "Static Routes"
msgstr "Rutes estàtiques"
-msgid "Static WDS"
-msgstr "WDS estàtic"
-
msgid "Static address"
msgstr "Adreça estàtica"
@@ -2871,6 +3081,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2935,6 +3149,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "La longitud del prefix IPv6 en bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3139,9 +3356,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Mode Turbo"
-
msgid "Tx-Power"
msgstr "Potència Tx"
@@ -3160,6 +3374,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "Dispositiu USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3192,8 +3409,8 @@ msgstr "Actualitza les llistes"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3261,6 +3478,11 @@ msgstr "Usat"
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3371,6 +3593,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Sense fils"
@@ -3410,9 +3635,6 @@ msgstr "Escriure les peticions DNS rebudes al syslog"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Suport XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3424,9 +3646,9 @@ msgstr ""
"dispositiu pot resultar inaccessible!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Has d'activar el Java Script al teu navegador o LuCI no funcionarà "
+"Has d'activar el JavaScript al teu navegador o LuCI no funcionarà "
"correctament."
msgid ""
@@ -3518,6 +3740,9 @@ msgstr "fitxer <abbr title=\"Domain Name System\">DNS</abbr> local"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3572,6 +3797,9 @@ msgstr ""
msgid "tagged"
msgstr "etiquetat"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "desconegut"
@@ -3593,6 +3821,54 @@ msgstr "sí"
msgid "« Back"
msgstr "« Enrere"
+#~ msgid "AR Support"
+#~ msgstr "Suport AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Controlador sense fils d'Atheros 802.11%s"
+
+#~ msgid "Background Scan"
+#~ msgstr "Escaneig de fons"
+
+#~ msgid "Compression"
+#~ msgstr "Compressió"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Inhabilita el temporitzador HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "No enviïs les respostes de prova"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Fast Frames"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Velocitat màxima"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Velocitat mínima"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Velocitat de difusió selectiva"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Canals d'exteriors"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Domini regulatori"
+
+#~ msgid "Separate WDS"
+#~ msgstr "WDS separat"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS estàtic"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Mode Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Suport XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Es crearà una xarxa addicional si deixes això sense marcar."
diff --git a/modules/luci-base/po/cs/base.po b/modules/luci-base/po/cs/base.po
index 082f0bb6e..200ec5980 100644
--- a/modules/luci-base/po/cs/base.po
+++ b/modules/luci-base/po/cs/base.po
@@ -41,18 +41,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Zatížení za 1 minutu:"
msgid "15 Minute Load:"
msgstr "Zatížení za 15 minut:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Zatížení za 5 minut:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -140,9 +167,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Podpora AR"
-
msgid "ARP retry threshold"
msgstr "ARP limit opakování"
@@ -281,6 +305,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr "Povolit upstream odpovědi na 127.0.0.0/8 rozsah, např. pro RBL služby"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -289,9 +316,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -387,9 +411,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Připojení klienti"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s bezdrátový ovladaÄ"
-
msgid "Auth Group"
msgstr ""
@@ -399,6 +420,9 @@ msgstr ""
msgid "Authentication"
msgstr "Autentizace"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritativní"
@@ -465,9 +489,6 @@ msgstr "Zpět k přehledu"
msgid "Back to scan results"
msgstr "Zpět k výsledkům vyhledávání"
-msgid "Background Scan"
-msgstr "Vyhledávat na pozadí"
-
msgid "Backup / Flash Firmware"
msgstr "Zálohovat / nahrát firmware"
@@ -495,9 +516,15 @@ msgstr ""
"souborů oznaÄených opkg, nezbyných systémových souborů a souborů "
"vyhovujících uživatelem urÄeným vzorům."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Přenosová rychlost"
@@ -566,6 +593,9 @@ msgstr "Kontrola"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Kontrolní souÄet"
@@ -627,9 +657,6 @@ msgstr "Příkaz"
msgid "Common Configuration"
msgstr "SpoleÄná nastavení"
-msgid "Compression"
-msgstr "Komprese"
-
msgid "Configuration"
msgstr "Nastavení"
@@ -849,12 +876,12 @@ msgstr "Zakázat nastavení DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Zakázat HW-Beacon ÄasovaÄ"
-
msgid "Disabled"
msgstr "Zakázáno"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Vyřadit upstream RFC1918 odpovědi"
@@ -895,15 +922,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Nepřeposílat reverzní dotazy na místní sítě"
-msgid "Do not send probe responses"
-msgstr "Neodpovídat na vyhledávání"
-
msgid "Domain required"
msgstr "Vyžadována doména"
msgid "Domain whitelist"
msgstr "Whitelist domén"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -976,6 +1003,9 @@ msgstr "Povolit <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Povolit dynamickou aktualizaci koncového bodu HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Na PPP spoji povolit vyjednání IPv6"
@@ -1006,6 +1036,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Povolit tento přípojný bod"
@@ -1018,6 +1051,11 @@ msgstr "Povolit/Zakázat"
msgid "Enabled"
msgstr "Povoleno"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Na tomto síťovém mostě povolit Spanning Tree Protocol"
@@ -1027,6 +1065,12 @@ msgstr "Režim zapouzdření"
msgid "Encryption"
msgstr "Šifrování"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Odstraňování..."
@@ -1060,6 +1104,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Externí protokolovací server"
@@ -1072,9 +1122,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Rychlé rámce"
-
msgid "File"
msgstr "Soubor"
@@ -1110,6 +1157,9 @@ msgstr "DokonÄit"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Nastavení firewallu"
@@ -1155,6 +1205,9 @@ msgstr "Vynutit TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Vynutit TKIP a CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1185,6 +1238,11 @@ msgstr "Volné"
msgid "Free space"
msgstr "Volné místo"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1242,6 +1300,9 @@ msgstr "Heslo HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Handler"
@@ -1301,6 +1362,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP adresy"
@@ -1343,6 +1407,9 @@ msgstr "Délka IPv4 prefixu"
msgid "IPv4-Address"
msgstr "IPv4 adresa"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1391,6 +1458,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6 adresa"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1538,6 +1608,9 @@ msgstr "Uvedené VLAN ID je neplatné! Každé ID musí být jedineÄné"
msgid "Invalid username and/or password! Please try again."
msgstr "Špatné uživatelské jméno a/nebo heslo! Prosím zkuste to znovu."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1546,7 +1619,7 @@ msgstr ""
"Zdá se, že se pokoušíte zapsat obraz, který se nevejde do flash paměti. "
"Prosím ověřte soubor s obrazem!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr "Vyžadován JavaScript!"
msgid "Join Network"
@@ -1661,6 +1734,22 @@ msgstr ""
"Seznam <abbr title=\"Domain Name System\">DNS</abbr> serverů, na které "
"přeposílat požadavky"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1673,6 +1762,9 @@ msgstr "Seznam hostitelů, kteří udávají falešné hodnoty NX domén"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"Poslouchat pouze na daném rozhraní, nebo pokud není specifikováno, na všech"
@@ -1797,9 +1889,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Nejvyšší míra"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Nejvyšší povolené množství aktivních DHCP zápůjÄek"
@@ -1835,9 +1924,6 @@ msgstr "Využití paměti (%)"
msgid "Metric"
msgstr "Metrika"
-msgid "Minimum Rate"
-msgstr "Nejnižší hodnota"
-
msgid "Minimum hold time"
msgstr "Minimální Äas zápůjÄky"
@@ -1850,6 +1936,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Chybějící rozšíření protokolu %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mód"
@@ -1908,9 +1997,6 @@ msgstr "Přesunout dolů"
msgid "Move up"
msgstr "Přesunout nahoru"
-msgid "Multicast Rate"
-msgstr "Hodnota vícesměrového vysílání"
-
msgid "Multicast address"
msgstr "Adresa vícesměrového vysílání"
@@ -1923,6 +2009,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2102,12 +2191,50 @@ msgstr "Volba změněna"
msgid "Option removed"
msgstr "Volba odstraněna"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Možnosti"
@@ -2120,9 +2247,6 @@ msgstr "Ven"
msgid "Outbound:"
msgstr "Odchozí:"
-msgid "Outdoor Channels"
-msgstr "Venkovní kanály"
-
msgid "Output Interface"
msgstr ""
@@ -2132,6 +2256,12 @@ msgstr "Přepsat MAC adresu"
msgid "Override MTU"
msgstr "Přepsat MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2166,6 +2296,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2250,6 +2383,9 @@ msgstr "Å piÄka:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2259,6 +2395,9 @@ msgstr "Provést restart"
msgid "Perform reset"
msgstr "Provést reset"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Fyzická rychlost:"
@@ -2289,6 +2428,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2305,6 +2456,9 @@ msgstr "Zabraňuje komunikaci klient-klient"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b Wireless Controller"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "PokraÄovat"
@@ -2338,12 +2492,24 @@ msgstr "Poskytování nové sítě"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Kvalita"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2438,6 +2604,9 @@ msgstr "Provoz v reálném Äase"
msgid "Realtime Wireless"
msgstr "Wireless v reálném Äase"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Opětovné nastavení ochrany"
@@ -2456,6 +2625,9 @@ msgstr "Přijmout"
msgid "Receiver Antenna"
msgstr "Přijímací anténa"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Přepojit toto rozhraní"
@@ -2465,9 +2637,6 @@ msgstr "Přepojuji rozhraní"
msgid "References"
msgstr "Reference"
-msgid "Regulatory Domain"
-msgstr "Doména regulátora"
-
msgid "Relay"
msgstr "Přenos"
@@ -2483,6 +2652,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr "Vzdálená IPv4 adresa"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Odstranit"
@@ -2504,10 +2676,30 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
# Charter je poskytovate
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Vyžadováno u některých ISP, např. Charter s DocSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2552,6 +2744,12 @@ msgstr "Kořenový adresář souborů, přístupných přes TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2642,9 +2840,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Oddělovat klienty"
-msgid "Separate WDS"
-msgstr "Oddělovat WDS"
-
msgid "Server Settings"
msgstr "Nastavení serveru"
@@ -2668,6 +2863,11 @@ msgstr "Typ služby"
msgid "Services"
msgstr "Služby"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Nastavit synchronizaci Äasu"
@@ -2732,15 +2932,14 @@ msgstr "Omlouváme se, ale požadovaný objekt nebyl nalezen."
msgid "Sorry, the server encountered an unexpected error."
msgstr "Omlouváme se, na serveru doÅ¡lo k neoÄekávané vyjímce."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Omlouváme se, ale v tomto zařízení není přítomná podpora pro upgrade "
"systému. Nový obraz firmwaru musí být zapsán ruÄnÄ›. Prosím, obraÅ¥te se na "
-"OpenWRT wiki pro zařízení specifické instalaÄní instrukce."
+"wiki pro zařízení specifické instalaÄní instrukce."
msgid "Sort"
msgstr "Seřadit"
@@ -2772,6 +2971,19 @@ msgid ""
"dead"
msgstr "UrÄuje poÄet sekund, po kterém je hostitel považovám za mrtvého"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Zde nastavte soukromý Å¡ifrovací klíÄ."
@@ -2796,9 +3008,6 @@ msgstr "Statické zápůjÄky"
msgid "Static Routes"
msgstr "Statické trasy"
-msgid "Static WDS"
-msgstr "Statický WDS"
-
msgid "Static address"
msgstr "Statická adresa"
@@ -2808,7 +3017,7 @@ msgid ""
"configurations where only hosts with a corresponding lease are served."
msgstr ""
"Statické zápůjÄky se používají pro pÅ™iÅ™azení fixních IP adres a symbolických "
-"jmen DHCP klientům. Jsou také vyžadvány pro nedynamické konfigurace "
+"jmen DHCP klientům. Jsou také vyžadovány pro nedynamické konfigurace "
"rozhraní, kde jsou povoleni pouze hosté s odpovídajícím nastavením."
msgid "Status"
@@ -2824,7 +3033,7 @@ msgid "Submit"
msgstr "Odeslat"
msgid "Suppress logging"
-msgstr ""
+msgstr "PotlaÄit logování"
msgid "Suppress logging of the routine operation of these protocols"
msgstr ""
@@ -2926,6 +3135,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr "IPv6 prefix pÅ™idÄ›lený poskytovatelm vÄ›tÅ¡inou konÄí <code>::</code>"
@@ -2992,6 +3205,9 @@ msgstr "Délka IPv4 prefixu v bitech, zbytek se používá v IPv6 adresách"
msgid "The length of the IPv6 prefix in bits"
msgstr "Délka IPv6 prefixu v bitech"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3104,8 +3320,8 @@ msgid ""
"This is the only <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
"abbr> in the local network"
msgstr ""
-"Toto je jedný <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
-"abbr>v mistní síti"
+"Toto je jediný <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
+"abbr> v mistní síti"
msgid "This is the plain username for logging into the account"
msgstr ""
@@ -3206,9 +3422,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Turbo mód"
-
msgid "Tx-Power"
msgstr "Tx-Power"
@@ -3227,6 +3440,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB zařízení"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3259,12 +3475,12 @@ msgstr "Aktualizovat seznamy"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Nahrát obraz pro upgrade systému, jímž bude přepsán běžící firmware. "
"Zkontrolujte \"Keep settings\" za úÄelem udržení aktuální konfigurace "
-"(vyžaduje obraz OpenWrt kompatabilního firmwaru)."
+"(vyžaduje obraz kompatabilního firmwaru)."
msgid "Upload archive..."
msgstr "Nahrát archiv..."
@@ -3334,6 +3550,11 @@ msgstr "Použit"
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3444,6 +3665,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Bezdrátová síť"
@@ -3483,9 +3707,6 @@ msgstr "Zapisovat přijaté požadavky DNS do systemového logu"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Podpora XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3496,9 +3717,9 @@ msgstr ""
"\"network\", vaše zařízení se může stát nepřístupným!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Aby LuCI fungoval správnÄ›, musíte mít v prohlížeÄi povolený Javascript."
+"Aby LuCI fungoval správnÄ›, musíte mít v prohlížeÄi povolený JavaScript."
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
@@ -3588,6 +3809,9 @@ msgstr "místní <abbr title=\"Domain Name System\">DNS</abbr> soubor"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3642,6 +3866,9 @@ msgstr ""
msgid "tagged"
msgstr "oznaÄený"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "neznámý"
@@ -3663,6 +3890,54 @@ msgstr "ano"
msgid "« Back"
msgstr "« Zpět"
+#~ msgid "AR Support"
+#~ msgstr "Podpora AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s bezdrátový ovladaÄ"
+
+#~ msgid "Background Scan"
+#~ msgstr "Vyhledávat na pozadí"
+
+#~ msgid "Compression"
+#~ msgstr "Komprese"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Zakázat HW-Beacon ÄasovaÄ"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Neodpovídat na vyhledávání"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Rychlé rámce"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Nejvyšší míra"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Nejnižší hodnota"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Hodnota vícesměrového vysílání"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Venkovní kanály"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Doména regulátora"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Oddělovat WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "Statický WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbo mód"
+
+#~ msgid "XR Support"
+#~ msgstr "Podpora XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Pokud není zaÅ¡krtnuto, bude vytvoÅ™ena dodateÄná síť."
diff --git a/modules/luci-base/po/de/base.po b/modules/luci-base/po/de/base.po
index 2fe3b80e4..d30cd2f86 100644
--- a/modules/luci-base/po/de/base.po
+++ b/modules/luci-base/po/de/base.po
@@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-26 17:57+0200\n"
-"PO-Revision-Date: 2013-03-29 12:13+0200\n"
+"PO-Revision-Date: 2017-03-06 11:15+0200\n"
"Last-Translator: JoeSemler <josef.semler@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: de\n"
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Systemlast (1 Minute):"
msgid "15 Minute Load:"
msgstr "Systemlast (15 Minuten):"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Systemlast (5 Minuten):"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -141,9 +168,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "AR-Unterstützung"
-
msgid "ARP retry threshold"
msgstr "Grenzwert für ARP-Auflösungsversuche"
@@ -247,9 +271,11 @@ msgid ""
"Allocate IP addresses sequentially, starting from the lowest available "
"address"
msgstr ""
+"IP-Adressen sequenziell vergeben, beginnend mit der kleinsten verfügbaren "
+"Adresse"
msgid "Allocate IP sequentially"
-msgstr ""
+msgstr "IPs sequenziell vergeben"
msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication"
msgstr "Erlaube Anmeldung per Passwort"
@@ -280,6 +306,9 @@ msgstr ""
"Dies erlaubt DNS-Antworten im 127.0.0.0/8 Bereich der z.B. für RBL Dienste "
"genutzt wird"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -288,9 +317,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -386,9 +412,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Assoziierte Clients"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s W-LAN Adapter"
-
msgid "Auth Group"
msgstr ""
@@ -398,6 +421,9 @@ msgstr ""
msgid "Authentication"
msgstr "Authentifizierung"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Authoritativ"
@@ -464,9 +490,6 @@ msgstr "Zurück zur Übersicht"
msgid "Back to scan results"
msgstr "Zurück zu den Scan-Ergebnissen"
-msgid "Background Scan"
-msgstr "Hintergrundscan"
-
msgid "Backup / Flash Firmware"
msgstr "Backup / Firmware Update"
@@ -495,9 +518,15 @@ msgstr ""
"markierten Konfigurationsdateien. Des Weiteren sind die durch "
"benutzerdefinierte Dateiemuster betroffenen Dateien enthalten."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitrate"
@@ -566,6 +595,9 @@ msgstr "Prüfen"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Prüfsumme"
@@ -624,9 +656,6 @@ msgstr "Befehl"
msgid "Common Configuration"
msgstr "Allgemeine Konfiguration"
-msgid "Compression"
-msgstr "Kompression"
-
msgid "Configuration"
msgstr "Konfiguration"
@@ -844,12 +873,12 @@ msgstr "DNS-Verarbeitung deaktivieren"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Deaktiviere Hardware-Beacon Zeitgeber"
-
msgid "Disabled"
msgstr "Deaktiviert"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Eingehende RFC1918-Antworten verwerfen"
@@ -893,15 +922,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Keine Rückwärtsauflösungen für lokale Netzwerke weiterleiten"
-msgid "Do not send probe responses"
-msgstr "Scan-Anforderungen nicht beantworten"
-
msgid "Domain required"
msgstr "Anfragen nur mit Domain"
msgid "Domain whitelist"
msgstr "Domain-Whitelist"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -971,6 +1000,9 @@ msgstr "<abbr title=\"Spanning Tree Protocol\">STP</abbr> aktivieren"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Dynamisches HE.net IP-Adress-Update aktivieren"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Aushandeln von IPv6-Adressen auf der PPP-Verbindung aktivieren"
@@ -1001,6 +1033,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Diesen Mountpunkt aktivieren"
@@ -1013,6 +1048,11 @@ msgstr "Aktivieren/Deaktivieren"
msgid "Enabled"
msgstr "Aktiviert"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Aktiviert das Spanning Tree Protokoll auf dieser Netzwerkbrücke"
@@ -1022,6 +1062,12 @@ msgstr "Kapselung"
msgid "Encryption"
msgstr "Verschlüsselung"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Lösche..."
@@ -1056,6 +1102,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Externer Protokollserver IP"
@@ -1068,9 +1120,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Schnelle Frames"
-
msgid "File"
msgstr "Datei"
@@ -1106,6 +1155,9 @@ msgstr "Fertigstellen"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Firewall Einstellungen"
@@ -1153,6 +1205,9 @@ msgstr "Erzwinge TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Erzwinge TKIP und CCMP (AES)"
+msgid "Force link"
+msgstr "Erzwinge Verbindung"
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1183,6 +1238,11 @@ msgstr "Frei"
msgid "Free space"
msgstr "Freier Platz"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1242,6 +1302,9 @@ msgstr "HE.net Passwort"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Handler"
@@ -1300,6 +1363,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP-Adresse"
@@ -1342,6 +1408,9 @@ msgstr "Länge des IPv4 Präfix"
msgid "IPv4-Address"
msgstr "IPv4-Adresse"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1390,6 +1459,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-Adresse"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1538,6 +1610,9 @@ msgid "Invalid username and/or password! Please try again."
msgstr ""
"Ungültiger Benutzername oder ungültiges Passwort! Bitte erneut versuchen. "
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1546,8 +1621,8 @@ msgstr ""
"Das verwendete Image scheint zu groß für den internen Flash-Speicher zu "
"sein. Überprüfen Sie die Imagedatei!"
-msgid "Java Script required!"
-msgstr "Java-Script benötigt!"
+msgid "JavaScript required!"
+msgstr "JavaScript benötigt!"
msgid "Join Network"
msgstr "Netzwerk beitreten"
@@ -1661,6 +1736,22 @@ msgstr ""
"Liste von <abbr title=\"Domain Name System\">DNS</abbr>-Servern an welche "
"Requests weitergeleitet werden"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1673,6 +1764,9 @@ msgstr "Liste von Servern die falsche \"NX Domain\" Antworten liefern"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"Nur auf die gegebene Schnittstelle reagieren, nutze alle wenn nicht "
@@ -1800,9 +1894,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Höchstübertragungsrate"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Maximal zulässige Anzahl von aktiven DHCP-Leases"
@@ -1838,9 +1929,6 @@ msgstr "Speichernutzung (%)"
msgid "Metric"
msgstr "Metrik"
-msgid "Minimum Rate"
-msgstr "Mindestübertragungsrate"
-
msgid "Minimum hold time"
msgstr "Minimalzeit zum Halten der Verbindung"
@@ -1853,6 +1941,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Erweiterung für Protokoll %q fehlt"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Modus"
@@ -1911,9 +2002,6 @@ msgstr "Nach unten schieben"
msgid "Move up"
msgstr "Nach oben schieben"
-msgid "Multicast Rate"
-msgstr "Multicastrate"
-
msgid "Multicast address"
msgstr "Multicast-Adresse"
@@ -1926,6 +2014,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2107,12 +2198,50 @@ msgstr "Option geändert"
msgid "Option removed"
msgstr "Option entfernt"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Optionen"
@@ -2125,9 +2254,6 @@ msgstr "Aus"
msgid "Outbound:"
msgstr "Ausgehend:"
-msgid "Outdoor Channels"
-msgstr "Funkkanal für den Ausseneinsatz"
-
msgid "Output Interface"
msgstr ""
@@ -2137,6 +2263,12 @@ msgstr "MAC-Adresse überschreiben"
msgid "Override MTU"
msgstr "MTU-Wert überschreiben"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2171,6 +2303,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2255,6 +2390,9 @@ msgstr "Spitze:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2264,6 +2402,9 @@ msgstr "Neustart durchführen"
msgid "Perform reset"
msgstr "Reset durchführen"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Phy-Rate:"
@@ -2294,6 +2435,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2310,6 +2463,9 @@ msgstr "Unterbindet Client-Client-Verkehr"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b W-LAN Adapter"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Fortfahren"
@@ -2343,12 +2499,24 @@ msgstr "Neues Netzwerk anbieten"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Qualität"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2444,6 +2612,9 @@ msgstr "Echtzeitverkehr"
msgid "Realtime Wireless"
msgstr "Echtzeit-WLAN-Signal"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "DNS-Rebind-Schutz"
@@ -2462,6 +2633,9 @@ msgstr "Empfangen"
msgid "Receiver Antenna"
msgstr "Empfangsantenne"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Diese Schnittstelle neu verbinden"
@@ -2471,9 +2645,6 @@ msgstr "Verbinde Schnittstelle neu"
msgid "References"
msgstr "Verweise"
-msgid "Regulatory Domain"
-msgstr "Geltungsbereich (Regulatory Domain)"
-
msgid "Relay"
msgstr "Relay"
@@ -2489,6 +2660,9 @@ msgstr "Relay-Brücke"
msgid "Remote IPv4 address"
msgstr "Entfernte IPv4-Adresse"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Entfernen"
@@ -2510,10 +2684,30 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
"Wird von bestimmten Internet-Providern benötigt, z.B. Charter mit DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2558,6 +2752,12 @@ msgstr "Wurzelverzeichnis für über TFTP ausgelieferte Dateien "
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2649,9 +2849,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Clients isolieren"
-msgid "Separate WDS"
-msgstr "Separates WDS"
-
msgid "Server Settings"
msgstr "Servereinstellungen"
@@ -2675,6 +2872,14 @@ msgstr "Service-Typ"
msgid "Services"
msgstr "Dienste"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+"Schnittstelleneigenschaften werden unabhängig vom Link gesetzt (ist die "
+"Option ausgewählt, so werden die Hotplug-Skripte bei Änderung nicht "
+"aufgerufen)"
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Zeitsynchronisierung einrichten"
@@ -2740,15 +2945,14 @@ msgid "Sorry, the server encountered an unexpected error."
msgstr ""
"Entschuldigung, auf dem Server ist ein unerwarteter Fehler aufgetreten."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Aufgrund des fehlenden sysupgrade-Supports muss die neue Firmware manuell "
-"geflasht werden. Weitere Informationen sowie gerätespezifische "
-"Installationsanleitungen entnehmen Sie bitte dem OpenWrt Wiki."
+"geflasht werden. Weitere Informationen sowie gerätespezifische "
+"Installationsanleitungen entnehmen Sie bitte dem Wiki."
msgid "Sort"
msgstr "Sortieren"
@@ -2782,6 +2986,19 @@ msgstr ""
"Spezifiziert die maximale Anzahl an Sekunde nach denen Hoss als tot erachtet "
"werden"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Geben Sie hier den geheimen Netzwerkschlüssel an"
@@ -2806,9 +3023,6 @@ msgstr "Statische Einträge"
msgid "Static Routes"
msgstr "Statische Routen"
-msgid "Static WDS"
-msgstr "Statisches WDS"
-
msgid "Static address"
msgstr "Statische Adresse"
@@ -2835,10 +3049,11 @@ msgid "Submit"
msgstr "Absenden"
msgid "Suppress logging"
-msgstr ""
+msgstr "Logeinträge unterdrücken"
msgid "Suppress logging of the routine operation of these protocols"
msgstr ""
+"Logeinträge für erfolgreiche Operationen dieser Protokolle unterdrücken"
msgid "Swap"
msgstr ""
@@ -2938,6 +3153,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"Vom Provider zugewiesener IPv6 Präfix, endet normalerweise mit <code>::</"
@@ -3004,6 +3223,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "Länge des IPv6 Präfix in Bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3229,9 +3451,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Turbo Modus"
-
msgid "Tx-Power"
msgstr "Sendestärke"
@@ -3250,6 +3469,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB-Gerät"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3282,8 +3504,8 @@ msgstr "Listen aktualisieren"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Zum Ersetzen der aktuellen Firmware kann hier ein sysupgrade-Kompatibles "
"Image hochgeladen werden. Wenn die vorhandene Konfiguration auch nach dem "
@@ -3358,6 +3580,11 @@ msgstr "Belegt"
msgid "Used Key Slot"
msgstr "Benutzer Schlüsselindex"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3468,6 +3695,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "WLAN"
@@ -3507,9 +3737,6 @@ msgstr "Empfangene DNS-Anfragen in das Systemprotokoll schreiben"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "XR-Unterstützung"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3521,9 +3748,9 @@ msgstr ""
"werden könnte das Gerät unerreichbar werden!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Im Browser muss Java-Script aktiviert sein oder LuCI wird nicht richtig "
+"Im Browser muss JavaScript aktiviert sein oder LuCI wird nicht richtig "
"funktionieren."
msgid ""
@@ -3612,6 +3839,9 @@ msgstr "Lokale DNS-Datei"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3666,6 +3896,9 @@ msgstr ""
msgid "tagged"
msgstr "tagged"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "unbekannt"
@@ -3687,6 +3920,54 @@ msgstr "ja"
msgid "« Back"
msgstr "« Zurück"
+#~ msgid "AR Support"
+#~ msgstr "AR-Unterstützung"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s W-LAN Adapter"
+
+#~ msgid "Background Scan"
+#~ msgstr "Hintergrundscan"
+
+#~ msgid "Compression"
+#~ msgstr "Kompression"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Deaktiviere Hardware-Beacon Zeitgeber"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Scan-Anforderungen nicht beantworten"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Schnelle Frames"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Höchstübertragungsrate"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Mindestübertragungsrate"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Multicastrate"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Funkkanal für den Ausseneinsatz"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Geltungsbereich (Regulatory Domain)"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Separates WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "Statisches WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbo Modus"
+
+#~ msgid "XR Support"
+#~ msgstr "XR-Unterstützung"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr ""
#~ "Erzeugt ein zusätzliches Netzwerk wenn diese Option nicht ausgewählt ist"
diff --git a/modules/luci-base/po/el/base.po b/modules/luci-base/po/el/base.po
index 0d3502288..dc8c3312c 100644
--- a/modules/luci-base/po/el/base.po
+++ b/modules/luci-base/po/el/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "ΦοÏτίο 1 λεπτοÏ:"
msgid "15 Minute Load:"
msgstr "ΦοÏτίο 15 λεπτών:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "ΦοÏτίο 5 λεπτών:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -143,9 +170,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "ΥποστήÏιξη AR"
-
msgid "ARP retry threshold"
msgstr "ÎŒÏιο επαναδοκιμών ARP"
@@ -288,6 +312,9 @@ msgstr ""
"Îα επιτÏέπονται απαντήσεις από ανώτεÏο επίπεδο εντός του εÏÏους 127.0.0.0/8, "
"Ï€.χ. για υπηÏεσίες RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -296,9 +323,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -394,9 +418,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Συνδεδεμένοι Σταθμοί"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -406,6 +427,9 @@ msgstr ""
msgid "Authentication"
msgstr "Εξουσιοδότηση"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "ΚÏÏιος"
@@ -472,9 +496,6 @@ msgstr "Πίσω Ï€Ïος επισκόπηση"
msgid "Back to scan results"
msgstr "Πίσω στα αποτελέσματα σάÏωσης"
-msgid "Background Scan"
-msgstr "ΣάÏωση ΠαÏασκηνίου"
-
msgid "Backup / Flash Firmware"
msgstr "ΑντίγÏαφο ασφαλείας / ΕγγÏαφή FLASH Υλικολογισμικό"
@@ -504,9 +525,15 @@ msgstr ""
"ουσιώδη βασικά αÏχεία καθώς και καθοÏισμένα από το χÏήστη μοτίβα αντιγÏάφων "
"ασφαλείας."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Ρυθμός δεδομένων"
@@ -575,6 +602,9 @@ msgstr "Έλεγχος"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "ΆθÏοισμα Ελέγχου"
@@ -636,9 +666,6 @@ msgstr "Εντολή"
msgid "Common Configuration"
msgstr "Κοινή ΠαÏαμετÏοποίηση"
-msgid "Compression"
-msgstr "Συμπίεση"
-
msgid "Configuration"
msgstr "ΠαÏαμετÏοποίηση"
@@ -858,12 +885,12 @@ msgstr "ΑπενεÏγοποίηση Ïυθμίσεων DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "ΑπενεÏγοποίηση χÏονιστή HW-Beacon"
-
msgid "Disabled"
msgstr "ΑπενεÏγοποιημένο"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Αγνόησε τις απαντήσεις ανοδικής Ïοής RFC1918"
@@ -906,15 +933,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr "Îα μην στέλνονται απαντήσεις σε probes"
-
msgid "Domain required"
msgstr "Απαίτηση για όνομα τομέα"
msgid "Domain whitelist"
msgstr "Λευκή λίστα τομέων"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -988,6 +1015,9 @@ msgstr "ΕνεÏγοποίηση <abbr title=\"Spanning Tree Protocol\">STP</abb
msgid "Enable HE.net dynamic endpoint update"
msgstr "ΕνεÏγοποίηση ενημέÏωσης Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï Ï„ÎµÏÎ¼Î±Ï„Î¹ÎºÎ¿Ï ÏƒÎ·Î¼ÎµÎ¯Î¿Ï… HE.net."
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "ΕνεÏγοποίηση διαπÏαγμάτευσης IPv6 πάνω στη PPP ζεÏξη"
@@ -1018,6 +1048,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "ΕνεÏγοποίηση αυτής της Ï€ÏοσάÏτησης"
@@ -1030,6 +1063,11 @@ msgstr "ΕνεÏγοποίηση/ΑπενεÏγοποίηση"
msgid "Enabled"
msgstr "ΕνεÏγοποιημένο"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -1039,6 +1077,12 @@ msgstr "ΛειτουÏγία ενθυλάκωσης"
msgid "Encryption"
msgstr "ΚÏυπτογÏάφηση"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "ΔιαγÏάφεται..."
@@ -1073,6 +1117,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "ΕξωτεÏικός εξυπηÏετητής καταγÏαφής συστήματος"
@@ -1085,9 +1135,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "ΓÏήγοÏα Πλαίσια"
-
msgid "File"
msgstr "ΑÏχείο"
@@ -1123,6 +1170,9 @@ msgstr "Τέλος"
msgid "Firewall"
msgstr "Τείχος ΠÏοστασίας"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Ρυθμίσεις Τείχους ΠÏοστασίας"
@@ -1169,6 +1219,9 @@ msgstr "Επιβολή TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Επιβολή TKIP και CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1199,6 +1252,11 @@ msgstr ""
msgid "Free space"
msgstr "ΕλεÏθεÏος χώÏος"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1256,6 +1314,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1314,6 +1375,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "ΔιεÏθυνση IP"
@@ -1356,6 +1420,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr "IPv4-ΔιεÏθυνση"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1404,6 +1471,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1553,6 +1623,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "ΆκυÏο όνομα χÏήστη και/ή κωδικός Ï€Ïόσβασης! ΠαÏακαλώ Ï€Ïοσπαθήστε ξανά."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1561,8 +1634,8 @@ msgstr ""
"Φαίνεται πως Ï€Ïοσπαθείτε να φλασάÏετε μια εικόνα που δεν χωÏάει στην μνήμη "
"flash, παÏακαλώ επιβεβαιώστε το αÏχείο εικόνας!"
-msgid "Java Script required!"
-msgstr "Απαιτείται Javascript!"
+msgid "JavaScript required!"
+msgstr "Απαιτείται JavaScript!"
msgid "Join Network"
msgstr ""
@@ -1674,6 +1747,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1686,6 +1775,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1803,9 +1895,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Μέγιστος Ρυθμός"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Μέγιστος επιτÏεπόμενος αÏιθμός ενεÏγών DHCP leases"
@@ -1842,9 +1931,6 @@ msgstr "ΧÏήση Μνήμης (%)"
msgid "Metric"
msgstr "ΜέτÏο"
-msgid "Minimum Rate"
-msgstr "Ελάχιστος Ρυθμός"
-
msgid "Minimum hold time"
msgstr "Ελάχιστος χÏόνος κÏάτησης"
@@ -1857,6 +1943,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "ΛειτουÏγία"
@@ -1916,9 +2005,6 @@ msgstr "Μετακίνηση κάτω"
msgid "Move up"
msgstr "Μετακίνηση πάνω"
-msgid "Multicast Rate"
-msgstr "Ρυθμός Multicast"
-
msgid "Multicast address"
msgstr "ΔιεÏθυνση Multicast"
@@ -1931,6 +2017,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2111,12 +2200,50 @@ msgstr "Η επιλογή άλλαξε"
msgid "Option removed"
msgstr "Η επιλογή αφαιÏέθηκε"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Επιλογές"
@@ -2129,9 +2256,6 @@ msgstr "Έξοδος"
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr "ΕξωτεÏικά Κανάλια"
-
msgid "Output Interface"
msgstr ""
@@ -2141,6 +2265,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2173,6 +2303,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2257,6 +2390,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2266,6 +2402,9 @@ msgstr "Εκτέλεση επανεκκίνησης"
msgid "Perform reset"
msgstr "ΔιενέÏγεια αÏχικοποίησης"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2296,6 +2435,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2311,6 +2462,9 @@ msgstr "ΑποτÏέπει την επικοινωνία Î¼ÎµÏ„Î±Î¾Ï Ï€ÎµÎ»Î±Ï„
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Συνέχεια"
@@ -2344,12 +2498,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Ψευδό Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2431,6 +2597,9 @@ msgstr "Κίνηση Ï€ÏÎ±Î³Î¼Î±Ï„Î¹ÎºÎ¿Ï Ï‡Ïόνου"
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2449,6 +2618,9 @@ msgstr "Λήψη"
msgid "Receiver Antenna"
msgstr "ΚεÏαία Λήψης"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "ΕπανασÏνδεση της διεπαφής"
@@ -2458,9 +2630,6 @@ msgstr "ΕπανασÏνδεση της διεπαφής"
msgid "References"
msgstr "ΑναφοÏές"
-msgid "Regulatory Domain"
-msgstr "Ρυθμιστική ΠεÏιοχή"
-
msgid "Relay"
msgstr ""
@@ -2476,6 +2645,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr "ΑπομακÏυσμένη διεÏθυνση IPv4"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "ΑφαίÏεση"
@@ -2497,9 +2669,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2544,6 +2736,12 @@ msgstr "Κατάλογος Root για αÏχεία που σεÏβίÏονταÎ
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2635,9 +2833,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Απομόνωση Πελατών"
-msgid "Separate WDS"
-msgstr "ΞεχωÏιστά WDS"
-
msgid "Server Settings"
msgstr "Ρυθμίσεις ΕξυπηÏετητή"
@@ -2661,6 +2856,11 @@ msgstr "Είδος ΥπηÏεσίας"
msgid "Services"
msgstr "ΥπηÏεσίες"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2726,8 +2926,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2760,6 +2960,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "ΟÏίστε το κÏυφό κλειδί κÏυπτογÏάφησης."
@@ -2784,9 +2997,6 @@ msgstr "Στατικά Leases"
msgid "Static Routes"
msgstr "Στατικές ΔιαδÏομές"
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr "Στατική διεÏθυνση"
@@ -2903,6 +3113,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2963,6 +3177,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3164,9 +3381,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "ΛειτουÏγία Turbo"
-
msgid "Tx-Power"
msgstr "ΙσχÏÏ‚ Εκπομπής"
@@ -3185,6 +3399,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "Συσκευή USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3217,8 +3434,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3286,6 +3503,11 @@ msgstr "Σε χÏήση"
msgid "Used Key Slot"
msgstr "ΧÏησιμοποιοÏμενη Υποδοχή ΚλειδιοÏ"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3394,6 +3616,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "ΑσÏÏματο"
@@ -3433,9 +3658,6 @@ msgstr "ΚαταγÏαφή των ληφθέντων DNS αιτήσεων στο
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "ΥποστήÏιξη XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3447,7 +3669,7 @@ msgstr ""
"όπως το \"network\", η συσκευή σας μποÏεί να καταστεί μη-Ï€Ïοσβάσιμη!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3540,6 +3762,9 @@ msgstr "τοπικό αÏχείο <abbr title=\"Domain Name System\">DNS</abbr>"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3594,6 +3819,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
@@ -3615,6 +3843,48 @@ msgstr "ναι"
msgid "« Back"
msgstr "« Πίσω"
+#~ msgid "AR Support"
+#~ msgstr "ΥποστήÏιξη AR"
+
+#~ msgid "Background Scan"
+#~ msgstr "ΣάÏωση ΠαÏασκηνίου"
+
+#~ msgid "Compression"
+#~ msgstr "Συμπίεση"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "ΑπενεÏγοποίηση χÏονιστή HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Îα μην στέλνονται απαντήσεις σε probes"
+
+#~ msgid "Fast Frames"
+#~ msgstr "ΓÏήγοÏα Πλαίσια"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Μέγιστος Ρυθμός"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Ελάχιστος Ρυθμός"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Ρυθμός Multicast"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "ΕξωτεÏικά Κανάλια"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Ρυθμιστική ΠεÏιοχή"
+
+#~ msgid "Separate WDS"
+#~ msgstr "ΞεχωÏιστά WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "ΛειτουÏγία Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "ΥποστήÏιξη XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Ένα επιπλέον δίκτυο θα δημιουÏγηθεί εάν αυτό αφεθεί κενό"
diff --git a/modules/luci-base/po/en/base.po b/modules/luci-base/po/en/base.po
index b032f4970..c5edff422 100644
--- a/modules/luci-base/po/en/base.po
+++ b/modules/luci-base/po/en/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "1 Minute Load:"
msgid "15 Minute Load:"
msgstr "15 Minute Load:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "5 Minute Load:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -143,9 +170,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "AR Support"
-
msgid "ARP retry threshold"
msgstr "ARP retry threshold"
@@ -279,6 +303,9 @@ msgid ""
msgstr ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -287,9 +314,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -385,9 +409,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Associated Stations"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -397,6 +418,9 @@ msgstr ""
msgid "Authentication"
msgstr "Authentication"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Authoritative"
@@ -463,9 +487,6 @@ msgstr "Back to overview"
msgid "Back to scan results"
msgstr "Back to scan results"
-msgid "Background Scan"
-msgstr "Background Scan"
-
msgid "Backup / Flash Firmware"
msgstr "Backup / Flash Firmware"
@@ -493,9 +514,15 @@ msgstr ""
"configuration files marked by opkg, essential base files and the user "
"defined backup patterns."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitrate"
@@ -564,6 +591,9 @@ msgstr "Check"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -623,9 +653,6 @@ msgstr "Command"
msgid "Common Configuration"
msgstr "Common Configuration"
-msgid "Compression"
-msgstr "Compression"
-
msgid "Configuration"
msgstr "Configuration"
@@ -844,12 +871,12 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Disable HW-Beacon timer"
-
msgid "Disabled"
msgstr "Disabled"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr ""
@@ -888,15 +915,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr "Do not send probe responses"
-
msgid "Domain required"
msgstr "Domain required"
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -967,6 +994,9 @@ msgstr "Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -997,6 +1027,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -1009,6 +1042,11 @@ msgstr "Enable/Disable"
msgid "Enabled"
msgstr "Enabled"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Enables the Spanning Tree Protocol on this bridge"
@@ -1018,6 +1056,12 @@ msgstr ""
msgid "Encryption"
msgstr "Encryption"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -1049,6 +1093,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1061,9 +1111,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Fast Frames"
-
msgid "File"
msgstr ""
@@ -1099,6 +1146,9 @@ msgstr ""
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Firewall Settings"
@@ -1144,6 +1194,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1174,6 +1227,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1231,6 +1289,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Handler"
@@ -1288,6 +1349,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP address"
@@ -1330,6 +1394,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1378,6 +1445,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1522,6 +1592,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Invalid username and/or password! Please try again."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1530,7 +1603,7 @@ msgstr ""
"It appears that you try to flash an image that does not fit into the flash "
"memory, please verify the image file!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1643,6 +1716,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1655,6 +1744,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1772,9 +1864,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Maximum Rate"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1810,9 +1899,6 @@ msgstr "Memory usage (%)"
msgid "Metric"
msgstr "Metric"
-msgid "Minimum Rate"
-msgstr "Minimum Rate"
-
msgid "Minimum hold time"
msgstr "Minimum hold time"
@@ -1825,6 +1911,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mode"
@@ -1883,9 +1972,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr "Multicast Rate"
-
msgid "Multicast address"
msgstr ""
@@ -1898,6 +1984,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2078,12 +2167,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Options"
@@ -2096,9 +2223,6 @@ msgstr "Out"
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr "Outdoor Channels"
-
msgid "Output Interface"
msgstr ""
@@ -2108,6 +2232,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2140,6 +2270,9 @@ msgstr "PID"
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2224,6 +2357,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2233,6 +2369,9 @@ msgstr "Perform reboot"
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2263,6 +2402,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2277,6 +2428,9 @@ msgstr "Prevents client-to-client communication"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Proceed"
@@ -2310,12 +2464,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2397,6 +2563,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2415,6 +2584,9 @@ msgstr "Receive"
msgid "Receiver Antenna"
msgstr "Receiver Antenna"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2424,9 +2596,6 @@ msgstr ""
msgid "References"
msgstr "References"
-msgid "Regulatory Domain"
-msgstr "Regulatory Domain"
-
msgid "Relay"
msgstr ""
@@ -2442,6 +2611,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Remove"
@@ -2463,9 +2635,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2510,6 +2702,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2599,9 +2797,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Separate Clients"
-msgid "Separate WDS"
-msgstr "Separate WDS"
-
msgid "Server Settings"
msgstr ""
@@ -2625,6 +2820,11 @@ msgstr ""
msgid "Services"
msgstr "Services"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2690,8 +2890,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2722,6 +2922,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2746,9 +2959,6 @@ msgstr "Static Leases"
msgid "Static Routes"
msgstr "Static Routes"
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2865,6 +3075,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2923,6 +3137,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3121,9 +3338,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Turbo Mode"
-
msgid "Tx-Power"
msgstr ""
@@ -3142,6 +3356,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3174,8 +3391,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3243,6 +3460,11 @@ msgstr "Used"
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3353,6 +3575,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3392,9 +3617,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "XR Support"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3405,7 +3627,7 @@ msgstr ""
"scripts like \"network\", your device might become inaccessible!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3496,6 +3718,9 @@ msgstr "local <abbr title=\"Domain Name System\">DNS</abbr> file"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3550,6 +3775,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
@@ -3571,6 +3799,48 @@ msgstr ""
msgid "« Back"
msgstr "« Back"
+#~ msgid "AR Support"
+#~ msgstr "AR Support"
+
+#~ msgid "Background Scan"
+#~ msgstr "Background Scan"
+
+#~ msgid "Compression"
+#~ msgstr "Compression"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Disable HW-Beacon timer"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Do not send probe responses"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Fast Frames"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Maximum Rate"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Minimum Rate"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Multicast Rate"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Outdoor Channels"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Regulatory Domain"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Separate WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbo Mode"
+
+#~ msgid "XR Support"
+#~ msgstr "XR Support"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "An additional network will be created if you leave this unchecked."
diff --git a/modules/luci-base/po/es/base.po b/modules/luci-base/po/es/base.po
index f69add2f9..82f082ca0 100644
--- a/modules/luci-base/po/es/base.po
+++ b/modules/luci-base/po/es/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Carga a 1 minuto:"
msgid "15 Minute Load:"
msgstr "Carga a 15 minutos:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Carga a 5 minutos:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
"<abbr title=\"Identificador de conjunto de servicios básicos\">BSSID</abbr>"
@@ -145,9 +172,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Soporte a AR"
-
msgid "ARP retry threshold"
msgstr "Umbral de reintento ARP"
@@ -285,6 +309,9 @@ msgid ""
msgstr ""
"Permitir respuestas en el rango 127.0.0.0/8, por ejemplo para servicios RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -293,9 +320,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -391,9 +415,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Estaciones asociadas"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Controlador inalámbrico 802.11%s Atheros"
-
msgid "Auth Group"
msgstr ""
@@ -403,6 +424,9 @@ msgstr ""
msgid "Authentication"
msgstr "Autentificación"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autorizado"
@@ -469,9 +493,6 @@ msgstr "Volver al resumen"
msgid "Back to scan results"
msgstr "Volver a resultados de la exploración"
-msgid "Background Scan"
-msgstr "Exploración en segundo plano"
-
msgid "Backup / Flash Firmware"
msgstr "Copia de seguridad / Grabar firmware"
@@ -500,9 +521,15 @@ msgstr ""
"esenciales base y los patrones de copia de seguridad definidos por el "
"usuario."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitrate"
@@ -571,6 +598,9 @@ msgstr "Comprobar"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Comprobación"
@@ -632,9 +662,6 @@ msgstr "Comando"
msgid "Common Configuration"
msgstr "Configuración común"
-msgid "Compression"
-msgstr "Compresión"
-
msgid "Configuration"
msgstr "Configuración"
@@ -855,12 +882,12 @@ msgstr "Desactivar configuración de DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Desactivar el temporizador de baliza hardware"
-
msgid "Disabled"
msgstr "Desactivar"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Descartar respuestas RFC1918 salientes"
@@ -901,15 +928,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "No retransmitir búsquedas inversas para redes locales"
-msgid "Do not send probe responses"
-msgstr "No enviar respuestas de prueba"
-
msgid "Domain required"
msgstr "Dominio requerido"
msgid "Domain whitelist"
msgstr "Lista blanca de dominios"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -982,6 +1009,9 @@ msgstr "Activar <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Activar actualización dinámica de punto final HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Activar negociación IPv6 en el enlace PPP"
@@ -1012,6 +1042,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Active este punto de montaje"
@@ -1024,6 +1057,11 @@ msgstr "Activar/Desactivar"
msgid "Enabled"
msgstr "Activado"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Activa el protocol STP en este puente"
@@ -1033,6 +1071,12 @@ msgstr "Modo de encapsulado"
msgid "Encryption"
msgstr "Encriptación"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Borrando..."
@@ -1067,6 +1111,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Servidor externo de registro del sistema"
@@ -1079,9 +1129,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Tramas rápidas"
-
msgid "File"
msgstr "Fichero"
@@ -1117,6 +1164,9 @@ msgstr "Terminar"
msgid "Firewall"
msgstr "Cortafuegos"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Configuración del cortafuegos"
@@ -1162,6 +1212,9 @@ msgstr "Forzar TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forzar TKIP y CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1193,6 +1246,11 @@ msgstr "Libre"
msgid "Free space"
msgstr "Espacio libre"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1252,6 +1310,9 @@ msgstr "Contraseña HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Manejador"
@@ -1310,6 +1371,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Dirección IP"
@@ -1352,6 +1416,9 @@ msgstr "Longitud de prefijo IPv4"
msgid "IPv4-Address"
msgstr "Dirección IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1400,6 +1467,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "Dirección IPv6"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-en-IPv4 (RFC4213)"
@@ -1552,6 +1622,9 @@ msgid "Invalid username and/or password! Please try again."
msgstr ""
"¡Nombre de usuario o contraseña no válidos!. Pruebe de nuevo, por favor."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1560,7 +1633,7 @@ msgstr ""
"Parece que está intentando grabar una imagen de firmware mayor que la "
"memoria flash de su equipo. ¡Por favor, verifique el archivo!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr "¡Se necesita JavaScript!"
msgid "Join Network"
@@ -1675,6 +1748,22 @@ msgstr ""
"Lista de servidores <abbr title=\"Domain Name System\">DNS</abbr> a los que "
"enviar solicitudes"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1687,6 +1776,9 @@ msgstr "Lista de máquinas que proporcionan resultados de dominio NX falsos"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr "Escucha solo en la interfaz dada o, si no se especifica, en todas"
@@ -1811,9 +1903,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Ratio Máximo"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Número máximo de cesiones DHCP activas"
@@ -1849,9 +1938,6 @@ msgstr "Uso de memoria (%)"
msgid "Metric"
msgstr "Métrica"
-msgid "Minimum Rate"
-msgstr "Ratio mínimo"
-
msgid "Minimum hold time"
msgstr "Pausa mínima de espera"
@@ -1864,6 +1950,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Extensión de protocolo faltante para %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Modo"
@@ -1922,9 +2011,6 @@ msgstr "Bajar"
msgid "Move up"
msgstr "Subir"
-msgid "Multicast Rate"
-msgstr "Ratio multicast"
-
msgid "Multicast address"
msgstr "Dirección multicast"
@@ -1937,6 +2023,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2116,12 +2205,50 @@ msgstr "Opción cambiada"
msgid "Option removed"
msgstr "Opción eliminada"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Opciones"
@@ -2134,9 +2261,6 @@ msgstr "Salida"
msgid "Outbound:"
msgstr "Saliente:"
-msgid "Outdoor Channels"
-msgstr "Canales al aire libre"
-
msgid "Output Interface"
msgstr ""
@@ -2146,6 +2270,12 @@ msgstr "Ignorar dirección MAC"
msgid "Override MTU"
msgstr "Ignorar MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2180,6 +2310,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2264,6 +2397,9 @@ msgstr "Pico:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2273,6 +2409,9 @@ msgstr "Rearrancar"
msgid "Perform reset"
msgstr "Reiniciar"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Ratio Phy:"
@@ -2303,6 +2442,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2319,6 +2470,9 @@ msgstr "Impide la comunicación cliente a cliente"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Controlador inalámbrico 802.11n Prism2/2.5/3"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Proceder"
@@ -2352,12 +2506,24 @@ msgstr "Introduzca una nueva red"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Calidad"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2451,6 +2617,9 @@ msgstr "Tráfico en tiempo real"
msgid "Realtime Wireless"
msgstr "Red inalámbrica en tiempo real"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Protección contra reasociación"
@@ -2469,6 +2638,9 @@ msgstr "Recibir"
msgid "Receiver Antenna"
msgstr "Antena Receptora"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Reconectar esta interfaz"
@@ -2478,9 +2650,6 @@ msgstr "Reconectando la interfaz"
msgid "References"
msgstr "Referencias"
-msgid "Regulatory Domain"
-msgstr "Dominio Regulador"
-
msgid "Relay"
msgstr "Relé"
@@ -2496,6 +2665,9 @@ msgstr "Puente relé"
msgid "Remote IPv4 address"
msgstr "Dirección IPv4 remota"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Desinstalar"
@@ -2517,9 +2689,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Necesario para ciertos ISPs, por ejemplo Charter con DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2564,6 +2756,12 @@ msgstr "Directorio raíz para los ficheros servidos por TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2655,9 +2853,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Aislar clientes"
-msgid "Separate WDS"
-msgstr "WDS aislado"
-
msgid "Server Settings"
msgstr "Configuración del servidor"
@@ -2681,6 +2876,11 @@ msgstr "Tipo de servicio"
msgid "Services"
msgstr "Servicios"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Sincronización horaria"
@@ -2745,15 +2945,14 @@ msgstr "Objeto no encontrado."
msgid "Sorry, the server encountered an unexpected error."
msgstr "El servidor encontró un error inesperado."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"No está instalado el soporte para el sysupgrade, la nueva imagen debe "
-"grabarse manualmente. Por favor, mire el wiki de OpenWrt para instrucciones "
-"de instalación específicas."
+"grabarse manualmente. Por favor, mire el wiki para instrucciones de "
+"instalación específicas."
msgid "Sort"
msgstr "Ordenar"
@@ -2788,6 +2987,19 @@ msgstr ""
"Especifica la cantidad de segundos a transcurrir hasta suponer muerta una "
"máquina"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Especifica la clave secreta de encriptado."
@@ -2812,9 +3024,6 @@ msgstr "Cesiones estáticas"
msgid "Static Routes"
msgstr "Rutas estáticas"
-msgid "Static WDS"
-msgstr "WDS estático"
-
msgid "Static address"
msgstr "Dirección estática"
@@ -2945,6 +3154,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"El prefijo IPv6 asignado por el proveedor, suele termina con <code>::</code>"
@@ -3013,6 +3226,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "Longitud del prefijo IPv6 en bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3231,9 +3447,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Modo Turbo"
-
msgid "Tx-Power"
msgstr "Potencia-TX"
@@ -3252,6 +3465,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "Dispositivo USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3284,12 +3500,12 @@ msgstr "Actualizar listas"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Suba una imagen compatible con sysupgrade para reemplazar el firmware "
"actual. Puede marcar \"Conservar la configuración\" si lo desea (es "
-"necesario que la imagen de OpenWrt sea compatible)."
+"necesario que la imagen sea compatible)."
msgid "Upload archive..."
msgstr "Subir archivo..."
@@ -3360,6 +3576,11 @@ msgstr "Usado"
msgid "Used Key Slot"
msgstr "Espacio de clave usado"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3470,6 +3691,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Red inalámbrica"
@@ -3509,9 +3733,6 @@ msgstr "Escribir las peticiones de DNS recibidas en el registro del sistema"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Soporte de XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3523,9 +3744,9 @@ msgstr ""
"inaccesible!.</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Debe activar Javascript en su navegador o LuCI no funcionará correctamente."
+"Debe activar JavaScript en su navegador o LuCI no funcionará correctamente."
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
@@ -3616,6 +3837,9 @@ msgstr "Archvo <abbr title=\"Domain Name System\">DNS</abbr> local"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3670,6 +3894,9 @@ msgstr ""
msgid "tagged"
msgstr "marcado"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "desconocido"
@@ -3691,6 +3918,54 @@ msgstr "sí"
msgid "« Back"
msgstr "« Volver"
+#~ msgid "AR Support"
+#~ msgstr "Soporte a AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Controlador inalámbrico 802.11%s Atheros"
+
+#~ msgid "Background Scan"
+#~ msgstr "Exploración en segundo plano"
+
+#~ msgid "Compression"
+#~ msgstr "Compresión"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Desactivar el temporizador de baliza hardware"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "No enviar respuestas de prueba"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Tramas rápidas"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Ratio Máximo"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Ratio mínimo"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Ratio multicast"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Canales al aire libre"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Dominio Regulador"
+
+#~ msgid "Separate WDS"
+#~ msgstr "WDS aislado"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS estático"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Modo Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Soporte de XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Se creará una red adicional si deja esto desmarcado."
diff --git a/modules/luci-base/po/fr/base.po b/modules/luci-base/po/fr/base.po
index b7d811962..4624ab74a 100644
--- a/modules/luci-base/po/fr/base.po
+++ b/modules/luci-base/po/fr/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Charge sur 1 minute :"
msgid "15 Minute Load:"
msgstr "Charge sur 15 minutes :"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Charge sur 5 minutes :"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -144,9 +171,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Gestion du mode AR"
-
msgid "ARP retry threshold"
msgstr "Niveau de ré-essai ARP"
@@ -291,6 +315,9 @@ msgstr ""
"Autorise les réponses de l'amont dans la plage 127.0.0.0/8, par ex. pour les "
"services RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -299,9 +326,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -397,9 +421,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Équipements associés"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Contrôleur sans fil Atheros 802.11%s "
-
msgid "Auth Group"
msgstr ""
@@ -409,6 +430,9 @@ msgstr ""
msgid "Authentication"
msgstr "Authentification"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritaire"
@@ -475,9 +499,6 @@ msgstr "Retour à la vue générale"
msgid "Back to scan results"
msgstr "Retour aux résultats de la recherche"
-msgid "Background Scan"
-msgstr "Recherche en arrière-plan"
-
msgid "Backup / Flash Firmware"
msgstr "Sauvegarde / Mise à jour du micrologiciel"
@@ -505,9 +526,15 @@ msgstr ""
"de configuration modifiés marqués par opkg, des fichiers de base essentiels, "
"et des motifs de sauvegarde définis par l'utilisateur."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Débit"
@@ -576,6 +603,9 @@ msgstr "Vérification"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Somme de contrôle"
@@ -639,9 +669,6 @@ msgstr "Commande"
msgid "Common Configuration"
msgstr "Configuration commune"
-msgid "Compression"
-msgstr "Compression"
-
msgid "Configuration"
msgstr "Configuration"
@@ -862,12 +889,12 @@ msgstr "Désactiver la configuration DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Désactiver l'émission périodique de balises wifi (« HW-Beacon »)"
-
msgid "Disabled"
msgstr "Désactivé"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Jeter les réponses en RFC1918 amont"
@@ -911,15 +938,15 @@ msgid "Do not forward reverse lookups for local networks"
msgstr ""
"Ne pas transmettre les requêtes de recherche inverse pour les réseaux locaux"
-msgid "Do not send probe responses"
-msgstr "Ne pas envoyer de réponses de test"
-
msgid "Domain required"
msgstr "Domaine nécessaire"
msgid "Domain whitelist"
msgstr "Liste blanche de domaines"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -992,6 +1019,9 @@ msgstr "Activer le protocole <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Activer la mise à jour dynamique de l'extrémité du tunnel chez HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Activer la négociation IPv6 sur le lien PPP"
@@ -1022,6 +1052,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Activer ce montage"
@@ -1034,6 +1067,11 @@ msgstr "Activer/Désactiver"
msgid "Enabled"
msgstr "Activé"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
"Activer le protocole <abbr title=\"Spanning Tree Protocol\">STP</abbr> sur "
@@ -1045,6 +1083,12 @@ msgstr "Mode encapsulé"
msgid "Encryption"
msgstr "Chiffrement"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Effacement…"
@@ -1079,6 +1123,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Serveur distant de journaux système"
@@ -1091,9 +1141,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Trames rapides"
-
msgid "File"
msgstr "Fichier"
@@ -1129,6 +1176,9 @@ msgstr "Terminer"
msgid "Firewall"
msgstr "Pare-feu"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Paramètres du pare-feu"
@@ -1174,6 +1224,9 @@ msgstr "Forcer TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forcer TKIP et CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1204,6 +1257,11 @@ msgstr "Libre"
msgid "Free space"
msgstr "Espace libre"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "Ghz"
@@ -1263,6 +1321,9 @@ msgstr "Mot de passe HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Gestionnaire"
@@ -1322,6 +1383,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Adresse IP"
@@ -1364,6 +1428,9 @@ msgstr "longueur du préfixe IPv4"
msgid "IPv4-Address"
msgstr "Adresse IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1412,6 +1479,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "Adresse IPv6"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6 dans IPv4 (RFC 4213)"
@@ -1562,6 +1632,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Nom d'utilisateur et/ou mot de passe invalides ! Réessayez !"
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1571,7 +1644,7 @@ msgstr ""
"tient pas dans sa mémoire flash, vérifiez s'il vous plait votre fichier-"
"image !"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr "Nécessite un Script Java !"
msgid "Join Network"
@@ -1686,6 +1759,22 @@ msgstr ""
"Liste des serveurs auquels sont transmis les requêtes <abbr title=\"Domain "
"Name System\">DNS</abbr>"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1699,6 +1788,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr "Écouter seulement sur l'interface spécifié, sinon sur toutes"
@@ -1825,9 +1917,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Débit maximum"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Nombre maximum de baux DHCP actifs"
@@ -1863,9 +1952,6 @@ msgstr "Utilisation Mémoire (%)"
msgid "Metric"
msgstr "Metrique"
-msgid "Minimum Rate"
-msgstr "Débit minimum"
-
msgid "Minimum hold time"
msgstr "Temps de maintien mimimum"
@@ -1878,6 +1964,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Extention de protocole manquante pour le proto %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mode"
@@ -1936,9 +2025,6 @@ msgstr "Descendre"
msgid "Move up"
msgstr "Monter"
-msgid "Multicast Rate"
-msgstr "Débit multidiffusion"
-
msgid "Multicast address"
msgstr "Adresse multidiffusion"
@@ -1951,6 +2037,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2129,12 +2218,50 @@ msgstr "Option modifiée"
msgid "Option removed"
msgstr "Option retirée"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Options"
@@ -2147,9 +2274,6 @@ msgstr "Sortie"
msgid "Outbound:"
msgstr "Extérieur :"
-msgid "Outdoor Channels"
-msgstr "Canaux en extérieur"
-
msgid "Output Interface"
msgstr ""
@@ -2159,6 +2283,12 @@ msgstr "Modifier l'adresse MAC"
msgid "Override MTU"
msgstr "Modifier le MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2193,6 +2323,9 @@ msgstr "PID"
msgid "PIN"
msgstr "code PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2277,6 +2410,9 @@ msgstr "Pic :"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2286,6 +2422,9 @@ msgstr "Redémarrer"
msgid "Perform reset"
msgstr "Réinitialiser"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Débit de la puce:"
@@ -2316,6 +2455,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2332,6 +2483,9 @@ msgstr "Empêche la communication directe entre clients"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Contrôleur sans fil Prism2/2.5/3 802.11b"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Continuer"
@@ -2365,12 +2519,24 @@ msgstr "Donner un nouveau réseau"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Qualitée"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2464,6 +2630,9 @@ msgstr "Trafic temps-réel"
msgid "Realtime Wireless"
msgstr "Qualité de réception actuelle"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Protection contre l'attaque « rebind »"
@@ -2482,6 +2651,9 @@ msgstr "Reçoit"
msgid "Receiver Antenna"
msgstr "Antenne émettrice"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Reconnecter cet interface"
@@ -2491,9 +2663,6 @@ msgstr "Reconnecte cet interface"
msgid "References"
msgstr "Références"
-msgid "Regulatory Domain"
-msgstr "Domaine de certification"
-
msgid "Relay"
msgstr "Relais"
@@ -2509,6 +2678,9 @@ msgstr "Pont-relais"
msgid "Remote IPv4 address"
msgstr "Adresse IPv4 distante"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Désinstaller"
@@ -2530,9 +2702,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Nécessaire avec certains FAIs, par ex. : Charter avec DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2577,6 +2769,12 @@ msgstr "Répertoire racine des fichiers fournis par TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2669,9 +2867,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Isoler les clients"
-msgid "Separate WDS"
-msgstr "WDS séparé"
-
msgid "Server Settings"
msgstr "Paramètres du serveur"
@@ -2695,6 +2890,11 @@ msgstr "Type du service"
msgid "Services"
msgstr "Services"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Configurer la synchronisation de l'heure"
@@ -2759,16 +2959,15 @@ msgstr "Désolé, l'objet que vous avez demandé n'as pas été trouvé."
msgid "Sorry, the server encountered an unexpected error."
msgstr "Désolé, le serveur à rencontré une erreur inattendue."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Désolé, il n'y a pas de gestion de mise à jour disponible, une nouvelle "
"image du micrologiciel doit être écrite manuellement. Reportez-vous S.V.P. "
-"au wiki OpenWrt pour connaître les instructions d'installation spécifiques à "
-"votre matériel."
+"au wiki pour connaître les instructions d'installation spécifiques à votre "
+"matériel."
msgid "Sort"
msgstr "Trier"
@@ -2800,6 +2999,19 @@ msgid ""
"dead"
msgstr "Indique le délai après quoi les hôtes seront supposés disparus"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Spécifiez ici la clé secrète de chiffrage."
@@ -2824,9 +3036,6 @@ msgstr "Baux Statiques"
msgid "Static Routes"
msgstr "Routes statiques"
-msgid "Static WDS"
-msgstr "WDS statique"
-
msgid "Static address"
msgstr "Adresse statique"
@@ -2956,6 +3165,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"Le préfixe IPv6 attribué par le fournisseur, se termine généralement par "
@@ -3024,6 +3237,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "La longueur du préfixe IPv6 en bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3249,9 +3465,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Mode Turbo"
-
msgid "Tx-Power"
msgstr "Puissance d'émission"
@@ -3270,6 +3483,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "Périphérique USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3302,13 +3518,13 @@ msgstr "Mettre les listes à jour"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Envoyer ici une image compatible avec le système de mise à jour pour "
"remplacer le micrologiciel actuel. Cochez \"Garder la configuration\" pour "
"maintenir la configuration actuelle (nécessite une image de micrologiciel "
-"OpenWRT compatible)."
+"compatible)."
msgid "Upload archive..."
msgstr "Envoi de l'archive…"
@@ -3379,6 +3595,11 @@ msgstr "Utilisé"
msgid "Used Key Slot"
msgstr "Clé utilisée"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3489,6 +3710,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Sans-fil"
@@ -3528,9 +3752,6 @@ msgstr "Écrire les requêtes DNS reçues dans syslog"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Gestion du mode XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3542,10 +3763,10 @@ msgstr ""
"\", votre équipement pourrait ne plus être accessible&#160;!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Vous devez activer Java Script dans votre navigateur pour que LuCI "
-"fonctionne correctement."
+"Vous devez activer JavaScript dans votre navigateur pour que LuCI fonctionne "
+"correctement."
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
@@ -3634,6 +3855,9 @@ msgstr "fichier de résolution local"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3688,6 +3912,9 @@ msgstr ""
msgid "tagged"
msgstr "marqué"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "inconnu"
@@ -3709,6 +3936,54 @@ msgstr "oui"
msgid "« Back"
msgstr "« Retour"
+#~ msgid "AR Support"
+#~ msgstr "Gestion du mode AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Contrôleur sans fil Atheros 802.11%s "
+
+#~ msgid "Background Scan"
+#~ msgstr "Recherche en arrière-plan"
+
+#~ msgid "Compression"
+#~ msgstr "Compression"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Désactiver l'émission périodique de balises wifi (« HW-Beacon »)"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Ne pas envoyer de réponses de test"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Trames rapides"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Débit maximum"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Débit minimum"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Débit multidiffusion"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Canaux en extérieur"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Domaine de certification"
+
+#~ msgid "Separate WDS"
+#~ msgstr "WDS séparé"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS statique"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Mode Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Gestion du mode XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Un réseau supplémentaire sera créé si vous laissé ceci décoché."
diff --git a/modules/luci-base/po/he/base.po b/modules/luci-base/po/he/base.po
index 71fe9ce7c..cf12a03b5 100644
--- a/modules/luci-base/po/he/base.po
+++ b/modules/luci-base/po/he/base.po
@@ -41,18 +41,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "עומס במשך דקה:"
msgid "15 Minute Load:"
msgstr "עומס במשך רבע שעה:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "עומס במשך 5 דקות:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
@@ -134,9 +161,6 @@ msgstr ""
msgid "APN"
msgstr ""
-msgid "AR Support"
-msgstr "תמיכת AR"
-
#, fuzzy
msgid "ARP retry threshold"
msgstr "סף נסיונות של ARP"
@@ -278,6 +302,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -286,9 +313,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -386,9 +410,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "תחנות קשורות"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "שלט ×לחוטי Atheros 802.11%s"
-
msgid "Auth Group"
msgstr ""
@@ -398,6 +419,9 @@ msgstr ""
msgid "Authentication"
msgstr "×ימות"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "מוסמך"
@@ -464,9 +488,6 @@ msgstr "חזרה לסקירה"
msgid "Back to scan results"
msgstr "חזרה לתוצ×ות סריקה"
-msgid "Background Scan"
-msgstr "סריקת רקע"
-
msgid "Backup / Flash Firmware"
msgstr "גיבוי / קושחת פל×ש"
@@ -494,9 +515,15 @@ msgstr ""
"×”×ž×¡×•×ž× ×™× ×‘ opkg ×Open PacKaGe Managementׂ, קבצי בסיס ×—×™×•× ×™×™× ×•×ª×‘× ×™×•×ª הגיבוי "
"המוגדרות ע\"י המשתמש."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -566,6 +593,9 @@ msgstr "לבדוק"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -616,9 +646,6 @@ msgstr "פקודה"
msgid "Common Configuration"
msgstr "הגדרות נפוצות"
-msgid "Compression"
-msgstr "דחיסה"
-
msgid "Configuration"
msgstr "הגדרות"
@@ -836,10 +863,10 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
+msgid "Disabled"
msgstr ""
-msgid "Disabled"
+msgid "Disabled (default)"
msgstr ""
msgid "Discard upstream RFC1918 responses"
@@ -876,15 +903,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr ""
-
msgid "Domain required"
msgstr ""
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -952,6 +979,9 @@ msgstr "×פשר <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -982,6 +1012,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -994,6 +1027,11 @@ msgstr ""
msgid "Enabled"
msgstr "×פשר"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -1003,6 +1041,12 @@ msgstr ""
msgid "Encryption"
msgstr "הצפנה"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "מוחק..."
@@ -1034,6 +1078,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1046,9 +1096,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr ""
-
msgid "File"
msgstr ""
@@ -1084,6 +1131,9 @@ msgstr ""
msgid "Firewall"
msgstr ""
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr ""
@@ -1129,6 +1179,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1159,6 +1212,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1216,6 +1274,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1271,6 +1332,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr ""
@@ -1313,6 +1377,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr ""
@@ -1361,6 +1428,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1500,12 +1570,15 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "×©× ×ž×©×ª×ž×© ו/×ו סיסמה שגויי×! ×× × × ×¡×” שנית."
+msgid "Isolate Clients"
+msgstr ""
+
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr ""
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1618,6 +1691,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1630,6 +1719,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1747,9 +1839,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr ""
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1785,9 +1874,6 @@ msgstr ""
msgid "Metric"
msgstr ""
-msgid "Minimum Rate"
-msgstr ""
-
msgid "Minimum hold time"
msgstr ""
@@ -1800,6 +1886,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr ""
@@ -1856,9 +1945,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr ""
-
msgid "Multicast address"
msgstr ""
@@ -1871,6 +1957,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2045,12 +2134,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -2063,9 +2190,6 @@ msgstr ""
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2075,6 +2199,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2107,6 +2237,9 @@ msgstr ""
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2191,6 +2324,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2200,6 +2336,9 @@ msgstr ""
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2230,6 +2369,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2244,6 +2395,9 @@ msgstr ""
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr ""
@@ -2277,12 +2431,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr ""
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2365,6 +2531,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2383,6 +2552,9 @@ msgstr ""
msgid "Receiver Antenna"
msgstr ""
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2392,9 +2564,6 @@ msgstr ""
msgid "References"
msgstr ""
-msgid "Regulatory Domain"
-msgstr ""
-
msgid "Relay"
msgstr ""
@@ -2410,6 +2579,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr ""
@@ -2431,9 +2603,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2478,6 +2670,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2565,9 +2763,6 @@ msgstr ""
msgid "Separate Clients"
msgstr ""
-msgid "Separate WDS"
-msgstr ""
-
msgid "Server Settings"
msgstr ""
@@ -2591,6 +2786,11 @@ msgstr ""
msgid "Services"
msgstr "שירותי×"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "סנכרון זמן"
@@ -2655,14 +2855,13 @@ msgstr "סליחה, ×ך ×”×ובייקט שביקשת ×ינו נמצ×."
msgid "Sorry, the server encountered an unexpected error."
msgstr "סליחה, השרת נתקל בשגי××” ×œ× ×¦×¤×•×™×”."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"סליחה, ×ין תמיכה בעדכון מערכת, ולכן קושחה חדשה חייבת להיצרב ידנית. ×× × ×¤× ×” "
-"×ל ×”-wiki של OpenWrt עבור הור×ות ספציפיות למכשיר שלך."
+"×ל ×”-wiki של OpenWrt/LEDE עבור הור×ות ספציפיות למכשיר שלך."
msgid "Sort"
msgstr "מיין"
@@ -2692,6 +2891,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2716,9 +2928,6 @@ msgstr "הקצ×ות סטטיות"
msgid "Static Routes"
msgstr "× ×™×ª×•×‘×™× ×¡×˜×˜×™×™×"
-msgid "Static WDS"
-msgstr "WDS סטטי"
-
msgid "Static address"
msgstr "כתובת סטטית"
@@ -2838,6 +3047,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2892,6 +3105,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3080,9 +3296,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr ""
-
msgid "Tx-Power"
msgstr "עוצמת שידור"
@@ -3101,6 +3314,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3133,8 +3349,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3202,6 +3418,11 @@ msgstr ""
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3310,6 +3531,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3349,9 +3573,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr ""
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3359,8 +3580,8 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
-msgstr "×תה חייב להפעיל ×ת Java Script בדפדפן שלך; ×חרת, LuCI ×œ× ×™×¤×¢×œ כר×וי."
+"You must enable JavaScript in your browser or LuCI will not work properly."
+msgstr "×תה חייב להפעיל ×ת JavaScript בדפדפן שלך; ×חרת, LuCI ×œ× ×™×¤×¢×œ כר×וי."
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
@@ -3448,6 +3669,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3502,6 +3726,9 @@ msgstr ""
msgid "tagged"
msgstr "מתויג"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
@@ -3523,6 +3750,21 @@ msgstr "כן"
msgid "« Back"
msgstr "<< ×חורה"
+#~ msgid "AR Support"
+#~ msgstr "תמיכת AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "שלט ×לחוטי Atheros 802.11%s"
+
+#~ msgid "Background Scan"
+#~ msgstr "סריקת רקע"
+
+#~ msgid "Compression"
+#~ msgstr "דחיסה"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS סטטי"
+
#, fuzzy
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "רשת נוספת תווצר ×× ×ª×©×יר ×ת ×–×” ×œ× ×ž×¡×•×ž×Ÿ"
diff --git a/modules/luci-base/po/hu/base.po b/modules/luci-base/po/hu/base.po
index 4ce03515d..a0605f295 100644
--- a/modules/luci-base/po/hu/base.po
+++ b/modules/luci-base/po/hu/base.po
@@ -41,18 +41,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Terhelés (utolsó 1 perc):"
msgid "15 Minute Load:"
msgstr "Terhelés (utolsó 15 perc):"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Terhelés (utolsó 5 perc):"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -141,9 +168,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "AR Támogatás"
-
msgid "ARP retry threshold"
msgstr "ARP újrapróbálkozási küszöbérték"
@@ -284,6 +308,9 @@ msgstr ""
"A 127.0.0.0/8-as tartományba eső DNS válaszok engedélyezése (pl. RBL "
"szervizek)"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -292,9 +319,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -390,9 +414,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Kapcsolódó kliensek"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s vezeték-nélküli vezérlő"
-
msgid "Auth Group"
msgstr ""
@@ -402,6 +423,9 @@ msgstr ""
msgid "Authentication"
msgstr "Hitelesítés"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Hiteles"
@@ -468,9 +492,6 @@ msgstr "Vissza az áttekintéshez"
msgid "Back to scan results"
msgstr "Vissza a felderítési eredményekhez"
-msgid "Background Scan"
-msgstr "Felderítés a háttérben"
-
msgid "Backup / Flash Firmware"
msgstr "Mentés / Firmware frissítés"
@@ -499,9 +520,15 @@ msgstr ""
"fájlokból valamint a felhasználó által megadott mintáknak megfelelő "
"fájlokból áll."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitráta"
@@ -571,6 +598,9 @@ msgstr "Ellenőrzés"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Ellenőrző összeg"
@@ -634,9 +664,6 @@ msgstr "Parancs"
msgid "Common Configuration"
msgstr "Ãlatános beállítás"
-msgid "Compression"
-msgstr "Tömörítés"
-
msgid "Configuration"
msgstr "Beállítás"
@@ -856,12 +883,12 @@ msgstr "DNS beállítás letiltása"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Hardveres beacon időzítő letiltása"
-
msgid "Disabled"
msgstr "Letiltva"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Beérkező RFC1918 DHCP válaszok elvetése. "
@@ -902,15 +929,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Ne továbbítson fordított keresési kéréseket a helyi hálózathoz"
-msgid "Do not send probe responses"
-msgstr "Ne válaszoljon a szondázásra"
-
msgid "Domain required"
msgstr "Tartomány szükséges"
msgid "Domain whitelist"
msgstr "Tartomány fehérlista"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -985,6 +1012,9 @@ msgstr "<abbr title=\"Spanning Tree Protocol\">STP</abbr> engedélyezése"
msgid "Enable HE.net dynamic endpoint update"
msgstr "HE.net dinamikus végpont frissítésének engedélyezése"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "IPv6 egyeztetés engedélyezése a PPP linken"
@@ -1015,6 +1045,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "A csatolás engedélyezése"
@@ -1027,6 +1060,11 @@ msgstr "Engedélyezés/Letiltás"
msgid "Enabled"
msgstr "Engedélyezve"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "A Spanning Tree prokoll engedélyezése erre a hídra"
@@ -1036,6 +1074,12 @@ msgstr "Beágyazási mód"
msgid "Encryption"
msgstr "Titkosítás"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Törlés..."
@@ -1068,6 +1112,12 @@ msgstr "A bérelt címek lejárati ideje, a minimális érték 2 perc."
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Külső rendszernapló kiszolgáló"
@@ -1080,9 +1130,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Gyors keretek"
-
msgid "File"
msgstr "Fájl"
@@ -1118,6 +1165,9 @@ msgstr "Befejezés"
msgid "Firewall"
msgstr "Tűzfal"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Tűzfal Beállítások"
@@ -1165,6 +1215,9 @@ msgstr "TKIP kényszerítése"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIP és CCMP (AES) kényszerítése"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1195,6 +1248,11 @@ msgstr "Szabad"
msgid "Free space"
msgstr "Szabad hely"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1252,6 +1310,9 @@ msgstr "HE.net jelszó"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Kezelő"
@@ -1311,6 +1372,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP cím"
@@ -1353,6 +1417,9 @@ msgstr "IPv4 prefix hossza"
msgid "IPv4-Address"
msgstr "IPv4-cím"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1401,6 +1468,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-cím"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6 IPv4-ben (RFC4213)"
@@ -1552,6 +1622,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Érvénytelen felhasználói név és/vagy jelszó! Kérem próbálja újra!"
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1560,8 +1633,8 @@ msgstr ""
"Úgy tűnik, hogy a flash-elendő kép-file nem fér el a Flash-memóriába. Kérem "
"ellenőrizze a kép fájlt!"
-msgid "Java Script required!"
-msgstr "Javascript szükséges!"
+msgid "JavaScript required!"
+msgstr "JavaScript szükséges!"
msgid "Join Network"
msgstr "Csatlakozás a hálózathoz"
@@ -1675,6 +1748,22 @@ 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 R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1687,6 +1776,9 @@ msgstr "A hamis NX tartomány eredményeket szolgáltató gépek listája"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"Csak a megadott interfészen hallgat, vagy az összesen, amennyiben nem adja "
@@ -1814,9 +1906,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Maximális sebesség"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Aktív DHCP bérletek maximális száma"
@@ -1852,9 +1941,6 @@ msgstr "Memória használat (%)"
msgid "Metric"
msgstr "Metrika"
-msgid "Minimum Rate"
-msgstr "Minimális sebesség"
-
msgid "Minimum hold time"
msgstr "Minimális tartási idő"
@@ -1867,6 +1953,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Hiányzó protokoll kiterjesztés a %q progokoll számára"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mód"
@@ -1925,9 +2014,6 @@ msgstr "Mozgatás lefelé"
msgid "Move up"
msgstr "Mozgatás felfelé"
-msgid "Multicast Rate"
-msgstr "Multicast sebesség"
-
msgid "Multicast address"
msgstr "Multicast cím"
@@ -1940,6 +2026,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2119,12 +2208,50 @@ msgstr "Beállítás módosítva"
msgid "Option removed"
msgstr "Beállítás eltávolítva"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Lehetőségek"
@@ -2137,9 +2264,6 @@ msgstr "Ki"
msgid "Outbound:"
msgstr "Kimenő:"
-msgid "Outdoor Channels"
-msgstr "Kültéri csatornák"
-
msgid "Output Interface"
msgstr ""
@@ -2149,6 +2273,12 @@ msgstr "MAC cím felülbírálása"
msgid "Override MTU"
msgstr "MTU felülbíráslás"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2183,6 +2313,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2267,6 +2400,9 @@ msgstr "Csúcs:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2276,6 +2412,9 @@ msgstr "Újraindítás végrehajtása"
msgid "Perform reset"
msgstr "Visszaállítás végrehajtása"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Phy sebesség:"
@@ -2306,6 +2445,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2322,6 +2473,9 @@ msgstr "Ügyfél-ügyfél közötti kommunikáció megakadályozása"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b vezeték nélküli vezérlő"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Folytatás"
@@ -2355,12 +2509,24 @@ msgstr "Új hálózat nyújtása"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Ãl Ad-hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Minőség"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2455,6 +2621,9 @@ msgstr "Valósidejű forgalom"
msgid "Realtime Wireless"
msgstr "Valósidejű vezetéknélküli adatok"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Rebind elleni védelem"
@@ -2473,6 +2642,9 @@ msgstr "Fogadás"
msgid "Receiver Antenna"
msgstr "Vevő antenna"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Csatlakoztassa újra az interfészt"
@@ -2482,9 +2654,6 @@ msgstr "Interfész újracsatlakoztatása"
msgid "References"
msgstr "Hivatkozások"
-msgid "Regulatory Domain"
-msgstr "Szabályozó tartomány"
-
msgid "Relay"
msgstr "Ãtjátszás"
@@ -2500,6 +2669,9 @@ msgstr "Ãtjátszó híd"
msgid "Remote IPv4 address"
msgstr "Távoli IPv4 cím"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Eltávolítás"
@@ -2521,10 +2693,30 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
"Szükséges bizonyos internetszolgáltatók esetén, pl. Charter 'DOCSIS 3'-al"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2569,6 +2761,12 @@ msgstr "TFTP-n keresztül megosztott fájlok gyökérkönyvtára"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2660,9 +2858,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Kliensek szétválasztása"
-msgid "Separate WDS"
-msgstr "WDS szétválasztása"
-
msgid "Server Settings"
msgstr "Kiszolgáló beállításai"
@@ -2686,6 +2881,11 @@ msgstr "Szolgáltatás típusa"
msgid "Services"
msgstr "Szolgáltatások"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Idő szinkronizálás beállítása"
@@ -2750,15 +2950,14 @@ msgstr "Sajnálom, a kért objektum nem található."
msgid "Sorry, the server encountered an unexpected error."
msgstr "Sajnálom, a szerver váratlan hibát észlelt."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Sajnáljuk, a 'sysupgrade' támogatás nem elérhető, az új firmware fájl "
"telepítését manuálisan kell elvégezni. Az eszközhöz tartozó telepítési "
-"utasításokért keresse fel az OpenWrt wiki-t."
+"utasításokért keresse fel az wiki-t."
msgid "Sort"
msgstr "Sorbarendezés"
@@ -2791,6 +2990,19 @@ msgid ""
msgstr ""
"Megadja a másodpercek számát, amik után a host nem elérhetőnek tekinthető"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Itt adja meg a titkosító kulcsot."
@@ -2815,9 +3027,6 @@ msgstr "Statikus bérletek"
msgid "Static Routes"
msgstr "Statikus útvonalak"
-msgid "Static WDS"
-msgstr "Statikus WDS"
-
msgid "Static address"
msgstr "Statikus cím"
@@ -2946,6 +3155,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"A szolgáltatóhoz rendelt IPv6 előtag, általában így végződik: <code>::</code>"
@@ -3015,6 +3228,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "Az IPv6 előtag hossza bitekben"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3237,9 +3453,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Turbó mód"
-
msgid "Tx-Power"
msgstr "Adóteljesítmény"
@@ -3258,6 +3471,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB eszköz"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3290,13 +3506,12 @@ msgstr "Listák frissítése"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Itt tölthet fel egy új sysupgrade-kompatibilis képet a futó firmware "
"lecseréléséhez. A jelenlegi beállítások megtartásához jelölje be a "
-"\"Beállítások megtartása\" négyzetet (OpenWrt-vel kompatibilis firmware kép "
-"szükséges)."
+"\"Beállítások megtartása\" négyzetet (kompatibilis firmware kép szükséges)."
msgid "Upload archive..."
msgstr "Archívum feltöltése..."
@@ -3367,6 +3582,11 @@ msgstr "Használt"
msgid "Used Key Slot"
msgstr "Használt kulcsindex"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3477,6 +3697,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Vezetéknélküli rész"
@@ -3516,9 +3739,6 @@ msgstr "A kapott DNS kéréseket írja a rendszernaplóba"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "XR támogatás"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3530,7 +3750,7 @@ msgstr ""
"esetén, az eszköz elérhetetlenné válhat!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
"Engélyezze a Java Szkripteket a böngészőjében, mert anélkül a LuCI nem fog "
"megfelelően működni."
@@ -3623,6 +3843,9 @@ msgstr "helyi <abbr title=\"Domain Name System\">DNS</abbr> fájl"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3677,6 +3900,9 @@ msgstr ""
msgid "tagged"
msgstr "cimkézett"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "ismeretlen"
@@ -3698,6 +3924,54 @@ msgstr "igen"
msgid "« Back"
msgstr "« Vissza"
+#~ msgid "AR Support"
+#~ msgstr "AR Támogatás"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s vezeték-nélküli vezérlő"
+
+#~ msgid "Background Scan"
+#~ msgstr "Felderítés a háttérben"
+
+#~ msgid "Compression"
+#~ msgstr "Tömörítés"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Hardveres beacon időzítő letiltása"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Ne válaszoljon a szondázásra"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Gyors keretek"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Maximális sebesség"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Minimális sebesség"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Multicast sebesség"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Kültéri csatornák"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Szabályozó tartomány"
+
+#~ msgid "Separate WDS"
+#~ msgstr "WDS szétválasztása"
+
+#~ msgid "Static WDS"
+#~ msgstr "Statikus WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbó mód"
+
+#~ msgid "XR Support"
+#~ msgstr "XR támogatás"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Amennyiben ezt jelöletlenül hagyja, egy további hálózat jön létre"
diff --git a/modules/luci-base/po/it/base.po b/modules/luci-base/po/it/base.po
index db7c4b4aa..c05994f49 100644
--- a/modules/luci-base/po/it/base.po
+++ b/modules/luci-base/po/it/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Carico in 1 minuto:"
msgid "15 Minute Load:"
msgstr "Carico in 15 minut:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Carico in 5 minuti:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
"<abbr title=\"Servizio basilare di impostazione Identificatore\">BSSID</abbr>"
@@ -146,9 +173,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Supporto AR"
-
msgid "ARP retry threshold"
msgstr "riprova soglia ARP"
@@ -291,6 +315,9 @@ msgstr ""
"Permetti le risposte upstream nell'intervallo 127.0.0.0/8, per esempio nei "
"servizi RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -299,9 +326,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -397,9 +421,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Dispositivi Wi-Fi connessi"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Dispositivo Wireless Atheros 802.11%s"
-
msgid "Auth Group"
msgstr ""
@@ -409,6 +430,9 @@ msgstr ""
msgid "Authentication"
msgstr "Autenticazione PEAP"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritativo"
@@ -475,9 +499,6 @@ msgstr "Ritorna alla panoramica"
msgid "Back to scan results"
msgstr "Ritorno ai risultati della scansione"
-msgid "Background Scan"
-msgstr "Scansione in background"
-
msgid "Backup / Flash Firmware"
msgstr "Copia di Sicurezza / Flash Firmware"
@@ -505,9 +526,15 @@ msgstr ""
"composta dai file di configurazione modificati installati da opkg, file di "
"base essenziali e i file di backup definiti dall'utente."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitrate"
@@ -576,6 +603,9 @@ msgstr "Verifica"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -637,9 +667,6 @@ msgstr "Comando"
msgid "Common Configuration"
msgstr "Configurazioni Comuni"
-msgid "Compression"
-msgstr "Compressione"
-
msgid "Configuration"
msgstr "Configurazione"
@@ -860,12 +887,12 @@ msgstr "Disabilita il setup dei DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Disabilita Timer Beacon HW"
-
msgid "Disabled"
msgstr "Disabilitato"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Ignora risposte RFC1918 upstream"
@@ -905,15 +932,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Non proseguire con le ricerche inverse per le reti locali."
-msgid "Do not send probe responses"
-msgstr "Disabilita Probe-Responses"
-
msgid "Domain required"
msgstr "Dominio richiesto"
msgid "Domain whitelist"
msgstr "Elenco Domini consentiti"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -986,6 +1013,9 @@ msgstr "Abilita <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Abilitazione aggiornamento endpoint dinamico HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Attiva la negoziazione IPv6 sul collegamento PPP"
@@ -1016,6 +1046,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Abilita questo mount"
@@ -1028,6 +1061,11 @@ msgstr "Abilita/Disabilita"
msgid "Enabled"
msgstr "Abilitato"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Abilita il protocollo di Spanning Tree su questo bridge"
@@ -1037,6 +1075,12 @@ msgstr "Modalità di incapsulamento"
msgid "Encryption"
msgstr "Crittografia"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Cancellazione..."
@@ -1070,6 +1114,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Server Log di Sistema esterno"
@@ -1082,9 +1132,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Frame veloci"
-
msgid "File"
msgstr "File"
@@ -1120,6 +1167,9 @@ msgstr "Fine"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Impostazioni Firewall"
@@ -1165,6 +1215,9 @@ msgstr "Forza TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forza TKIP e CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1195,6 +1248,11 @@ msgstr "Disponibile"
msgid "Free space"
msgstr "Spazio libero"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1254,6 +1312,9 @@ msgstr "Password HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Gestore"
@@ -1314,6 +1375,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Indirizzo IP"
@@ -1356,6 +1420,9 @@ msgstr "Lunghezza prefisso IPv4"
msgid "IPv4-Address"
msgstr "Indirizzo-IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1404,6 +1471,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "Indirizzo-IPv6"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1554,6 +1624,9 @@ msgstr "ID VLAN non valido! Solo gli ID unici sono consentiti"
msgid "Invalid username and/or password! Please try again."
msgstr "Username o password non validi! Per favore riprova."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1562,8 +1635,8 @@ msgstr ""
"Sembra tu stia provando a flashare un'immagine più grande delle dimensioni "
"della memoria flash, per favore controlla il file!"
-msgid "Java Script required!"
-msgstr "Richiesto Java Script!"
+msgid "JavaScript required!"
+msgstr "Richiesto JavaScript!"
msgid "Join Network"
msgstr "Aggiungi Rete"
@@ -1677,6 +1750,22 @@ msgstr ""
"Elenco di Server <abbr title=\"Sistema Nome Dimio\">DNS</abbr>a cui "
"inoltrare le richieste in"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1689,6 +1778,9 @@ msgstr "Elenco degli host che forniscono falsi risultati di dominio NX"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr "Ascolta solo l'interfaccia data o, se non specificato, su tutte"
@@ -1812,9 +1904,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Velocità massima"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1850,9 +1939,6 @@ msgstr "Uso Memory (%)"
msgid "Metric"
msgstr "Metrica"
-msgid "Minimum Rate"
-msgstr "Velocità minima"
-
msgid "Minimum hold time"
msgstr "Velocità minima"
@@ -1865,6 +1951,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Modalità"
@@ -1923,9 +2012,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr "Velocità multicast"
-
msgid "Multicast address"
msgstr ""
@@ -1938,6 +2024,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2117,12 +2206,50 @@ msgstr "Opzione cambiata"
msgid "Option removed"
msgstr "Opzione cancellata"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Opzioni"
@@ -2135,9 +2262,6 @@ msgstr ""
msgid "Outbound:"
msgstr "In uscita:"
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2147,6 +2271,12 @@ msgstr ""
msgid "Override MTU"
msgstr "Sovrascivi MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2179,6 +2309,9 @@ msgstr "PID"
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2263,6 +2396,9 @@ msgstr "Picco:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2272,6 +2408,9 @@ msgstr "Esegui un riavvio"
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2302,6 +2441,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2316,6 +2467,9 @@ msgstr "Impedisci la comunicazione fra Client"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Continuare"
@@ -2349,12 +2503,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2439,6 +2605,9 @@ msgstr "Traffico in tempo reale"
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2457,6 +2626,9 @@ msgstr "Ricezione"
msgid "Receiver Antenna"
msgstr "Antenna ricevente"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Ricollega questa interfaccia"
@@ -2466,9 +2638,6 @@ msgstr "Sto ricollegando l'interfaccia"
msgid "References"
msgstr ""
-msgid "Regulatory Domain"
-msgstr ""
-
msgid "Relay"
msgstr ""
@@ -2484,6 +2653,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Rimuovi"
@@ -2505,9 +2677,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2552,6 +2744,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2641,9 +2839,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Isola utenti"
-msgid "Separate WDS"
-msgstr "WDS separati"
-
msgid "Server Settings"
msgstr ""
@@ -2667,6 +2862,11 @@ msgstr ""
msgid "Services"
msgstr "Servizi"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2730,16 +2930,15 @@ msgstr "Siamo spiacenti, l'oggetto che hai richiesto non è stato trovato."
msgid "Sorry, the server encountered an unexpected error."
msgstr "Spiacente, il server ha rilevato un errore imprevisto."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Spiacenti, non è presente alcun supporto sysupgrade, una nuova immagine "
"firmware deve essere memorizzata (Flash) manualmente. Si prega di fare "
-"riferimento al wiki di OpenWrt per le istruzioni di installazione di "
-"dispositivi specifici."
+"riferimento al wiki per le istruzioni di installazione di dispositivi "
+"specifici."
msgid "Sort"
msgstr "Elenca"
@@ -2773,6 +2972,19 @@ msgstr ""
"Specifica la quantità massima di secondi dopo di che si presume che gli host "
"siano morti."
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Specificare la chiave di cifratura qui."
@@ -2797,9 +3009,6 @@ msgstr "Leases statici"
msgid "Static Routes"
msgstr "Instradamenti Statici"
-msgid "Static WDS"
-msgstr "WDS statico"
-
msgid "Static address"
msgstr "Indirizzo Statico"
@@ -2929,6 +3138,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"Il prefisso IPv6 assegnati dal provider, si conclude di solito con <code>::</"
@@ -2988,6 +3201,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3188,9 +3404,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Modalità turbo"
-
msgid "Tx-Power"
msgstr ""
@@ -3209,6 +3422,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3241,13 +3457,12 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Carica un'immagine sysupgrade compatibile quì per sostituire il firmware in "
"esecuzione. Attivare la spunta \"Mantieni Impostazioni\" per mantenere la "
-"configurazione corrente (richiede un immagine del firmware OpenWrt "
-"compatibile)."
+"configurazione corrente (richiede un immagine del firmware compatibile)."
msgid "Upload archive..."
msgstr "Carica archivio..."
@@ -3318,6 +3533,11 @@ msgstr "Usato"
msgid "Used Key Slot"
msgstr "Slot Chiave Usata"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3428,6 +3648,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Wireless"
@@ -3467,9 +3690,6 @@ msgstr "Scrittura delle richiesta DNS ricevute nel syslog"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Supporto XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3482,9 +3702,9 @@ msgstr ""
"potrebbe diventare inaccessibile!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"È necessario attivare Java Script nel tuo browser o LuCI non funzionerà "
+"È necessario attivare JavaScript nel tuo browser o LuCI non funzionerà "
"correttamente."
msgid ""
@@ -3576,6 +3796,9 @@ msgstr "File <abbr title=\"Sistema Nome Dominio\">DNS</abbr> locale"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3630,6 +3853,9 @@ msgstr ""
msgid "tagged"
msgstr "etichettato"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "sconosciuto"
@@ -3651,6 +3877,48 @@ msgstr "Sì"
msgid "« Back"
msgstr "« Indietro"
+#~ msgid "AR Support"
+#~ msgstr "Supporto AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Dispositivo Wireless Atheros 802.11%s"
+
+#~ msgid "Background Scan"
+#~ msgstr "Scansione in background"
+
+#~ msgid "Compression"
+#~ msgstr "Compressione"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Disabilita Timer Beacon HW"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Disabilita Probe-Responses"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Frame veloci"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Velocità massima"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Velocità minima"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Velocità multicast"
+
+#~ msgid "Separate WDS"
+#~ msgstr "WDS separati"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS statico"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Modalità turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Supporto XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Sarà creata una rete aggiuntiva se lasci questo senza spunta."
diff --git a/modules/luci-base/po/ja/base.po b/modules/luci-base/po/ja/base.po
index d2a953f0a..91d9e1bdd 100644
--- a/modules/luci-base/po/ja/base.po
+++ b/modules/luci-base/po/ja/base.po
@@ -1,20 +1,20 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-10 03:40+0200\n"
-"PO-Revision-Date: 2013-10-06 02:29+0200\n"
-"Last-Translator: Kentaro <kentaro.matsuyama@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-04-03 02:32+0900\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 2.0\n"
+"Language-Team: \n"
msgid "%s is untagged in multiple VLANs!"
-msgstr ""
+msgstr "%s ã¯è¤‡æ•°ã®VLANã«Untaggedã—ã¦ã„ã¾ã™!"
msgid "(%d minute window, %d second interval)"
msgstr "(%d 分幅, %d 秒間隔)"
@@ -38,10 +38,13 @@ msgid "-- custom --"
msgstr "-- 手動設定 --"
msgid "-- match by device --"
-msgstr ""
+msgstr "-- デãƒã‚¤ã‚¹ã‚’指定 --"
msgid "-- match by label --"
-msgstr ""
+msgstr "-- ラベルを指定 --"
+
+msgid "-- match by uuid --"
+msgstr "-- UUIDを指定 --"
msgid "1 Minute Load:"
msgstr "éŽåŽ»1分ã®è² è·:"
@@ -49,12 +52,36 @@ msgstr "éŽåŽ»1分ã®è² è·:"
msgid "15 Minute Load:"
msgstr "éŽåŽ»15分ã®è² è·:"
-msgid "464XLAT (CLAT)"
+msgid "4-character hexadecimal ID"
msgstr ""
+msgid "464XLAT (CLAT)"
+msgstr "464XLAT (CLAT)"
+
msgid "5 Minute Load:"
msgstr "éŽåŽ»5分ã®è² è·:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr "802.11r 高速ローミング"
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr "802.11w アソシエーションSAクエリã®æœ€å¤§ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆæ™‚é–“ã§ã™ã€‚"
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr "802.11w アソシエーションSAクエリã®å†è©¦è¡Œã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆæ™‚é–“ã§ã™ã€‚"
+
+msgid "802.11w Management Frame Protection"
+msgstr "802.11w 管ç†ãƒ•ãƒ¬ãƒ¼ãƒ ä¿è­·"
+
+msgid "802.11w maximum timeout"
+msgstr "802.11w 最大タイムアウト"
+
+msgid "802.11w retry timeout"
+msgstr "802.11w å†è©¦è¡Œã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆ"
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -95,6 +122,7 @@ msgstr "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-ゲートウェã
msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)"
msgstr ""
+"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-サフィックス (16進数)"
msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Configuration"
msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr> 設定"
@@ -132,7 +160,7 @@ msgid "A43C + J43 + A43 + V43"
msgstr ""
msgid "ADSL"
-msgstr ""
+msgstr "ADSL"
msgid "AICCU (SIXXS)"
msgstr ""
@@ -143,9 +171,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "ARサãƒãƒ¼ãƒˆ"
-
msgid "ARP retry threshold"
msgstr "ARPå†è©¦è¡Œã—ãã„値"
@@ -200,7 +225,7 @@ msgstr ""
"稼åƒä¸­ã® <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-経路情報"
msgid "Active Connections"
-msgstr "アクティブコãƒã‚¯ã‚·ãƒ§ãƒ³"
+msgstr "アクティブ コãƒã‚¯ã‚·ãƒ§ãƒ³"
msgid "Active DHCP Leases"
msgstr "アクティブãªDHCPリース"
@@ -224,13 +249,13 @@ msgid "Additional Hosts files"
msgstr "追加ã®ãƒ›ã‚¹ãƒˆãƒ•ã‚¡ã‚¤ãƒ«"
msgid "Additional servers file"
-msgstr ""
+msgstr "追加ã®ã‚µãƒ¼ãƒãƒ¼ ファイル"
msgid "Address"
msgstr "アドレス"
msgid "Address to access local relay bridge"
-msgstr "ローカル・リレーブリッジã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ãŸã‚ã®IPアドレス"
+msgstr "ローカル リレーブリッジã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ãŸã‚ã®IPアドレス"
msgid "Administration"
msgstr "管ç†ç”»é¢"
@@ -278,16 +303,16 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr "許å¯ã•ã‚Œã‚‹IP"
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
msgstr ""
msgid "Always announce default router"
-msgstr ""
-
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
+msgstr "常ã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆ ルーターã¨ã—ã¦é€šçŸ¥ã™ã‚‹"
msgid "Annex"
msgstr ""
@@ -336,6 +361,8 @@ msgstr ""
msgid "Announce as default router even if no public prefix is available."
msgstr ""
+"利用å¯èƒ½ãªãƒ‘ブリック プレフィクスãŒç„¡ãã¦ã‚‚ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã¨ã—ã¦é€šçŸ¥ã—"
+"ã¾ã™ã€‚"
msgid "Announced DNS domains"
msgstr ""
@@ -347,10 +374,10 @@ msgid "Anonymous Identity"
msgstr ""
msgid "Anonymous Mount"
-msgstr ""
+msgstr "アノニマス マウント"
msgid "Anonymous Swap"
-msgstr ""
+msgstr "アノニマス スワップ"
msgid "Antenna 1"
msgstr "アンテナ 1"
@@ -384,11 +411,8 @@ msgstr ""
msgid "Associated Stations"
msgstr "èªè¨¼æ¸ˆã¿ç«¯æœ«"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s 無線LANコントローラ"
-
msgid "Auth Group"
-msgstr ""
+msgstr "èªè¨¼ã‚°ãƒ«ãƒ¼ãƒ—"
msgid "AuthGroup"
msgstr ""
@@ -396,6 +420,9 @@ msgstr ""
msgid "Authentication"
msgstr "èªè¨¼"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Authoritative"
@@ -406,25 +433,25 @@ msgid "Auto Refresh"
msgstr "自動更新"
msgid "Automatic"
-msgstr ""
+msgstr "自動"
msgid "Automatic Homenet (HNCP)"
msgstr ""
msgid "Automatically check filesystem for errors before mounting"
-msgstr ""
+msgstr "マウント実行å‰ã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ã®ã‚¨ãƒ©ãƒ¼ã‚’自動的ã«ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚"
msgid "Automatically mount filesystems on hotplug"
-msgstr ""
+msgstr "ホットプラグã«ã‚ˆã£ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ã‚’自動的ã«ãƒžã‚¦ãƒ³ãƒˆã—ã¾ã™ã€‚"
msgid "Automatically mount swap on hotplug"
-msgstr ""
+msgstr "ホットプラグã«ã‚ˆã£ã¦ã‚¹ãƒ¯ãƒƒãƒ— パーティションを自動的ã«ãƒžã‚¦ãƒ³ãƒˆã—ã¾ã™ã€‚"
msgid "Automount Filesystem"
-msgstr ""
+msgstr "ファイルシステム 自動マウント"
msgid "Automount Swap"
-msgstr ""
+msgstr "スワップ 自動マウント"
msgid "Available"
msgstr "使用å¯"
@@ -462,9 +489,6 @@ msgstr "概è¦ã¸æˆ»ã‚‹"
msgid "Back to scan results"
msgstr "スキャンçµæžœã¸æˆ»ã‚‹"
-msgid "Background Scan"
-msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¹ã‚­ãƒ£ãƒ³"
-
msgid "Backup / Flash Firmware"
msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— / ファームウェア更新"
@@ -472,7 +496,7 @@ msgid "Backup / Restore"
msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— / 復元"
msgid "Backup file list"
-msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—・ファイルリスト"
+msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイル リスト"
msgid "Bad address specified!"
msgstr "無効ãªã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã™!"
@@ -488,12 +512,19 @@ msgid ""
"configuration files marked by opkg, essential base files and the user "
"defined backup patterns."
msgstr ""
-"以下ã¯ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã®éš›ã«å«ã¾ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãƒªã‚¹ãƒˆã§ã™ã€‚ã“ã®ãƒªã‚¹ãƒˆã¯ã€opkgã«ã‚ˆã£"
-"ã¦èªè­˜ã•ã‚Œã¦ã„る設定ファイルã€é‡è¦ãªãƒ™ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¨­å®šã—ãŸæ­£è¦è¡¨"
-"ç¾ã«ä¸€è‡´ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸€è¦§ã§ã™ã€‚"
+"以下ã¯ã€ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã®éš›ã«å«ã¾ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒªã‚¹ãƒˆã§ã™ã€‚ã“ã®ãƒªã‚¹ãƒˆã¯ã€opkgã«"
+"よã£ã¦èªè­˜ã•ã‚Œã¦ã„る設定ファイルã€é‡è¦ãªãƒ™ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¨­å®šã—ãŸæ­£"
+"è¦è¡¨ç¾ã«ä¸€è‡´ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸€è¦§ã§ã™ã€‚"
+
+msgid "Bind interface"
+msgstr ""
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+"ワイルドカード アドレスã§ã¯ãªãã€ç‰¹å®šã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®ã¿ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚"
+
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
msgid "Bitrate"
msgstr "ビットレート"
@@ -505,10 +536,10 @@ msgid "Bridge"
msgstr "ブリッジ"
msgid "Bridge interfaces"
-msgstr "ブリッジインターフェース"
+msgstr "ブリッジ インターフェース"
msgid "Bridge unit number"
-msgstr "ブリッジユニット番å·"
+msgstr "ブリッジ ユニット番å·"
msgid "Bring up on boot"
msgstr "デフォルトã§èµ·å‹•ã™ã‚‹"
@@ -526,12 +557,14 @@ msgid ""
"Build/distribution specific feed definitions. This file will NOT be "
"preserved in any sysupgrade."
msgstr ""
+"ビルド/ディストリビューション固有ã®ãƒ•ã‚£ãƒ¼ãƒ‰å®šç¾©ã§ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯sysupgrade"
+"ã®éš›ã«å¼•ã継ãŒã‚Œã¾ã›ã‚“。"
msgid "Buttons"
msgstr "ボタン"
msgid "CA certificate; if empty it will be saved after the first connection."
-msgstr ""
+msgstr "CA証明書(空白ã®å ´åˆã€åˆå›žã®æŽ¥ç¶šå¾Œã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚)"
msgid "CPU usage (%)"
msgstr "CPU使用率 (%)"
@@ -540,7 +573,7 @@ msgid "Cancel"
msgstr "キャンセル"
msgid "Category"
-msgstr ""
+msgstr "カテゴリー"
msgid "Chain"
msgstr "ãƒã‚§ã‚¤ãƒ³"
@@ -561,7 +594,11 @@ msgid "Check"
msgstr "ãƒã‚§ãƒƒã‚¯"
msgid "Check fileystems before mount"
+msgstr "マウントå‰ã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹"
+
+msgid "Check this option to delete the existing networks from this radio."
msgstr ""
+"ã“ã®ç„¡ç·šã‹ã‚‰æ—¢å­˜ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’削除ã™ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションを有効ã«ã—ã¾ã™ã€‚"
msgid "Checksum"
msgstr "ãƒã‚§ãƒƒã‚¯ã‚µãƒ "
@@ -572,10 +609,10 @@ msgid ""
"fill out the <em>create</em> field to define a new zone and attach the "
"interface to it."
msgstr ""
-"ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«è¨­å®šã™ã‚‹ãƒ•ã‚¡ã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ãƒ»ã‚¾ãƒ¼ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„。<em>"
-"設定ã—ãªã„</em>ã‚’é¸æŠžã™ã‚‹ã¨ã€è¨­å®šæ¸ˆã¿ã®ã‚¾ãƒ¼ãƒ³ã‚’削除ã—ã¾ã™ã€‚ã¾ãŸã€<em>作æˆ</"
-"em>フィールドã«ã‚¾ãƒ¼ãƒ³åを入力ã™ã‚‹ã¨ã€æ–°ã—ãゾーンを作æˆã—ã€ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼"
-"スã«è¨­å®šã—ã¾ã™ã€‚"
+"ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«è¨­å®šã™ã‚‹ãƒ•ã‚¡ã‚¤ã‚¦ã‚©ãƒ¼ãƒ« ゾーンをé¸æŠžã—ã¦ãã ã•ã„。<em>設"
+"定ã—ãªã„</em>ã‚’é¸æŠžã™ã‚‹ã¨ã€è¨­å®šæ¸ˆã¿ã®ã‚¾ãƒ¼ãƒ³ã‚’削除ã—ã¾ã™ã€‚ã¾ãŸã€<em>作æˆ</em>"
+"フィールドã«ã‚¾ãƒ¼ãƒ³åを入力ã™ã‚‹ã¨ã€æ–°ã—ãゾーンを作æˆã—ã€ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
+"ã«è¨­å®šã—ã¾ã™ã€‚"
msgid ""
"Choose the network(s) you want to attach to this wireless interface or fill "
@@ -595,10 +632,10 @@ msgid ""
"configuration files. To reset the firmware to its initial state, click "
"\"Perform reset\" (only possible with squashfs images)."
msgstr ""
-"\"ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—アーカイブã®ä½œæˆ\"をクリックã™ã‚‹ã¨ã€ç¾åœ¨ã®è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ã‚’tarå½¢å¼"
-"ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ファイルã¨ã—ã¦ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã—ã¾ã™ã€‚設定ã®ãƒªã‚»ãƒƒãƒˆã‚’è¡Œã†å ´åˆã€\"設"
-"定リセット\"をクリックã—ã¦ãã ã•ã„。(ãŸã ã—ã€squashfsã‚’ãŠä½¿ã„ã®å ´åˆã®ã¿ä½¿ç”¨å¯"
-"能ã§ã™)"
+"\"ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— アーカイブã®ä½œæˆ\"をクリックã™ã‚‹ã¨ã€ç¾åœ¨ã®è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ã‚’tarå½¢"
+"å¼ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ファイルã¨ã—ã¦ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã—ã¾ã™ã€‚設定ã®ãƒªã‚»ãƒƒãƒˆã‚’è¡Œã†å ´"
+"åˆã€\"設定リセット\"をクリックã—ã¦ãã ã•ã„。(ãŸã ã—ã€squashfsã‚’ãŠä½¿ã„ã®å ´åˆã®"
+"ã¿ä½¿ç”¨å¯èƒ½ã§ã™)"
msgid "Client"
msgstr "クライアント"
@@ -625,9 +662,6 @@ msgstr "コマンド"
msgid "Common Configuration"
msgstr "一般設定"
-msgid "Compression"
-msgstr "圧縮"
-
msgid "Configuration"
msgstr "設定"
@@ -650,7 +684,7 @@ msgid "Connection Limit"
msgstr "接続制é™"
msgid "Connection to server fails when TLS cannot be used"
-msgstr ""
+msgstr "TLSãŒä½¿ç”¨ã§ããªã„ã¨ãã€ã‚µãƒ¼ãƒãƒ¼ã¸ã®æŽ¥ç¶šã¯å¤±æ•—ã—ã¾ã™ã€‚"
msgid "Connections"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æŽ¥ç¶š"
@@ -668,7 +702,7 @@ msgid "Cover the following interfaces"
msgstr "インターフェースã®æŒ‡å®š"
msgid "Create / Assign firewall-zone"
-msgstr "ファイアウォールゾーンã®ä½œæˆ / 割り当ã¦"
+msgstr "ファイアウォール ゾーンã®ä½œæˆ / 割り当ã¦"
msgid "Create Interface"
msgstr "インターフェースã®ä½œæˆ"
@@ -692,9 +726,11 @@ msgid ""
"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
"sysupgrade."
msgstr ""
+"プライベート フィードãªã©ã®ã‚«ã‚¹ã‚¿ãƒ  フィード定義ã§ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯"
+"sysupgrade時ã«å¼•ã継ãã“ã¨ãŒã§ãã¾ã™ã€‚"
msgid "Custom feeds"
-msgstr ""
+msgstr "カスタム フィード"
msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
@@ -722,13 +758,13 @@ msgid "DHCPv6 Leases"
msgstr "DHCPv6 リース"
msgid "DHCPv6 client"
-msgstr ""
+msgstr "DHCPv6 クライアント"
msgid "DHCPv6-Mode"
-msgstr ""
+msgstr "DHCPv6-モード"
msgid "DHCPv6-Service"
-msgstr ""
+msgstr "DHCPv6-サービス"
msgid "DNS"
msgstr "DNS"
@@ -740,7 +776,7 @@ msgid "DNS-Label / FQDN"
msgstr ""
msgid "DNSSEC"
-msgstr ""
+msgstr "DNSSEC"
msgid "DNSSEC check unsigned"
msgstr ""
@@ -749,13 +785,13 @@ msgid "DPD Idle Timeout"
msgstr ""
msgid "DS-Lite AFTR address"
-msgstr ""
+msgstr "DS-Lite AFTR アドレス"
msgid "DSL"
-msgstr ""
+msgstr "DSL"
msgid "DSL Status"
-msgstr ""
+msgstr "DSL ステータス"
msgid "DSL line mode"
msgstr ""
@@ -773,13 +809,13 @@ msgid "Default %d"
msgstr "標準設定 %d"
msgid "Default gateway"
-msgstr "デフォルトゲートウェイ"
+msgstr "デフォルト ゲートウェイ"
msgid "Default is stateless + stateful"
-msgstr ""
+msgstr "デフォルト㯠ステートレス + ステートフル ã§ã™ã€‚"
msgid "Default route"
-msgstr ""
+msgstr "デフォルト ルート"
msgid "Default state"
msgstr "標準状態"
@@ -817,7 +853,7 @@ msgid "Device Configuration"
msgstr "デãƒã‚¤ã‚¹è¨­å®š"
msgid "Device is rebooting..."
-msgstr ""
+msgstr "デãƒã‚¤ã‚¹ã‚’å†èµ·å‹•ä¸­ã§ã™..."
msgid "Device unreachable"
msgstr ""
@@ -845,19 +881,19 @@ msgid "Disable DNS setup"
msgstr "DNSセットアップを無効ã«ã™ã‚‹"
msgid "Disable Encryption"
-msgstr ""
-
-msgid "Disable HW-Beacon timer"
-msgstr "HWビーコンタイマーを無効ã«ã™ã‚‹"
+msgstr "æš—å·åŒ–を無効ã«ã™ã‚‹"
msgid "Disabled"
msgstr "無効"
+msgid "Disabled (default)"
+msgstr "無効(デフォルト)"
+
msgid "Discard upstream RFC1918 responses"
msgstr "RFC1918ã®å¿œç­”を破棄ã—ã¾ã™"
msgid "Displaying only packages containing"
-msgstr "å³è¨˜ã®è¡¨ç¤ºã‚’å«ã‚“ã ãƒ‘ッケージã®ã¿ã‚’表示中"
+msgstr "å³è¨˜ã®æ–‡å­—列をå«ã‚“ã ãƒ‘ッケージã®ã¿ã‚’表示中"
msgid "Distance Optimization"
msgstr "è·é›¢ã®æœ€é©åŒ–"
@@ -866,7 +902,7 @@ msgid "Distance to farthest network member in meters."
msgstr "最もé ã„端末ã¨ã®è·é›¢(メートル)を設定ã—ã¦ãã ã•ã„。"
msgid "Distribution feeds"
-msgstr ""
+msgstr "ディストリビューション フィード"
msgid "Diversity"
msgstr "ダイãƒã‚·ãƒ†ã‚£"
@@ -887,19 +923,19 @@ msgstr ""
"無効ãªãƒªãƒ—ライをキャッシュã—ã¾ã›ã‚“ (例:存在ã—ãªã„ドメインã‹ã‚‰ã®è¿”ç­”ãªã©)"
msgid "Do not forward requests that cannot be answered by public name servers"
-msgstr "パブリックDNSサーãƒãƒ¼ãŒè¿”ç­”ã§ããªã‹ã£ãŸãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’転é€ã—ã¾ã›ã‚“"
+msgstr "パブリック DNSサーãƒãƒ¼ãŒè¿”ç­”ã§ããªã‹ã£ãŸãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’転é€ã—ã¾ã›ã‚“"
msgid "Do not forward reverse lookups for local networks"
-msgstr "ローカルãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸ã®é€†å¼•ãを転é€ã—ã¾ã›ã‚“"
-
-msgid "Do not send probe responses"
-msgstr "プローブレスãƒãƒ³ã‚¹ã‚’é€ä¿¡ã—ãªã„"
+msgstr "ローカル ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸ã®é€†å¼•ãを転é€ã—ã¾ã›ã‚“"
msgid "Domain required"
msgstr "ドメイン必須"
msgid "Domain whitelist"
-msgstr "ドメイン・ホワイトリスト"
+msgstr "ドメイン ホワイトリスト"
+
+msgid "Don't Fragment"
+msgstr ""
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
@@ -912,7 +948,7 @@ msgid "Download and install package"
msgstr "パッケージã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«"
msgid "Download backup"
-msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—アーカイブã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰"
+msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— アーカイブã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰"
msgid "Dropbear Instance"
msgstr "Dropbear設定"
@@ -926,11 +962,10 @@ msgstr ""
"ã™ã€‚"
msgid "Dual-Stack Lite (RFC6333)"
-msgstr ""
+msgstr "Dual-Stack Lite (RFC6333)"
msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
-msgstr ""
-"ダイナミック <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
+msgstr "å‹•çš„ <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
msgid "Dynamic tunnel"
msgstr "動的トンãƒãƒ«æ©Ÿèƒ½"
@@ -974,17 +1009,20 @@ msgstr "<abbr title=\"Spanning Tree Protocol\">STP</abbr>を有効ã«ã™ã‚‹"
msgid "Enable HE.net dynamic endpoint update"
msgstr "HE.netã®å‹•çš„endpoint更新を有効ã«ã—ã¾ã™"
+msgid "Enable IPv6 negotiation"
+msgstr "IPv6 ãƒã‚´ã‚·ã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã®æœ‰åŠ¹åŒ–"
+
msgid "Enable IPv6 negotiation on the PPP link"
-msgstr "PPPリンクã®IPv6ãƒã‚´ã‚·ã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã™ã‚‹"
+msgstr "PPPリンクã®IPv6 ãƒã‚´ã‚·ã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã™ã‚‹"
msgid "Enable Jumbo Frame passthrough"
-msgstr "ジャンボフレーム・パススルーを有効ã«ã™ã‚‹"
+msgstr "ジャンボフレーム パススルーを有効ã«ã™ã‚‹"
msgid "Enable NTP client"
msgstr "NTPクライアント機能を有効ã«ã™ã‚‹"
msgid "Enable Single DES"
-msgstr ""
+msgstr "シングルDESã®æœ‰åŠ¹åŒ–"
msgid "Enable TFTP server"
msgstr "TFTPサーãƒãƒ¼ã‚’有効ã«ã™ã‚‹"
@@ -993,10 +1031,10 @@ msgid "Enable VLAN functionality"
msgstr "VLAN機能を有効ã«ã™ã‚‹"
msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
-msgstr ""
+msgstr "WPS プッシュボタンを有効化ã™ã‚‹ã«ã¯ã€WPA(2)-PSKãŒå¿…è¦ã§ã™ã€‚"
msgid "Enable learning and aging"
-msgstr "ラーニング・エイジング機能を有効ã«ã™ã‚‹"
+msgstr "ラーニング エイジング機能を有効ã«ã™ã‚‹"
msgid "Enable mirroring of incoming packets"
msgstr ""
@@ -1004,6 +1042,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "マウント設定を有効ã«ã™ã‚‹"
@@ -1016,8 +1057,13 @@ msgstr "有効/無効"
msgid "Enabled"
msgstr "有効"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
-msgstr "スパニングツリー・プロトコルを有効ã«ã™ã‚‹"
+msgstr "スパニングツリー プロトコルを有効ã«ã™ã‚‹"
msgid "Encapsulation mode"
msgstr "カプセル化モード"
@@ -1025,6 +1071,12 @@ msgstr "カプセル化モード"
msgid "Encryption"
msgstr "æš—å·åŒ–モード"
+msgid "Endpoint Host"
+msgstr "エンドãƒã‚¤ãƒ³ãƒˆ ホスト"
+
+msgid "Endpoint Port"
+msgstr "エンドãƒã‚¤ãƒ³ãƒˆ ãƒãƒ¼ãƒˆ"
+
msgid "Erasing..."
msgstr "消去中..."
@@ -1041,7 +1093,7 @@ msgid "Ethernet Switch"
msgstr "イーサãƒãƒƒãƒˆã‚¹ã‚¤ãƒƒãƒ"
msgid "Exclude interfaces"
-msgstr ""
+msgstr "除外インターフェース"
msgid "Expand hosts"
msgstr "拡張ホスト設定"
@@ -1049,7 +1101,6 @@ msgstr "拡張ホスト設定"
msgid "Expires"
msgstr "期é™åˆ‡ã‚Œ"
-#, fuzzy
msgid ""
"Expiry time of leased addresses, minimum is 2 minutes (<code>2m</code>)."
msgstr ""
@@ -1057,22 +1108,25 @@ msgstr ""
"code>)."
msgid "External"
+msgstr "外部"
+
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
msgstr ""
msgid "External system log server"
-msgstr "外部システムログ・サーãƒãƒ¼"
+msgstr "外部システムログ サーãƒãƒ¼"
msgid "External system log server port"
-msgstr "外部システムログ・サーãƒãƒ¼ãƒãƒ¼ãƒˆ"
+msgstr "外部システムログ・サーãƒãƒ¼ ãƒãƒ¼ãƒˆ"
msgid "External system log server protocol"
-msgstr ""
+msgstr "外部システムログ・サーãƒãƒ¼ プロトコル"
msgid "Extra SSH command options"
-msgstr ""
-
-msgid "Fast Frames"
-msgstr "ファスト・フレーム"
+msgstr "拡張 SSHコマンドオプション"
msgid "File"
msgstr "ファイル"
@@ -1090,15 +1144,17 @@ msgid "Filter private"
msgstr "プライベートフィルター"
msgid "Filter useless"
-msgstr "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 "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’検索ã—ã¦å‚加"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®æ¤œç´¢ã¨å‚加"
msgid "Find package"
msgstr "パッケージを検索"
@@ -1109,17 +1165,20 @@ msgstr "終了"
msgid "Firewall"
msgstr "ファイアウォール"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "ファイアウォール設定"
msgid "Firewall Status"
-msgstr "ファイアウォール・ステータス"
+msgstr "ファイアウォール ステータス"
msgid "Firmware File"
-msgstr ""
+msgstr "ファームウェア ファイル"
msgid "Firmware Version"
-msgstr "ファームウェア・ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
+msgstr "ファームウェア ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
msgid "Fixed source port for outbound DNS queries"
msgstr "DNSクエリをé€ä¿¡ã™ã‚‹é€ä¿¡å…ƒãƒãƒ¼ãƒˆã‚’固定ã—ã¾ã™"
@@ -1155,9 +1214,12 @@ msgstr "TKIP を使用"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIP åŠã³CCMP (AES) を使用"
-msgid "Force use of NAT-T"
+msgid "Force link"
msgstr ""
+msgid "Force use of NAT-T"
+msgstr "NAT-Tã®å¼·åˆ¶ä½¿ç”¨"
+
msgid "Form token mismatch"
msgstr ""
@@ -1168,13 +1230,13 @@ msgid "Forward Error Correction Seconds (FECS)"
msgstr ""
msgid "Forward broadcast traffic"
-msgstr "ブロードキャスト・トラフィックを転é€ã™ã‚‹"
+msgstr "ブロードキャスト トラフィックを転é€ã™ã‚‹"
msgid "Forwarding mode"
msgstr "転é€ãƒ¢ãƒ¼ãƒ‰"
msgid "Fragmentation Threshold"
-msgstr "フラグメンテーション閾値"
+msgstr "フラグメンテーションã—ãã„値"
msgid "Frame Bursting"
msgstr "フレームãƒãƒ¼ã‚¹ãƒˆ"
@@ -1185,6 +1247,13 @@ msgstr "空ã"
msgid "Free space"
msgstr "ディスクã®ç©ºã容é‡"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+"WireGuard インターフェースã¨ãƒ”ã‚¢ã«ã¤ã„ã¦ã®è©³ç´°æƒ…å ±: <a href=\"http://"
+"wireguard.io\">wireguard.io</a>"
+
msgid "GHz"
msgstr "GHz"
@@ -1195,7 +1264,7 @@ msgid "Gateway"
msgstr "ゲートウェイ"
msgid "Gateway ports"
-msgstr "ゲートウェイ・ãƒãƒ¼ãƒˆ"
+msgstr "ゲートウェイ ãƒãƒ¼ãƒˆ"
msgid "General Settings"
msgstr "一般設定"
@@ -1204,13 +1273,13 @@ msgid "General Setup"
msgstr "一般設定"
msgid "General options for opkg"
-msgstr ""
+msgstr "opkgã®ä¸€èˆ¬è¨­å®š"
msgid "Generate Config"
-msgstr ""
+msgstr "コンフィグ生æˆ"
msgid "Generate archive"
-msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—アーカイブã®ä½œæˆ"
+msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— アーカイブã®ä½œæˆ"
msgid "Generic 802.11%s Wireless Controller"
msgstr "802.11%s 無線LANコントローラ"
@@ -1219,10 +1288,10 @@ msgid "Given password confirmation did not match, password not changed!"
msgstr "入力ã•ã‚ŒãŸãƒ‘スワードãŒä¸€è‡´ã—ã¾ã›ã‚“。パスワードã¯å¤‰æ›´ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸ!"
msgid "Global Settings"
-msgstr ""
+msgstr "全体設定"
msgid "Global network options"
-msgstr ""
+msgstr "グローãƒãƒ« ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚ªãƒ—ション"
msgid "Go to password configuration..."
msgstr "パスワード設定ã¸ç§»å‹•..."
@@ -1231,16 +1300,19 @@ msgid "Go to relevant configuration page"
msgstr "関連ã™ã‚‹è¨­å®šãƒšãƒ¼ã‚¸ã¸ç§»å‹•"
msgid "Group Password"
-msgstr ""
+msgstr "グループ パスワード"
msgid "Guest"
-msgstr ""
+msgstr "ゲスト"
msgid "HE.net password"
msgstr "HE.net パスワード"
msgid "HE.net username"
-msgstr ""
+msgstr "HE.net ユーザーå"
+
+msgid "HT mode (802.11n)"
+msgstr "HT モード (802.11n)"
msgid "Handler"
msgstr "ãƒãƒ³ãƒ‰ãƒ©"
@@ -1252,7 +1324,7 @@ msgid "Header Error Code Errors (HEC)"
msgstr ""
msgid "Heartbeat"
-msgstr ""
+msgstr "ãƒãƒ¼ãƒˆãƒ“ート"
msgid ""
"Here you can configure the basic aspects of your device like its hostname or "
@@ -1272,10 +1344,10 @@ msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>ã®éš åŒ¿"
msgid "Host"
-msgstr ""
+msgstr "ホスト"
msgid "Host entries"
-msgstr "ホストエントリー"
+msgstr "ホスト エントリー"
msgid "Host expiry timeout"
msgstr ""
@@ -1294,10 +1366,13 @@ msgid "Hostnames"
msgstr "ホストå"
msgid "Hybrid"
-msgstr ""
+msgstr "ãƒã‚¤ãƒ–リッド"
msgid "IKE DH Group"
-msgstr ""
+msgstr "IKE DHグループ"
+
+msgid "IP Addresses"
+msgstr "IPアドレス"
msgid "IP address"
msgstr "IPアドレス"
@@ -1318,7 +1393,7 @@ msgid "IPv4 and IPv6"
msgstr "IPv4åŠã³IPv6"
msgid "IPv4 assignment length"
-msgstr ""
+msgstr "IPv4 割り当ã¦é•·"
msgid "IPv4 broadcast"
msgstr "IPv4 ブロードキャスト"
@@ -1333,7 +1408,7 @@ msgid "IPv4 only"
msgstr "IPv4ã®ã¿"
msgid "IPv4 prefix"
-msgstr ""
+msgstr "IPv4 プレフィクス"
msgid "IPv4 prefix length"
msgstr "IPv4 プレフィクス長"
@@ -1341,6 +1416,9 @@ msgstr "IPv4 プレフィクス長"
msgid "IPv4-Address"
msgstr "IPv4-アドレス"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr "IPv4-in-IPv4 (RFC2003)"
+
msgid "IPv6"
msgstr "IPv6"
@@ -1351,10 +1429,10 @@ msgid "IPv6 Neighbours"
msgstr ""
msgid "IPv6 Settings"
-msgstr ""
+msgstr "IPv6 設定"
msgid "IPv6 ULA-Prefix"
-msgstr ""
+msgstr "IPv6 ULA-プレフィクス"
msgid "IPv6 WAN Status"
msgstr "IPv6 WAN ステータス"
@@ -1369,7 +1447,7 @@ msgid "IPv6 assignment hint"
msgstr ""
msgid "IPv6 assignment length"
-msgstr ""
+msgstr "IPv6 割り当ã¦é•·"
msgid "IPv6 gateway"
msgstr "IPv6 ゲートウェイ"
@@ -1389,6 +1467,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-アドレス"
+msgid "IPv6-PD"
+msgstr "IPv6-PD"
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1405,24 +1486,25 @@ msgid "If checked, 1DES is enaled"
msgstr ""
msgid "If checked, encryption is disabled"
-msgstr ""
+msgstr "ãƒã‚§ãƒƒã‚¯ã—ãŸå ´åˆã€æš—å·åŒ–ã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚"
msgid ""
"If specified, mount the device by its UUID instead of a fixed device node"
-msgstr "固定ã®ãƒ‡ãƒã‚¤ã‚¹ãƒŽãƒ¼ãƒ‰åã®ã‹ã‚ã‚Šã«ã€è¨­å®šã—ãŸUUIDを使用ã—ã¦ãƒžã‚¦ãƒ³ãƒˆã—ã¾ã™"
+msgstr ""
+"固定ã®ãƒ‡ãƒã‚¤ã‚¹ ノードåã®ã‹ã‚ã‚Šã«ã€è¨­å®šã•ã‚ŒãŸUUIDを使用ã—ã¦ãƒžã‚¦ãƒ³ãƒˆã—ã¾ã™"
msgid ""
"If specified, mount the device by the partition label instead of a fixed "
"device node"
msgstr ""
-"固定ã®ãƒ‡ãƒã‚¤ã‚¹ãƒŽãƒ¼ãƒ‰åã®ã‹ã‚ã‚Šã«ã€è¨­å®šã—ãŸãƒ‘ーティションラベルを使用ã—ã¦ãƒžã‚¦"
-"ントã—ã¾ã™ã€‚"
+"固定ã®ãƒ‡ãƒã‚¤ã‚¹ ノードåã®ã‹ã‚ã‚Šã«ã€è¨­å®šã•ã‚ŒãŸãƒ‘ーティション ラベルを使用ã—ã¦"
+"マウントã—ã¾ã™ã€‚"
msgid "If unchecked, no default route is configured"
-msgstr "ãƒã‚§ãƒƒã‚¯ã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ«ãƒ¼ãƒˆã‚’設定ã—ã¾ã›ã‚“"
+msgstr "ãƒã‚§ãƒƒã‚¯ã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆ ルートを設定ã—ã¾ã›ã‚“"
msgid "If unchecked, the advertised DNS server addresses are ignored"
-msgstr "ãƒã‚§ãƒƒã‚¯ã•ã‚Œã¦ã„ãªã„å ´åˆã€é€šçŸ¥ã•ã‚ŒãŸDNSサーãƒãƒ¼ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’無視ã—ã¾ã™"
+msgstr "ãƒã‚§ãƒƒã‚¯ã•ã‚Œã¦ã„ãªã„å ´åˆã€é€šçŸ¥ã•ã‚ŒãŸDNSサーãƒãƒ¼ アドレスを無視ã—ã¾ã™"
msgid ""
"If your physical memory is insufficient unused data can be temporarily "
@@ -1431,11 +1513,11 @@ msgid ""
"slow process as the swap-device cannot be accessed with the high datarates "
"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
msgstr ""
-"物ç†ãƒ¡ãƒ¢ãƒªãŒä¸è¶³ã™ã‚‹å ´åˆã€ä¸€æ™‚çš„ã«ãƒ‡ãƒ¼ã‚¿ã‚’より大容é‡ãª<abbr title=\"Random "
-"Access Memory\">RAM</abbr>デãƒã‚¤ã‚¹ã«ã‚¹ãƒ¯ãƒƒãƒ—ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚ãŸã ã—ã€ãƒ‡ãƒ¼"
-"ã‚¿ã®ã‚¹ãƒ¯ãƒƒãƒ—ã¯éžå¸¸ã«é…ã„処ç†ã§ã‚ã‚‹ãŸã‚ã€ã‚¹ãƒ¯ãƒƒãƒ—ã™ã‚‹ãƒ‡ãƒã‚¤ã‚¹ã«ã¯é«˜é€Ÿã«<abbr "
-"title=\"Random Access Memory\">RAM</abbr>ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã“ã¨ãŒã§ããªããªã‚‹æã‚Œ"
-"ãŒã‚ã‚Šã¾ã™ã€‚"
+"物ç†ãƒ¡ãƒ¢ãƒªãŒä¸è¶³ã™ã‚‹å ´åˆã€ä½¿ç”¨ã•ã‚Œã¦ã„ãªã„データを一時的ã«ã‚¹ãƒ¯ãƒƒãƒ— デãƒã‚¤ã‚¹ã«"
+"スワップã—ã€<abbr title=\"Random Access Memory\">RAM</abbr>ã®ä½¿ç”¨å¯èƒ½é ˜åŸŸã‚’増"
+"ã‚„ã™ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€ã‚¹ãƒ¯ãƒƒãƒ— デãƒã‚¤ã‚¹ã¯<abbr title=\"Random Access "
+"Memory\">RAM</abbr>ã‹ã‚‰é«˜é€Ÿã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã“ã¨ãŒã§ããªã„ãŸã‚ã€ãƒ‡ãƒ¼ã‚¿ã®ã‚¹ãƒ¯ãƒƒãƒ—"
+"ã¯éžå¸¸ã«é…ã„処ç†ã§ã‚ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¾ã™ã€‚"
msgid "Ignore <code>/etc/hosts</code>"
msgstr "<code>/etc/hosts</code>を無視"
@@ -1444,7 +1526,7 @@ msgid "Ignore interface"
msgstr "インターフェースを無視ã™ã‚‹"
msgid "Ignore resolve file"
-msgstr "リゾルãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚’無視ã™ã‚‹"
+msgstr "リゾルムファイルを無視ã™ã‚‹"
msgid "Image"
msgstr "イメージ"
@@ -1503,7 +1585,7 @@ msgid "Interface is shutting down..."
msgstr "インターフェース終了中..."
msgid "Interface name"
-msgstr ""
+msgstr "インターフェースå"
msgid "Interface not present or not connected yet."
msgstr "インターフェースãŒå­˜åœ¨ã—ãªã„ã‹ã€æŽ¥ç¶šã—ã¦ã„ã¾ã›ã‚“"
@@ -1518,10 +1600,10 @@ msgid "Interfaces"
msgstr "インターフェース"
msgid "Internal"
-msgstr ""
+msgstr "内部"
msgid "Internal Server Error"
-msgstr "内部サーãƒãƒ¼ã‚¨ãƒ©ãƒ¼"
+msgstr "内部サーãƒãƒ¼ エラー"
msgid "Invalid"
msgstr "入力値ãŒä¸æ­£ã§ã™"
@@ -1533,17 +1615,20 @@ msgid "Invalid VLAN ID given! Only unique IDs are allowed"
msgstr "無効ãªVLAN IDã§ã™! ユニークãªIDを入力ã—ã¦ãã ã•ã„。"
msgid "Invalid username and/or password! Please try again."
-msgstr "ユーザーåã¨ãƒ‘スワードãŒä¸æ­£ã§ã™! ã‚‚ã†ä¸€åº¦å…¥åŠ›ã—ã¦ãã ã•ã„。"
+msgstr ""
+"ユーザーåã‹ãƒ‘スワードã€ã‚‚ã—ãã¯ä¸¡æ–¹ãŒä¸æ­£ã§ã™ï¼ã‚‚ã†ä¸€åº¦å…¥åŠ›ã—ã¦ãã ã•ã„。"
+
+msgid "Isolate Clients"
+msgstr ""
-#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr ""
-"æ›´æ–°ã—よã†ã¨ã—ãŸã‚¤ãƒ¡ãƒ¼ã‚¸ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã“ã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥ãƒ¡ãƒ¢ãƒªã«é©åˆã—ã¾ã›ã‚“。もã†ä¸€"
-"度イメージファイルを確èªã—ã¦ãã ã•ã„!"
+"æ›´æ–°ã—よã†ã¨ã—ãŸã‚¤ãƒ¡ãƒ¼ã‚¸ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã“ã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥ãƒ¡ãƒ¢ãƒªã«é©åˆã—ã¾ã›ã‚“。イメー"
+"ジファイルを確èªã—ã¦ãã ã•ã„!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr "JavaScriptを有効ã«ã—ã¦ãã ã•ã„!"
msgid "Join Network"
@@ -1553,16 +1638,16 @@ msgid "Join Network: Wireless Scan"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«æŽ¥ç¶šã™ã‚‹: ç„¡ç·šLANスキャン"
msgid "Joining Network: %q"
-msgstr ""
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«æŽ¥ç¶š: %q"
msgid "Keep settings"
msgstr "設定をä¿æŒã™ã‚‹"
msgid "Kernel Log"
-msgstr "カーãƒãƒ«ãƒ­ã‚°"
+msgstr "カーãƒãƒ« ログ"
msgid "Kernel Version"
-msgstr "カーãƒãƒ«ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
+msgstr "カーãƒãƒ« ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
msgid "Key"
msgstr "æš—å·ã‚­ãƒ¼"
@@ -1598,13 +1683,13 @@ msgid "Language and Style"
msgstr "言語ã¨ã‚¹ã‚¿ã‚¤ãƒ«"
msgid "Latency"
-msgstr ""
+msgstr "レイテンシー"
msgid "Leaf"
msgstr ""
msgid "Lease time"
-msgstr ""
+msgstr "リース時間"
msgid "Lease validity time"
msgstr "リース有効時間"
@@ -1634,7 +1719,7 @@ msgid "Limit DNS service to subnets interfaces on which we are serving DNS."
msgstr ""
msgid "Limit listening to these interfaces, and loopback."
-msgstr ""
+msgstr "å¾…ã¡å—ã‘ã‚’ã“れらã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã¨ãƒ«ãƒ¼ãƒ—ãƒãƒƒã‚¯ã«åˆ¶é™ã—ã¾ã™ã€‚"
msgid "Line Attenuation (LATN)"
msgstr ""
@@ -1658,9 +1743,25 @@ msgstr ""
"å•ã„åˆã‚ã›ã‚’転é€ã™ã‚‹<abbr title=\"Domain Name System\">DNS</abbr> サーãƒãƒ¼ã®"
"リストを設定ã—ã¾ã™"
-msgid "List of SSH key files for auth"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
msgstr ""
+msgid "List of SSH key files for auth"
+msgstr "èªè¨¼ç”¨ SSHæš—å·ã‚­ãƒ¼ ファイルã®ãƒªã‚¹ãƒˆ"
+
msgid "List of domains to allow RFC1918 responses for"
msgstr "RFC1918ã®å¿œç­”を許å¯ã™ã‚‹ãƒªã‚¹ãƒˆ"
@@ -1668,7 +1769,10 @@ msgid "List of hosts that supply bogus NX domain results"
msgstr ""
msgid "Listen Interfaces"
-msgstr ""
+msgstr "å¾…ã¡å—ã‘インターフェース"
+
+msgid "Listen Port"
+msgstr "å¾…ã¡å—ã‘ãƒãƒ¼ãƒˆ"
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1688,7 +1792,7 @@ msgid "Loading"
msgstr "ロード中"
msgid "Local IP address to assign"
-msgstr ""
+msgstr "割り当ã¦ã‚‹ãƒ­ãƒ¼ã‚«ãƒ« IPアドレス"
msgid "Local IPv4 address"
msgstr "ローカル IPv4 アドレス"
@@ -1700,13 +1804,13 @@ msgid "Local Service Only"
msgstr ""
msgid "Local Startup"
-msgstr "ローカル Startup"
+msgstr "ローカル スタートアップ"
msgid "Local Time"
msgstr "時刻"
msgid "Local domain"
-msgstr "ローカルドメイン"
+msgstr "ローカル ドメイン"
msgid ""
"Local domain specification. Names matching this domain are never forwarded "
@@ -1715,9 +1819,11 @@ msgstr ""
msgid "Local domain suffix appended to DHCP names and hosts file entries"
msgstr ""
+"DHCPåã¨hostsファイルã®ã‚¨ãƒ³ãƒˆãƒªãƒ¼ã«ä»˜ã•ã‚Œã‚‹ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ‰ãƒ¡ã‚¤ãƒ³ サフィックスã§"
+"ã™ã€‚"
msgid "Local server"
-msgstr "ローカルサーãƒãƒ¼"
+msgstr "ローカル サーãƒãƒ¼"
msgid ""
"Localise hostname depending on the requesting subnet if multiple IPs are "
@@ -1728,13 +1834,13 @@ msgid "Localise queries"
msgstr "ローカライズクエリ"
msgid "Locked to channel %s used by: %s"
-msgstr ""
+msgstr "ãƒãƒ£ãƒãƒ« %s ã«ãƒ­ãƒƒã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚次ã§ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™: %s"
msgid "Log output level"
msgstr "ログ出力レベル"
msgid "Log queries"
-msgstr "ログクエリー"
+msgstr "ログ クエリ"
msgid "Logging"
msgstr "ログ"
@@ -1756,7 +1862,7 @@ msgid "MAC-Address"
msgstr "MAC-アドレス"
msgid "MAC-Address Filter"
-msgstr "MAC-アドレスフィルタ"
+msgstr "MAC-アドレス フィルタ"
msgid "MAC-Filter"
msgstr "MAC-フィルタ"
@@ -1765,13 +1871,13 @@ msgid "MAC-List"
msgstr "MAC-リスト"
msgid "MAP / LW4over6"
-msgstr ""
+msgstr "MAP / LW4over6"
msgid "MB/s"
msgstr "MB/s"
msgid "MD5"
-msgstr ""
+msgstr "MD5"
msgid "MHz"
msgstr "MHz"
@@ -1783,16 +1889,14 @@ msgid ""
"Make sure to clone the root filesystem using something like the commands "
"below:"
msgstr ""
+"以下ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€ãƒ«ãƒ¼ãƒˆ ファイルシステムを複製ã—ã¦ãã ã•ã„:"
msgid "Manual"
-msgstr ""
+msgstr "手動"
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "最大レート"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "DHCPリースã®è¨±å¯ã•ã‚Œã‚‹æœ€å¤§æ•°"
@@ -1812,6 +1916,8 @@ msgid ""
"Maximum length of the name is 15 characters including the automatic protocol/"
"bridge prefix (br-, 6in4-, pppoe- etc.)"
msgstr ""
+"åå‰ã®é•·ã•ã¯ã€è‡ªå‹•çš„ã«å«ã¾ã‚Œã‚‹ãƒ—ロトコル/ブリッジ プレフィックス (br-, "
+"6in4-, pppoe- ãªã©ï¼‰ã¨åˆã‚ã›ã¦æœ€å¤§15文字ã§ã™ã€‚"
msgid "Maximum number of leased addresses."
msgstr "リースã™ã‚‹ã‚¢ãƒ‰ãƒ¬ã‚¹ã®æœ€å¤§æ•°ã§ã™"
@@ -1828,9 +1934,6 @@ msgstr "メモリ使用率 (%)"
msgid "Metric"
msgstr "メトリック"
-msgid "Minimum Rate"
-msgstr "最å°ãƒ¬ãƒ¼ãƒˆ"
-
msgid "Minimum hold time"
msgstr "最短ä¿æŒæ™‚é–“"
@@ -1843,14 +1946,17 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "プロトコル %qã®ãƒ—ロトコル拡張ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "モード"
msgid "Model"
-msgstr ""
+msgstr "モデル"
msgid "Modem device"
-msgstr "モデムデãƒã‚¤ã‚¹"
+msgstr "モデム デãƒã‚¤ã‚¹"
msgid "Modem init timeout"
msgstr "モデムåˆæœŸåŒ–タイムアウト"
@@ -1881,7 +1987,7 @@ msgstr ""
"表示ã—ã¦ã„ã¾ã™ã€‚"
msgid "Mount filesystems not specifically configured"
-msgstr ""
+msgstr "明確ã«è¨­å®šã•ã‚Œã¦ã„ãªã„ファイルシステムをマウントã—ã¾ã™ã€‚"
msgid "Mount options"
msgstr "マウントオプション"
@@ -1890,7 +1996,7 @@ msgid "Mount point"
msgstr "マウントãƒã‚¤ãƒ³ãƒˆ"
msgid "Mount swap not specifically configured"
-msgstr ""
+msgstr "明確ã«è¨­å®šã•ã‚Œã¦ã„ãªã„スワップ パーティションをマウントã—ã¾ã™ã€‚"
msgid "Mounted file systems"
msgstr "マウント中ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ "
@@ -1901,32 +2007,32 @@ msgstr "下ã¸"
msgid "Move up"
msgstr "上ã¸"
-msgid "Multicast Rate"
-msgstr "マルãƒã‚­ãƒ£ã‚¹ãƒˆãƒ¬ãƒ¼ãƒˆ"
-
msgid "Multicast address"
-msgstr "マルãƒã‚­ãƒ£ã‚¹ãƒˆã‚¢ãƒ‰ãƒ¬ã‚¹"
+msgstr "マルãƒã‚­ãƒ£ã‚¹ãƒˆ アドレス"
msgid "NAS ID"
msgstr "NAS ID"
msgid "NAT-T Mode"
-msgstr ""
+msgstr "NAT-T モード"
msgid "NAT64 Prefix"
+msgstr "NAT64 プレフィクス"
+
+msgid "NCM"
msgstr ""
msgid "NDP-Proxy"
-msgstr ""
+msgstr "NDP-プロキシ"
msgid "NT Domain"
-msgstr ""
+msgstr "NT ドメイン"
msgid "NTP server candidates"
msgstr "NTPサーãƒãƒ¼å€™è£œ"
msgid "NTP sync time-out"
-msgstr ""
+msgstr "NTP åŒæœŸã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆ"
msgid "Name"
msgstr "åå‰"
@@ -1947,10 +2053,10 @@ msgid "Network"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯"
msgid "Network Utilities"
-msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ»ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ユーティリティ"
msgid "Network boot image"
-msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ»ãƒ–ート用イメージ"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ–ート用イメージ"
msgid "Network without interfaces."
msgstr ""
@@ -1962,7 +2068,7 @@ msgid "No DHCP Server configured for this interface"
msgstr "ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«ã¯DHCPサーãƒãƒ¼ãŒè¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“"
msgid "No NAT-T"
-msgstr ""
+msgstr "NAT-Tを使用ã—ãªã„"
msgid "No chains in this table"
msgstr "ãƒã‚§ã‚¤ãƒ³å†…ã«ãƒ«ãƒ¼ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“"
@@ -1983,7 +2089,7 @@ msgid "No network name specified"
msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯åãŒè¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“"
msgid "No package lists available"
-msgstr "パッケージリストãŒã‚ã‚Šã¾ã›ã‚“"
+msgstr "パッケージ リストãŒã‚ã‚Šã¾ã›ã‚“"
msgid "No password set!"
msgstr "パスワードãŒè¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“!"
@@ -2007,7 +2113,7 @@ msgid "Non Pre-emtive CRC errors (CRC_P)"
msgstr ""
msgid "Non-wildcard"
-msgstr ""
+msgstr "éžãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰"
msgid "None"
msgstr "ãªã—"
@@ -2028,7 +2134,7 @@ msgid "Note: Configuration files will be erased."
msgstr "注æ„: 設定ファイルã¯æ¶ˆåŽ»ã•ã‚Œã¾ã™ã€‚"
msgid "Note: interface name length"
-msgstr ""
+msgstr "注æ„: インターフェースåã®é•·ã•"
msgid "Notice"
msgstr "注æ„"
@@ -2059,24 +2165,24 @@ msgid ""
"<samp>INTERFACE.VLANNR</samp> (<abbr title=\"for example\">e.g.</abbr>: "
"<samp>eth0.1</samp>)."
msgstr ""
-"ã“ã®ãƒšãƒ¼ã‚¸ã§ã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®è¨­å®šã‚’è¡Œã†ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚\"ブ"
-"リッジインターフェース\"フィールドをãƒã‚§ãƒƒã‚¯ã—ã€è¤‡æ•°ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¤ãƒ³ã‚¿ãƒ¼"
-"フェースåをスペースã§åŒºåˆ‡ã‚Šã§å…¥åŠ›ã™ã‚‹ã“ã¨ã§è¤‡æ•°ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚’ブリッジ"
-"ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚ã¾ãŸã€<samp>INTERFACE.VLANNR</samp>ã¨ã„ã†è¡¨è¨˜ã«ã‚ˆã‚Š<abbr "
-"title=\"Virtual Local Area Network\">VLAN</abbr>も使用ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚"
-"(<abbr title=\"for example\">例</abbr>: <samp>eth0.1</samp>)"
+"ã“ã®ãƒšãƒ¼ã‚¸ã§ã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ インターフェースã®è¨­å®šã‚’è¡Œã†ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚\"ブ"
+"リッジインターフェース\"フィールドã«ãƒã‚§ãƒƒã‚¯ã‚’付ã‘ã€è¤‡æ•°ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ イン"
+"ターフェースをリストã‹ã‚‰é¸æŠžã™ã‚‹ã“ã¨ã§è¤‡æ•°ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã‚’ブリッジã™ã‚‹ã“"
+"ã¨ãŒå‡ºæ¥ã¾ã™ã€‚ã¾ãŸã€<samp>INTERFACE.VLANNR</samp>ã¨ã„ã†è¡¨è¨˜ã«ã‚ˆã‚Š<abbr title="
+"\"Virtual Local Area Network\">VLAN</abbr>も使用ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚(<abbr "
+"title=\"for example\">例</abbr>: <samp>eth0.1</samp>)"
msgid "On-State Delay"
msgstr "点ç¯æ™‚é–“"
msgid "One of hostname or mac address must be specified!"
-msgstr "1ã¤ä»¥ä¸Šã®ãƒ›ã‚¹ãƒˆåã¾ãŸã¯macアドレスを設定ã—ã¦ãã ã•ã„!"
+msgstr "1ã¤ä»¥ä¸Šã®ãƒ›ã‚¹ãƒˆåã¾ãŸã¯MACアドレスを設定ã—ã¦ãã ã•ã„!"
msgid "One or more fields contain invalid values!"
msgstr "1ã¤ä»¥ä¸Šã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«ç„¡åŠ¹ãªå€¤ãŒè¨­å®šã•ã‚Œã¦ã„ã¾ã™ï¼"
msgid "One or more invalid/required values on tab"
-msgstr ""
+msgstr "タブã«1ã¤ä»¥ä¸Šã® 無効/å¿…é ˆ ã®å€¤ãŒã‚ã‚Šã¾ã™ã€‚"
msgid "One or more required fields have no value!"
msgstr "1ã¤ä»¥ä¸Šã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å€¤ãŒè¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“ï¼"
@@ -2085,10 +2191,10 @@ msgid "Open list..."
msgstr "リストを開ã"
msgid "OpenConnect (CISCO AnyConnect)"
-msgstr ""
+msgstr "OpenConnect (CISCO AnyConnect)"
msgid "Operating frequency"
-msgstr ""
+msgstr "動作周波数"
msgid "Option changed"
msgstr "変更ã•ã‚Œã‚‹ã‚ªãƒ—ション"
@@ -2096,12 +2202,54 @@ msgstr "変更ã•ã‚Œã‚‹ã‚ªãƒ—ション"
msgid "Option removed"
msgstr "削除ã•ã‚Œã‚‹ã‚ªãƒ—ション"
+msgid "Optional"
+msgstr "オプション"
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr "(オプション)"
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+"ピアã®ãƒ›ã‚¹ãƒˆã§ã™ã€‚åå‰ã¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®èµ·å‹•å‰ã«è§£æ±ºã•ã‚Œã¾ã™ã€‚(オプショ"
+"ン)"
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr "トンãƒãƒ« インターフェースã®Maximum Transmission Unit(オプション)"
+
+msgid "Optional. Port of peer."
+msgstr "ピアã®ãƒãƒ¼ãƒˆï¼ˆã‚ªãƒ—ション)"
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+"キープアライブ メッセージã®é€ä¿¡é–“隔(秒)ã§ã™ã€‚既定値: ï¼ã€‚ã“ã®ãƒ‡ãƒã‚¤ã‚¹ãŒNAT"
+"以下ã«å­˜åœ¨ã™ã‚‹å ´åˆã®æŽ¨å¥¨å€¤ã¯25ã§ã™ã€‚(オプション)"
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr "発信パケットã¨å—信パケットã«ä½¿ç”¨ã•ã‚Œã‚‹UDPãƒãƒ¼ãƒˆï¼ˆã‚ªãƒ—ション)"
+
msgid "Options"
msgstr "オプション"
@@ -2114,11 +2262,8 @@ msgstr "アウト"
msgid "Outbound:"
msgstr "é€ä¿¡:"
-msgid "Outdoor Channels"
-msgstr "屋外用周波数"
-
msgid "Output Interface"
-msgstr ""
+msgstr "出力インターフェース"
msgid "Override MAC address"
msgstr "MACアドレスを上書ãã™ã‚‹"
@@ -2126,9 +2271,15 @@ msgstr "MACアドレスを上書ãã™ã‚‹"
msgid "Override MTU"
msgstr "MTUを上書ãã™ã‚‹"
-msgid "Override default interface name"
+msgid "Override TOS"
msgstr ""
+msgid "Override TTL"
+msgstr ""
+
+msgid "Override default interface name"
+msgstr "デフォルトã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹åを上書ãã—ã¾ã™ã€‚"
+
msgid "Override the gateway in DHCP responses"
msgstr "DHCPレスãƒãƒ³ã‚¹å†…ã®ã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’上書ãã™ã‚‹"
@@ -2160,6 +2311,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2173,7 +2327,7 @@ msgid "PPPoE"
msgstr "PPPoE"
msgid "PPPoSSH"
-msgstr ""
+msgstr "PPPoSSH"
msgid "PPtP"
msgstr "PPtP"
@@ -2191,7 +2345,7 @@ msgid "Package libiwinfo required!"
msgstr "libiwinfo パッケージをインストールã—ã¦ãã ã•ã„ï¼"
msgid "Package lists are older than 24 hours"
-msgstr "パッケージリストã¯24時間以上å‰ã®ã‚‚ã®ã§ã™"
+msgstr "パッケージ リストã¯24時間以上å‰ã®ã‚‚ã®ã§ã™"
msgid "Package name"
msgstr "パッケージå"
@@ -2244,6 +2398,9 @@ msgstr "ピーク:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr "ピア"
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2253,6 +2410,9 @@ msgstr "å†èµ·å‹•ã‚’実行"
msgid "Perform reset"
msgstr "設定リセットを実行"
+msgid "Persistent Keep Alive"
+msgstr "永続的ãªã‚­ãƒ¼ãƒ—アライブ"
+
msgid "Phy Rate:"
msgstr "物ç†ãƒ¬ãƒ¼ãƒˆ:"
@@ -2283,6 +2443,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr "委任ã•ã‚ŒãŸãƒ—レフィクス (PD)"
+
+msgid "Preshared Key"
+msgstr "事å‰å…±æœ‰éµ"
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2291,7 +2463,7 @@ msgstr ""
"を設定ã—ãŸå ´åˆã€å¤±æ•—ã—ã¦ã‚‚無視ã—ã¾ã™"
msgid "Prevent listening on these interfaces."
-msgstr ""
+msgstr "ã“れらã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã§ã®å¾…ã¡å—ã‘ã‚’åœæ­¢ã—ã¾ã™ã€‚"
msgid "Prevents client-to-client communication"
msgstr "クライアントåŒå£«ã®é€šä¿¡ã‚’制é™ã—ã¾ã™"
@@ -2299,6 +2471,9 @@ msgstr "クライアントåŒå£«ã®é€šä¿¡ã‚’制é™ã—ã¾ã™"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b 無線LANコントローラ"
+msgid "Private Key"
+msgstr "秘密éµ"
+
msgid "Proceed"
msgstr "続行"
@@ -2306,7 +2481,7 @@ msgid "Processes"
msgstr "プロセス"
msgid "Profile"
-msgstr ""
+msgstr "プロファイル"
msgid "Prot."
msgstr "プロトコル"
@@ -2321,7 +2496,7 @@ msgid "Protocol of the new interface"
msgstr "æ–°ã—ã„インターフェースã®ãƒ—ロトコル"
msgid "Protocol support is not installed"
-msgstr "プロトコルサãƒãƒ¼ãƒˆãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“"
+msgstr "プロトコル サãƒãƒ¼ãƒˆãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“"
msgid "Provide NTP server"
msgstr "NTPサーãƒãƒ¼æ©Ÿèƒ½ã‚’有効ã«ã™ã‚‹"
@@ -2332,17 +2507,29 @@ msgstr "æ–°ã—ã„ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’設定ã™ã‚‹"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "擬似アドホック (ahdemo)"
+msgid "Public Key"
+msgstr "公開éµ"
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "クオリティ"
-msgid "RFC3947 NAT-T mode"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
msgstr ""
+msgid "RFC3947 NAT-T mode"
+msgstr "RFC3947 NAT-Tモード"
+
msgid "RTS/CTS Threshold"
-msgstr "RTS/CTS閾値"
+msgstr "RTS/CTSã—ãã„値"
msgid "RX"
msgstr "RX"
@@ -2354,7 +2541,7 @@ msgid "RaLink 802.11%s Wireless Controller"
msgstr "RaLink 802.11%s 無線LANコントローラ"
msgid "Radius-Accounting-Port"
-msgstr "Radiusアカウントサーãƒãƒ¼ãƒ»ãƒãƒ¼ãƒˆç•ªå·"
+msgstr "Radiusアカウントサーãƒãƒ¼ ãƒãƒ¼ãƒˆç•ªå·"
msgid "Radius-Accounting-Secret"
msgstr "Radiusアカウント秘密éµ"
@@ -2363,7 +2550,7 @@ msgid "Radius-Accounting-Server"
msgstr "Radiusアカウントサーãƒãƒ¼"
msgid "Radius-Authentication-Port"
-msgstr "Radiusèªè¨¼ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒãƒ¼ãƒˆç•ªå·"
+msgstr "Radiusèªè¨¼ã‚µãƒ¼ãƒãƒ¼ ãƒãƒ¼ãƒˆç•ªå·"
msgid "Radius-Authentication-Secret"
msgstr "Radiusèªè¨¼ç§˜å¯†éµ"
@@ -2399,7 +2586,6 @@ msgstr ""
msgid "Really reset all changes?"
msgstr "本当ã«å…¨ã¦ã®å¤‰æ›´ã‚’リセットã—ã¾ã™ã‹?"
-#, fuzzy
msgid ""
"Really shut down network?\\nYou might lose access to this device if you are "
"connected via this interface."
@@ -2423,7 +2609,7 @@ msgid "Realtime Connections"
msgstr "リアルタイム・コãƒã‚¯ã‚·ãƒ§ãƒ³"
msgid "Realtime Graphs"
-msgstr "リアルタイム・グラフ"
+msgstr "リアルタイム グラフ"
msgid "Realtime Load"
msgstr "リアルタイム・ロード"
@@ -2434,6 +2620,9 @@ msgstr "リアルタイム・トラフィック"
msgid "Realtime Wireless"
msgstr "リアルタイム・無線LAN"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "DNSリãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ—ロテクション"
@@ -2452,6 +2641,9 @@ msgstr "å—ä¿¡"
msgid "Receiver Antenna"
msgstr "å—信アンテナ"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr "WireGuard インターフェースã®IPアドレスã§ã™ã€‚(推奨)"
+
msgid "Reconnect this interface"
msgstr "インターフェースã®å†æŽ¥ç¶š"
@@ -2461,9 +2653,6 @@ msgstr "インターフェースå†æŽ¥ç¶šä¸­"
msgid "References"
msgstr "å‚照カウンタ"
-msgid "Regulatory Domain"
-msgstr "è¦åˆ¶ãƒ‰ãƒ¡ã‚¤ãƒ³"
-
msgid "Relay"
msgstr "リレー"
@@ -2477,7 +2666,10 @@ msgid "Relay bridge"
msgstr "リレーブリッジ"
msgid "Remote IPv4 address"
-msgstr "リモートIPv4アドレス"
+msgstr "リモート IPv4アドレス"
+
+msgid "Remote IPv4 address or FQDN"
+msgstr "リモート IPv4アドレス ã¾ãŸã¯ FQDN"
msgid "Remove"
msgstr "削除"
@@ -2492,17 +2684,39 @@ msgid "Replace wireless configuration"
msgstr "無線設定を置æ›ã™ã‚‹"
msgid "Request IPv6-address"
-msgstr ""
+msgstr "IPv6-アドレスã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ"
msgid "Request IPv6-prefix of length"
-msgstr ""
+msgstr "リクエストã™ã‚‹IPv6-プレフィクス長"
msgid "Require TLS"
-msgstr ""
+msgstr "TLSãŒå¿…è¦"
+
+msgid "Required"
+msgstr "å¿…é ˆ"
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "DOCSIS 3.0を使用ã™ã‚‹ã„ãã¤ã‹ã®ISPã§ã¯å¿…è¦ã«ãªã‚Šã¾ã™"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr "ã“ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã«ä½¿ç”¨ã™ã‚‹Base64-エンコード 秘密éµï¼ˆå¿…須)"
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+"'フル' ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® wpad/hostapd ã¨ã€ç„¡ç·šLANドライãƒãƒ¼ã«ã‚ˆã‚‹ã‚µãƒãƒ¼ãƒˆãŒå¿…è¦ã§"
+"ã™ã€‚<br />(2017å¹´2月ç¾åœ¨: ath9k åŠã³ ath10kã€LEDE内ã§ã¯ mwlwifi åŠã³ mt76)"
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2545,16 +2759,22 @@ msgid "Root directory for files served via TFTP"
msgstr "TFTP経由ã§ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å–り扱ã†éš›ã®ãƒ«ãƒ¼ãƒˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª"
msgid "Root preparation"
+msgstr "ルートã®æº–å‚™"
+
+msgid "Route Allowed IPs"
msgstr ""
+msgid "Route type"
+msgstr "ルート タイプ"
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
msgid "Router Advertisement-Service"
-msgstr ""
+msgstr "ルーター アドãƒã‚¿ã‚¤ã‚ºãƒ¡ãƒ³ãƒˆ-サービス"
msgid "Router Password"
-msgstr "ルーター・パスワード"
+msgstr "ルーター パスワード"
msgid "Routes"
msgstr "経路情報"
@@ -2573,7 +2793,7 @@ msgid "Run filesystem check"
msgstr "ファイルシステムãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†"
msgid "SHA256"
-msgstr ""
+msgstr "SHA256"
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
@@ -2584,19 +2804,19 @@ msgid "SIXXS-handle[/Tunnel-ID]"
msgstr ""
msgid "SNR"
-msgstr ""
+msgstr "SNR"
msgid "SSH Access"
msgstr "SSHアクセス"
msgid "SSH server address"
-msgstr ""
+msgstr "SSH サーãƒãƒ¼ã‚¢ãƒ‰ãƒ¬ã‚¹"
msgid "SSH server port"
-msgstr ""
+msgstr "SSH サーãƒãƒ¼ãƒãƒ¼ãƒˆ"
msgid "SSH username"
-msgstr ""
+msgstr "SSH ユーザーå"
msgid "SSH-Keys"
msgstr "SSHキー"
@@ -2638,14 +2858,11 @@ msgstr ""
msgid "Separate Clients"
msgstr "クライアントã®åˆ†é›¢"
-msgid "Separate WDS"
-msgstr "WDSを分離ã™ã‚‹"
-
msgid "Server Settings"
msgstr "サーãƒãƒ¼è¨­å®š"
msgid "Server password"
-msgstr ""
+msgstr "サーãƒãƒ¼ パスワード"
msgid ""
"Server password, enter the specific password of the tunnel when the username "
@@ -2653,7 +2870,7 @@ msgid ""
msgstr ""
msgid "Server username"
-msgstr ""
+msgstr "サーãƒãƒ¼ ユーザーå"
msgid "Service Name"
msgstr "サービスå"
@@ -2664,9 +2881,13 @@ msgstr "サービスタイプ"
msgid "Services"
msgstr "サービス"
-#, fuzzy
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
-msgstr "時刻設定"
+msgstr "時刻åŒæœŸè¨­å®š"
msgid "Setup DHCP Server"
msgstr "DHCPサーãƒãƒ¼ã‚’設定"
@@ -2675,7 +2896,7 @@ msgid "Severely Errored Seconds (SES)"
msgstr ""
msgid "Short GI"
-msgstr ""
+msgstr "Short GI"
msgid "Show current backup file list"
msgstr "ç¾åœ¨ã®ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイルã®ãƒªã‚¹ãƒˆã‚’表示ã™ã‚‹"
@@ -2699,7 +2920,7 @@ msgid "Size"
msgstr "サイズ"
msgid "Size (.ipk)"
-msgstr ""
+msgstr "サイズ (.ipk)"
msgid "Skip"
msgstr "スキップ"
@@ -2728,15 +2949,14 @@ msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“。リクエストã•ã‚ŒãŸã‚ªãƒ–ジェクトã¯
msgid "Sorry, the server encountered an unexpected error."
msgstr "申ã—訳ã‚ã‚Šã¾ã›ã‚“。サーãƒãƒ¼ã«äºˆæœŸã›ã¬ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚"
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"申ã—訳ã‚ã‚Šã¾ã›ã‚“。ç¾åœ¨ã“ã®ãƒœãƒ¼ãƒ‰ã§ã¯sysupgradeãŒã‚µãƒãƒ¼ãƒˆãŒã•ã‚Œã¦ã„ãªã„ãŸã‚ã€"
-"ファームウェア更新ã¯æ‰‹å‹•ã§è¡Œã£ã¦ã„ãŸã ãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚OpenWrt wikiã‚’å‚ç…§ã—"
-"ã¦ã€ã“ã®ãƒ‡ãƒã‚¤ã‚¹ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ‰‹é †ã‚’å‚ç…§ã—ã¦ãã ã•ã„。"
+"ファームウェア更新ã¯æ‰‹å‹•ã§è¡Œã£ã¦ã„ãŸã ãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚wikiã‚’å‚ç…§ã—ã¦ã€ã“ã®"
+"デãƒã‚¤ã‚¹ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ‰‹é †ã‚’å‚ç…§ã—ã¦ãã ã•ã„。"
msgid "Sort"
msgstr "ソート"
@@ -2766,6 +2986,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "æš—å·éµã‚’設定ã—ã¾ã™ã€‚"
@@ -2776,7 +3009,7 @@ msgid "Start priority"
msgstr "優先順ä½"
msgid "Startup"
-msgstr "Startup"
+msgstr "スタートアップ"
msgid "Static IPv4 Routes"
msgstr "IPv4 é™çš„ルーティング"
@@ -2790,9 +3023,6 @@ msgstr "é™çš„リース"
msgid "Static Routes"
msgstr "é™çš„ルーティング"
-msgid "Static WDS"
-msgstr "é™çš„WDS"
-
msgid "Static address"
msgstr "é™çš„アドレス"
@@ -2824,7 +3054,7 @@ msgid "Suppress logging of the routine operation of these protocols"
msgstr ""
msgid "Swap"
-msgstr ""
+msgstr "スワップ"
msgid "Swap Entry"
msgstr "スワップ機能"
@@ -2861,10 +3091,10 @@ msgid "System Log"
msgstr "システムログ"
msgid "System Properties"
-msgstr "システム・プロパティ"
+msgstr "システム プロパティ"
msgid "System log buffer size"
-msgstr "システムログ・ãƒãƒƒãƒ•ã‚¡ã‚µã‚¤ã‚º"
+msgstr "システムログ ãƒãƒƒãƒ•ã‚¡ã‚µã‚¤ã‚º"
msgid "TCP:"
msgstr "TCP:"
@@ -2888,12 +3118,11 @@ msgid "Target"
msgstr "ターゲット"
msgid "Target network"
-msgstr ""
+msgstr "対象ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯"
msgid "Terminate"
msgstr "åœæ­¢"
-#, fuzzy
msgid ""
"The <em>Device Configuration</em> section covers physical settings of the "
"radio hardware such as channel, transmit power or antenna selection which "
@@ -2920,6 +3149,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2970,12 +3203,11 @@ msgstr "ã“ã®ã‚·ã‚¹ãƒ†ãƒ ã§ã¯ã€ç¾åœ¨ä»¥ä¸‹ã®ãƒ«ãƒ¼ãƒ«ãŒæœ‰åŠ¹ã«ãªã£ã¦
msgid "The given network name is not unique"
msgstr "設定ã•ã‚ŒãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯åã¯ãƒ¦ãƒ‹ãƒ¼ã‚¯ãªã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-#, fuzzy
msgid ""
"The hardware is not multi-SSID capable and the existing configuration will "
"be replaced if you proceed."
msgstr ""
-"ã“ã®ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã§ã¯ãƒžãƒ«ãƒESSIDを設定ã™ã‚‹ã“ã¨ãŒã§ããªã„ãŸã‚ã€ç¶šè¡Œã—ãŸå ´åˆã€è¨­"
+"ã“ã®ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã§ã¯è¤‡æ•°ã®ESSIDを設定ã™ã‚‹ã“ã¨ãŒã§ããªã„ãŸã‚ã€ç¶šè¡Œã—ãŸå ´åˆã€è¨­"
"定ã¯æ—¢å­˜ã®è¨­å®šã¨ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚"
msgid ""
@@ -2986,6 +3218,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3006,7 +3241,6 @@ msgid ""
"when finished."
msgstr "システムã¯è¨­å®šé ˜åŸŸã‚’消去中ã§ã™ã€‚完了後ã€è‡ªå‹•çš„ã«å†èµ·å‹•ã—ã¾ã™ã€‚"
-#, fuzzy
msgid ""
"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 "
@@ -3084,21 +3318,21 @@ msgid ""
"This is the content of /etc/rc.local. Insert your own commands here (in "
"front of 'exit 0') to execute them at the end of the boot process."
msgstr ""
-"/etc/rc.localを表示ã—ã¦ã„ã¾ã™ã€‚ã‚ãªãŸã®å®Ÿè¡Œã—ãŸã„コマンドを'exit 0'行より上ã«"
-"入力ã—ã¦ãã ã•ã„。ã“れらã®ã‚³ãƒžãƒ³ãƒ‰ã¯ãƒ–ートプロセスã®æœ€å¾Œã«å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚"
+"/etc/rc.localを表示ã—ã¦ã„ã¾ã™ã€‚実行ã—ãŸã„コマンドを'exit 0'行より上ã«å…¥åŠ›ã—ã¦"
+"ãã ã•ã„。ã“れらã®ã‚³ãƒžãƒ³ãƒ‰ã¯ãƒ–ートプロセスã®æœ€å¾Œã«å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚"
msgid ""
"This is the local endpoint address assigned by the tunnel broker, it usually "
"ends with <code>:2</code>"
msgstr ""
-"プロãƒã‚¤ãƒ€ã‹ã‚‰ã‚¢ã‚µã‚¤ãƒ³ã•ã‚ŒãŸã€ãƒ­ãƒ¼ã‚«ãƒ«ã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆãƒ»ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã™ã€‚通常ã€"
+"プロãƒã‚¤ãƒ€ã‹ã‚‰ã‚¢ã‚µã‚¤ãƒ³ã•ã‚ŒãŸã€ãƒ­ãƒ¼ã‚«ãƒ«ã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ アドレスã§ã™ã€‚通常ã€"
"<code>:2</code>ãŒçµ‚端ã«è¨­å®šã•ã‚Œã¾ã™ã€‚"
msgid ""
"This is the only <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
"abbr> in the local network"
msgstr ""
-"ローカルãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã®ã¿ã® <abbr title=\"Dynamic Host Configuration "
+"ローカル ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã®ã¿ã® <abbr title=\"Dynamic Host Configuration "
"Protocol\">DHCP</abbr>ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹"
msgid "This is the plain username for logging into the account"
@@ -3110,7 +3344,7 @@ msgstr ""
msgid "This is the system crontab in which scheduled tasks can be defined."
msgstr ""
-"スケジュールタスクシステムを使用ã™ã‚‹ã“ã¨ã§ã€å®šæœŸçš„ã«ç‰¹å®šã®ã‚¿ã‚¹ã‚¯ã®å®Ÿè¡Œã‚’è¡Œã†"
+"スケジュールタスク システムを使用ã™ã‚‹ã“ã¨ã§ã€å®šæœŸçš„ã«ç‰¹å®šã®ã‚¿ã‚¹ã‚¯ã®å®Ÿè¡Œã‚’è¡Œã†"
"ã“ã¨ãŒå¯èƒ½ã§ã™ã€‚"
msgid ""
@@ -3146,7 +3380,7 @@ msgid ""
"To restore configuration files, you can upload a previously generated backup "
"archive here."
msgstr ""
-"設定を復元ã™ã‚‹ã«ã¯ã€ä½œæˆã—ã¦ãŠã„ãŸãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—アーカイブをアップロードã—ã¦ã"
+"設定を復元ã™ã‚‹ã«ã¯ã€ä½œæˆã—ã¦ãŠã„ãŸãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— アーカイブをアップロードã—ã¦ã"
"ã ã•ã„。"
msgid "Tone"
@@ -3189,19 +3423,16 @@ msgid "Tunnel Interface"
msgstr "トンãƒãƒ«ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹"
msgid "Tunnel Link"
-msgstr ""
+msgstr "トンãƒãƒ«ãƒªãƒ³ã‚¯"
msgid "Tunnel broker protocol"
-msgstr ""
+msgstr "トンãƒãƒ«ãƒ–ローカー プロトコル"
msgid "Tunnel setup server"
-msgstr ""
+msgstr "トンãƒãƒ«ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ— サーãƒãƒ¼"
msgid "Tunnel type"
-msgstr ""
-
-msgid "Turbo Mode"
-msgstr "ターボモード"
+msgstr "トンãƒãƒ«ã‚¿ã‚¤ãƒ—"
msgid "Tx-Power"
msgstr "é€ä¿¡é›»åŠ›"
@@ -3221,6 +3452,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USBデãƒã‚¤ã‚¹"
+msgid "USB Ports"
+msgstr "USB ãƒãƒ¼ãƒˆ"
+
msgid "UUID"
msgstr "UUID"
@@ -3240,7 +3474,7 @@ msgid "Unmanaged"
msgstr "Unmanaged"
msgid "Unmount"
-msgstr ""
+msgstr "アンマウント"
msgid "Unsaved Changes"
msgstr "ä¿å­˜ã•ã‚Œã¦ã„ãªã„変更"
@@ -3253,16 +3487,16 @@ msgstr "リストã®æ›´æ–°"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
-"システムをアップデートã™ã‚‹å ´åˆã€sysupgrade機能ã«äº’æ›æ€§ã®ã‚るファームウェアイ"
-"メージをアップロードã—ã¦ãã ã•ã„。\"設定ã®ä¿æŒ\"を有効ã«ã™ã‚‹ã¨ã€ç¾åœ¨ã®è¨­å®šã‚’"
-"維æŒã—ã¦ã‚¢ãƒƒãƒ—デートを行ã„ã¾ã™ã€‚ãŸã ã—ã€OpenWrt互æ›ã®ãƒ•ã‚¡ãƒ¼ãƒ ã‚¦ã‚§ã‚¢ã‚¤ãƒ¡ãƒ¼ã‚¸ãŒ"
-"アップロードã•ã‚ŒãŸå ´åˆã®ã¿ã€è¨­å®šã¯ä¿æŒã•ã‚Œã¾ã™ã€‚"
+"システムをアップデートã™ã‚‹å ´åˆã€sysupgrade機能ã«äº’æ›æ€§ã®ã‚るファームウェア イ"
+"メージをã“ã“ã«ã‚¢ãƒƒãƒ—ロードã—ã¦ãã ã•ã„。\"設定ã®ä¿æŒ\"を有効ã«ã™ã‚‹ã¨ã€ç¾åœ¨ã®"
+"設定を維æŒã—ã¦ã‚¢ãƒƒãƒ—デートを行ã„ã¾ã™ï¼ˆäº’æ›æ€§ã®ã‚るファームウェア イメージãŒå¿…"
+"è¦ï¼‰ã€‚"
msgid "Upload archive..."
-msgstr "アーカイブをアップロード"
+msgstr "アーカイブをアップロード..."
msgid "Uploaded File"
msgstr "アップロード完了"
@@ -3283,31 +3517,31 @@ msgid "Use ISO/IEC 3166 alpha2 country codes."
msgstr "ISO/IEC 3166 alpha2ã®å›½ã‚³ãƒ¼ãƒ‰ã‚’使用ã—ã¾ã™ã€‚"
msgid "Use MTU on tunnel interface"
-msgstr "トンãƒãƒ«ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®MTUを設定"
+msgstr "トンãƒãƒ« インターフェースã®MTUを設定"
msgid "Use TTL on tunnel interface"
-msgstr "トンãƒãƒ«ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã®TTLを設定"
+msgstr "トンãƒãƒ« インターフェースã®TTLを設定"
msgid "Use as external overlay (/overlay)"
-msgstr ""
+msgstr "外部オーãƒãƒ¼ãƒ¬ã‚¤ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ (/overlay)"
msgid "Use as root filesystem (/)"
-msgstr ""
+msgstr "ルート ファイルシステムã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ (/)"
msgid "Use broadcast flag"
-msgstr "ブロードキャスト・フラグを使用ã™ã‚‹"
+msgstr "ブロードキャスト フラグを使用ã™ã‚‹"
msgid "Use builtin IPv6-management"
-msgstr ""
+msgstr "ビルトインã®IPv6-マãƒã‚¸ãƒ¡ãƒ³ãƒˆã‚’使用ã™ã‚‹"
msgid "Use custom DNS servers"
msgstr "DNSサーãƒãƒ¼ã‚’手動ã§è¨­å®š"
msgid "Use default gateway"
-msgstr "デフォルトゲートウェイを使用ã™ã‚‹"
+msgstr "デフォルト ゲートウェイを使用ã™ã‚‹"
msgid "Use gateway metric"
-msgstr "ゲートウェイ・メトリックを使用ã™ã‚‹"
+msgstr "ゲートウェイ メトリックを使用ã™ã‚‹"
msgid "Use routing table"
msgstr ""
@@ -3330,6 +3564,11 @@ msgstr "使用"
msgid "Used Key Slot"
msgstr "使用ã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒ­ãƒƒãƒˆ"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3343,7 +3582,7 @@ msgid "VC-Mux"
msgstr "VC-Mux"
msgid "VDSL"
-msgstr ""
+msgstr "VDSL"
msgid "VLANs on %q"
msgstr "%q上ã®VLANs"
@@ -3352,25 +3591,25 @@ msgid "VLANs on %q (%s)"
msgstr "%q上ã®VLAN (%s)"
msgid "VPN Local address"
-msgstr ""
+msgstr "VPN ローカルアドレス"
msgid "VPN Local port"
-msgstr ""
+msgstr "VPN ローカルãƒãƒ¼ãƒˆ"
msgid "VPN Server"
msgstr "VPN サーãƒãƒ¼"
msgid "VPN Server port"
-msgstr ""
+msgstr "VPN サーãƒãƒ¼ãƒãƒ¼ãƒˆ"
msgid "VPN Server's certificate SHA1 hash"
-msgstr ""
+msgstr "VPN サーãƒãƒ¼è¨¼æ˜Žæ›¸ SHA1ãƒãƒƒã‚·ãƒ¥"
msgid "VPNC (CISCO 3000 (and others) VPN)"
-msgstr ""
+msgstr "VPNC (CISCO 3000 (ã¾ãŸã¯ãã®ä»–ã®) VPN)"
msgid "Vendor"
-msgstr ""
+msgstr "ベンダー"
msgid "Vendor Class to send when requesting DHCP"
msgstr "DHCPリクエストé€ä¿¡æ™‚ã®ãƒ™ãƒ³ãƒ€ãƒ¼ã‚¯ãƒ©ã‚¹ã‚’設定"
@@ -3424,13 +3663,13 @@ msgid "Waiting for command to complete..."
msgstr "コマンド実行中ã§ã™..."
msgid "Waiting for device..."
-msgstr ""
+msgstr "デãƒã‚¤ã‚¹ã®èµ·å‹•ã‚’ãŠå¾…ã¡ãã ã•ã„..."
msgid "Warning"
msgstr "警告"
msgid "Warning: There are unsaved changes that will get lost on reboot!"
-msgstr ""
+msgstr "警告: å†èµ·å‹•ã™ã‚‹ã¨æ¶ˆãˆã¦ã—ã¾ã†ã€ä¿å­˜ã•ã‚Œã¦ã„ãªã„設定ãŒã‚ã‚Šã¾ã™ï¼"
msgid "Whether to create an IPv6 default route over the tunnel"
msgstr ""
@@ -3439,7 +3678,10 @@ msgid "Whether to route only packets from delegated prefixes"
msgstr ""
msgid "Width"
-msgstr ""
+msgstr "帯域幅"
+
+msgid "WireGuard VPN"
+msgstr "WireGuard VPN"
msgid "Wireless"
msgstr "ç„¡ç·š"
@@ -3478,10 +3720,7 @@ msgid "Write received DNS requests to syslog"
msgstr "å—ä¿¡ã—ãŸDNSリクエストをsyslogã¸è¨˜éŒ²ã—ã¾ã™"
msgid "Write system log to file"
-msgstr ""
-
-msgid "XR Support"
-msgstr "XRサãƒãƒ¼ãƒˆ"
+msgstr "システムログをファイルã«æ›¸ã込む"
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
@@ -3494,14 +3733,17 @@ msgstr ""
"</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
-msgstr "Java Scriptを有効ã«ã—ãªã„å ´åˆã€LuCIã¯æ­£ã—ã動作ã—ã¾ã›ã‚“。"
+"You must enable JavaScript in your browser or LuCI will not work properly."
+msgstr "JavaScriptを有効ã«ã—ãªã„å ´åˆã€LuCIã¯æ­£ã—ã動作ã—ã¾ã›ã‚“。"
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
"upgrade it to at least version 7 or use another browser like Firefox, Opera "
"or Safari."
msgstr ""
+"Internet ExplorerãŒå¤ã™ãŽã‚‹ãŸã‚ã€ã“ã®ãƒšãƒ¼ã‚¸ã‚’æ­£ã—ã表示ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。"
+"ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 7以上ã«ã‚¢ãƒƒãƒ—グレードã™ã‚‹ã‹ã€Firefoxã‚„Operaã€Safariãªã©åˆ¥ã®ãƒ–ラウ"
+"ザーを使用ã—ã¦ãã ã•ã„。"
msgid "any"
msgstr "å…¨ã¦"
@@ -3509,9 +3751,8 @@ msgstr "å…¨ã¦"
msgid "auto"
msgstr "自動"
-#, fuzzy
msgid "automatic"
-msgstr "static"
+msgstr "自動"
msgid "baseT"
msgstr "baseT"
@@ -3535,7 +3776,7 @@ msgid "disable"
msgstr "無効"
msgid "disabled"
-msgstr ""
+msgstr "無効"
msgid "expired"
msgstr "期é™åˆ‡ã‚Œ"
@@ -3560,16 +3801,16 @@ msgid "help"
msgstr "ヘルプ"
msgid "hidden"
-msgstr ""
+msgstr "(ä¸æ˜Ž)"
msgid "hybrid mode"
-msgstr ""
+msgstr "ãƒã‚¤ãƒ–リッド モード"
msgid "if target is a network"
msgstr "ターゲットãŒãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®å ´åˆ"
msgid "input"
-msgstr ""
+msgstr "入力"
msgid "kB"
msgstr "kB"
@@ -3584,6 +3825,9 @@ msgid "local <abbr title=\"Domain Name System\">DNS</abbr> file"
msgstr "ローカル <abbr title=\"Domain Name System\">DNS</abbr>ファイル"
msgid "minimum 1280, maximum 1480"
+msgstr "最å°å€¤ 1280ã€æœ€å¤§å€¤ 1480"
+
+msgid "minutes"
msgstr ""
msgid "navigation Navigation"
@@ -3608,19 +3852,19 @@ msgid "on"
msgstr "オン"
msgid "open"
-msgstr ""
+msgstr "オープン"
msgid "overlay"
-msgstr ""
+msgstr "オーãƒãƒ¼ãƒ¬ã‚¤"
msgid "relay mode"
-msgstr ""
+msgstr "リレー モード"
msgid "routed"
msgstr "routed"
msgid "server mode"
-msgstr ""
+msgstr "サーãƒãƒ¼ モード"
msgid "skiplink1 Skip to navigation"
msgstr ""
@@ -3629,20 +3873,23 @@ msgid "skiplink2 Skip to content"
msgstr ""
msgid "stateful-only"
-msgstr ""
+msgstr "ステートフルã®ã¿"
msgid "stateless"
-msgstr ""
+msgstr "ステートレス"
msgid "stateless + stateful"
-msgstr ""
+msgstr "ステートレス + ステートフル"
msgid "tagged"
msgstr "tagged"
-msgid "unknown"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
msgstr ""
+msgid "unknown"
+msgstr "ä¸æ˜Ž"
+
msgid "unlimited"
msgstr "無期é™"
@@ -3661,6 +3908,57 @@ msgstr "ã¯ã„"
msgid "« Back"
msgstr "« 戻る"
+#~ msgid "AR Support"
+#~ msgstr "ARサãƒãƒ¼ãƒˆ"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s 無線LANコントローラ"
+
+#~ msgid "Background Scan"
+#~ msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¹ã‚­ãƒ£ãƒ³"
+
+#~ msgid "Compression"
+#~ msgstr "圧縮"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "HWビーコンタイマーを無効ã«ã™ã‚‹"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "プローブレスãƒãƒ³ã‚¹ã‚’é€ä¿¡ã—ãªã„"
+
+#~ msgid "Fast Frames"
+#~ msgstr "ファスト・フレーム"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "最大レート"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "最å°ãƒ¬ãƒ¼ãƒˆ"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "マルãƒã‚­ãƒ£ã‚¹ãƒˆãƒ¬ãƒ¼ãƒˆ"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "屋外用周波数"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "è¦åˆ¶ãƒ‰ãƒ¡ã‚¤ãƒ³"
+
+#~ msgid "Separate WDS"
+#~ msgstr "WDSを分離ã™ã‚‹"
+
+#~ msgid "Static WDS"
+#~ msgstr "é™çš„WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "ターボモード"
+
+#~ msgid "XR Support"
+#~ msgstr "XRサãƒãƒ¼ãƒˆ"
+
+#~ msgid "Required. Public key of peer."
+#~ msgstr "ピアã®å…¬é–‹éµï¼ˆå¿…須)"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ãŒã‚ªãƒ•ã®å ´åˆã€è¿½åŠ ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãŒä½œæˆã•ã‚Œã¾ã™ã€‚"
diff --git a/modules/luci-base/po/ko/base.po b/modules/luci-base/po/ko/base.po
new file mode 100644
index 000000000..c0f82c39f
--- /dev/null
+++ b/modules/luci-base/po/ko/base.po
@@ -0,0 +1,3809 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-10 03:40+0200\n"
+"PO-Revision-Date: 2012-04-03 08:44+0200\n"
+"Last-Translator: Weongyo Jeong <weongyo@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: en\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.4\n"
+
+msgid "%s is untagged in multiple VLANs!"
+msgstr ""
+
+msgid "(%d minute window, %d second interval)"
+msgstr "(%d 분 window, %d 초 간격)"
+
+msgid "(%s available)"
+msgstr ""
+
+msgid "(empty)"
+msgstr ""
+
+msgid "(no interfaces attached)"
+msgstr ""
+
+msgid "-- Additional Field --"
+msgstr ""
+
+msgid "-- Please choose --"
+msgstr ""
+
+msgid "-- custom --"
+msgstr ""
+
+msgid "-- match by device --"
+msgstr ""
+
+msgid "-- match by label --"
+msgstr ""
+
+msgid "-- match by uuid --"
+msgstr ""
+
+msgid "1 Minute Load:"
+msgstr "1 분 부하:"
+
+msgid "15 Minute Load:"
+msgstr "15 분 부하:"
+
+msgid "4-character hexadecimal ID"
+msgstr ""
+
+msgid "464XLAT (CLAT)"
+msgstr ""
+
+msgid "5 Minute Load:"
+msgstr "5 분 부하:"
+
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
+msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
+msgstr ""
+
+msgid "<abbr title=\"Domain Name System\">DNS</abbr> query port"
+msgstr "<abbr title=\"Domain Name System\">DNS</abbr> query í¬íŠ¸"
+
+msgid "<abbr title=\"Domain Name System\">DNS</abbr> server port"
+msgstr "<abbr title=\"Domain Name System\">DNS</abbr> 서버 í¬íŠ¸"
+
+msgid ""
+"<abbr title=\"Domain Name System\">DNS</abbr> servers will be queried in the "
+"order of the resolvfile"
+msgstr ""
+
+msgid "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
+msgstr ""
+
+msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Address"
+msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-주소"
+
+msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Gateway"
+msgstr ""
+
+msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Netmask"
+msgstr ""
+
+msgid ""
+"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Address or Network "
+"(CIDR)"
+msgstr ""
+
+msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Gateway"
+msgstr ""
+
+msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)"
+msgstr ""
+
+msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Configuration"
+msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr> 설정"
+
+msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Name"
+msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr> ì´ë¦„"
+
+msgid "<abbr title=\"Media Access Control\">MAC</abbr>-Address"
+msgstr "<abbr title=\"Media Access Control\">MAC</abbr>-주소"
+
+msgid ""
+"<abbr title=\"maximal\">Max.</abbr> <abbr title=\"Dynamic Host Configuration "
+"Protocol\">DHCP</abbr> leases"
+msgstr ""
+"<abbr title=\"maximal\">최대</abbr> <abbr title=\"Dynamic Host Configuration "
+"Protocol\">DHCP</abbr> lease 수"
+
+msgid ""
+"<abbr title=\"maximal\">Max.</abbr> <abbr title=\"Extension Mechanisms for "
+"Domain Name System\">EDNS0</abbr> packet size"
+msgstr ""
+"<abbr title=\"maximal\">최대</abbr> <abbr title=\"Extension Mechanisms for "
+"Domain Name System\">EDNS0</abbr> 패킷 í¬ê¸°"
+
+msgid "<abbr title=\"maximal\">Max.</abbr> concurrent queries"
+msgstr "<abbr title=\"maximal\">최대</abbr> ë™ì‹œ 처리 query 수"
+
+msgid "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>"
+msgstr ""
+
+msgid "A43C + J43 + A43"
+msgstr ""
+
+msgid "A43C + J43 + A43 + V43"
+msgstr ""
+
+msgid "ADSL"
+msgstr ""
+
+msgid "AICCU (SIXXS)"
+msgstr ""
+
+msgid "ANSI T1.413"
+msgstr ""
+
+msgid "APN"
+msgstr ""
+
+msgid "ARP retry threshold"
+msgstr ""
+
+msgid "ATM (Asynchronous Transfer Mode)"
+msgstr ""
+
+msgid "ATM Bridges"
+msgstr ""
+
+msgid "ATM Virtual Channel Identifier (VCI)"
+msgstr ""
+
+msgid "ATM Virtual Path Identifier (VPI)"
+msgstr ""
+
+msgid ""
+"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual "
+"Linux network interfaces which can be used in conjunction with DHCP or PPP "
+"to dial into the provider network."
+msgstr ""
+
+msgid "ATM device number"
+msgstr ""
+
+msgid "ATU-C System Vendor ID"
+msgstr ""
+
+msgid "AYIYA"
+msgstr ""
+
+msgid "Access Concentrator"
+msgstr ""
+
+msgid "Access Point"
+msgstr ""
+
+msgid "Action"
+msgstr ""
+
+msgid "Actions"
+msgstr "관리 ë„구"
+
+msgid "Activate this network"
+msgstr "ì´ ë„¤íŠ¸ì›Œë¥¼ 활성화합니다"
+
+msgid "Active <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Routes"
+msgstr ""
+"Active <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Route 경로"
+
+msgid "Active <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Routes"
+msgstr ""
+"Active <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Route 경로"
+
+msgid "Active Connections"
+msgstr "Active 연결수"
+
+msgid "Active DHCP Leases"
+msgstr "Active DHCP 임대 목ë¡"
+
+msgid "Active DHCPv6 Leases"
+msgstr "Active DHCPv6 임대 목ë¡"
+
+msgid "Ad-Hoc"
+msgstr ""
+
+msgid "Add"
+msgstr "추가"
+
+msgid "Add local domain suffix to names served from hosts files"
+msgstr ""
+
+msgid "Add new interface..."
+msgstr "새로운 ì¸í„°íŽ˜ì´ìŠ¤ 추가..."
+
+msgid "Additional Hosts files"
+msgstr "추가ì ì¸ Hosts 파ì¼ë“¤"
+
+msgid "Additional servers file"
+msgstr ""
+
+msgid "Address"
+msgstr "주소"
+
+msgid "Address to access local relay bridge"
+msgstr ""
+
+msgid "Administration"
+msgstr "관리"
+
+msgid "Advanced Settings"
+msgstr "고급 설정"
+
+msgid "Aggregate Transmit Power(ACTATP)"
+msgstr ""
+
+msgid "Alert"
+msgstr ""
+
+msgid ""
+"Allocate IP addresses sequentially, starting from the lowest available "
+"address"
+msgstr ""
+
+msgid "Allocate IP sequentially"
+msgstr ""
+
+msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication"
+msgstr "<abbr title=\"Secure Shell\">SSH</abbr> 암호 ì¸ì¦ì„ 허용합니다"
+
+msgid "Allow all except listed"
+msgstr ""
+
+msgid "Allow listed only"
+msgstr ""
+
+msgid "Allow localhost"
+msgstr ""
+
+msgid "Allow remote hosts to connect to local SSH forwarded ports"
+msgstr ""
+
+msgid "Allow root logins with password"
+msgstr "암호를 ì´ìš©í•œ root ì ‘ê·¼ 허용"
+
+msgid "Allow the <em>root</em> user to login with password"
+msgstr "암호를 ì´ìš©í•œ <em>root</em> ì‚¬ìš©ìž ì ‘ê·¼ì„ í—ˆìš©í•©ë‹ˆë‹¤"
+
+msgid ""
+"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
+msgstr ""
+
+msgid "Allowed IPs"
+msgstr ""
+
+msgid ""
+"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
+"\">Tunneling Comparison</a> on SIXXS"
+msgstr ""
+
+msgid "Always announce default router"
+msgstr ""
+
+msgid "Annex"
+msgstr ""
+
+msgid "Annex A + L + M (all)"
+msgstr ""
+
+msgid "Annex A G.992.1"
+msgstr ""
+
+msgid "Annex A G.992.2"
+msgstr ""
+
+msgid "Annex A G.992.3"
+msgstr ""
+
+msgid "Annex A G.992.5"
+msgstr ""
+
+msgid "Annex B (all)"
+msgstr ""
+
+msgid "Annex B G.992.1"
+msgstr ""
+
+msgid "Annex B G.992.3"
+msgstr ""
+
+msgid "Annex B G.992.5"
+msgstr ""
+
+msgid "Annex J (all)"
+msgstr ""
+
+msgid "Annex L G.992.3 POTS 1"
+msgstr ""
+
+msgid "Annex M (all)"
+msgstr ""
+
+msgid "Annex M G.992.3"
+msgstr ""
+
+msgid "Annex M G.992.5"
+msgstr ""
+
+msgid "Announce as default router even if no public prefix is available."
+msgstr ""
+
+msgid "Announced DNS domains"
+msgstr ""
+
+msgid "Announced DNS servers"
+msgstr ""
+
+msgid "Anonymous Identity"
+msgstr ""
+
+msgid "Anonymous Mount"
+msgstr ""
+
+msgid "Anonymous Swap"
+msgstr ""
+
+msgid "Antenna 1"
+msgstr ""
+
+msgid "Antenna 2"
+msgstr ""
+
+msgid "Antenna Configuration"
+msgstr ""
+
+msgid "Any zone"
+msgstr ""
+
+msgid "Apply"
+msgstr "ì ìš©"
+
+msgid "Applying changes"
+msgstr ""
+
+msgid ""
+"Assign a part of given length of every public IPv6-prefix to this interface"
+msgstr ""
+
+msgid "Assign interfaces..."
+msgstr ""
+
+msgid ""
+"Assign prefix parts using this hexadecimal subprefix ID for this interface."
+msgstr ""
+
+msgid "Associated Stations"
+msgstr "ì—°ê²°ëœ station 들"
+
+msgid "Auth Group"
+msgstr ""
+
+msgid "AuthGroup"
+msgstr ""
+
+msgid "Authentication"
+msgstr ""
+
+msgid "Authentication Type"
+msgstr ""
+
+msgid "Authoritative"
+msgstr ""
+
+msgid "Authorization Required"
+msgstr "ì¸ì¦ì´ 필요합니다"
+
+msgid "Auto Refresh"
+msgstr "ìžë™ Refresh"
+
+msgid "Automatic"
+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 ""
+
+msgid "Available packages"
+msgstr "ì´ìš© 가능한 패키지"
+
+msgid "Average:"
+msgstr "í‰ê· :"
+
+msgid "B43 + B43C"
+msgstr ""
+
+msgid "B43 + B43C + V43"
+msgstr ""
+
+msgid "BR / DMR / AFTR"
+msgstr ""
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Back"
+msgstr "뒤로"
+
+msgid "Back to Overview"
+msgstr "개요로 ì´ë™"
+
+msgid "Back to configuration"
+msgstr "설정으로 ëŒì•„가기"
+
+msgid "Back to overview"
+msgstr ""
+
+msgid "Back to scan results"
+msgstr ""
+
+msgid "Backup / Flash Firmware"
+msgstr "Firmware 백업 / Flash"
+
+msgid "Backup / Restore"
+msgstr "백업 / 복구"
+
+msgid "Backup file list"
+msgstr ""
+
+msgid "Bad address specified!"
+msgstr ""
+
+msgid "Band"
+msgstr ""
+
+msgid "Behind NAT"
+msgstr ""
+
+msgid ""
+"Below is the determined list of files to backup. It consists of changed "
+"configuration files marked by opkg, essential base files and the user "
+"defined backup patterns."
+msgstr ""
+"아래는 백업할 íŒŒì¼ ëª©ë¡ìž…니다. ì´ ëª©ë¡ì€ opkg ì´ ìˆ˜ì •ë˜ì—ˆë‹¤ê³  íŒë‹¨í•œ 파ì¼, "
+"필수 기본 íŒŒì¼ ê·¸ë¦¬ê³  사용ìžê°€ 패턴 ì •ì˜ë¡œ 백업하ë„ë¡ ì§€ì •í•œ 것로 ì´ë£¨ì–´ì ¸ 있"
+"습니다."
+
+msgid "Bind interface"
+msgstr ""
+
+msgid "Bind only to specific interfaces rather than wildcard address."
+msgstr ""
+
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Bogus NX Domain Override"
+msgstr ""
+
+msgid "Bridge"
+msgstr ""
+
+msgid "Bridge interfaces"
+msgstr "Bridge ì¸í„°íŽ˜ì´ìŠ¤"
+
+msgid "Bridge unit number"
+msgstr ""
+
+msgid "Bring up on boot"
+msgstr "부팅시 활성화"
+
+msgid "Broadcom 802.11%s Wireless Controller"
+msgstr ""
+
+msgid "Broadcom BCM%04x 802.11 Wireless Controller"
+msgstr ""
+
+msgid "Buffered"
+msgstr "버í¼ëœ ì–‘"
+
+msgid ""
+"Build/distribution specific feed definitions. This file will NOT be "
+"preserved in any sysupgrade."
+msgstr ""
+"Build/distribution 지정 feed 목ë¡ìž…니다. ì´ íŒŒì¼ì˜ ë‚´ìš©ì€ sysupgrade ì‹œ 초기"
+"í™”ë©ë‹ˆë‹¤."
+
+msgid "Buttons"
+msgstr ""
+
+msgid "CA certificate; if empty it will be saved after the first connection."
+msgstr ""
+
+msgid "CPU usage (%)"
+msgstr "CPU 사용량 (%)"
+
+msgid "Cancel"
+msgstr ""
+
+msgid "Category"
+msgstr ""
+
+msgid "Chain"
+msgstr ""
+
+msgid "Changes"
+msgstr "변경 사항"
+
+msgid "Changes applied."
+msgstr ""
+
+msgid "Changes the administrator password for accessing the device"
+msgstr "장비 ì ‘ê·¼ì„ ìœ„í•œ ê´€ë¦¬ìž ì•”í˜¸ë¥¼ 변경합니다"
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check"
+msgstr ""
+
+msgid "Check fileystems before mount"
+msgstr ""
+
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
+msgid "Checksum"
+msgstr ""
+
+msgid ""
+"Choose the firewall zone you want to assign to this interface. Select "
+"<em>unspecified</em> to remove the interface from the associated zone or "
+"fill out the <em>create</em> field to define a new zone and attach the "
+"interface to it."
+msgstr ""
+"ì´ ì¸í„°íŽ˜ì´ìŠ¤ì— í• ë‹¹í•˜ê³ ìž í•˜ëŠ” firewall zone ì„ ì„ íƒí•˜ì„¸ìš”. ì—°ê²°ëœ zone 으로"
+"부터 ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 제거하고 싶다면 <em>unspecified</em> 를 ì„ íƒí•˜ì„¸ìš”. 새로"
+"ìš´ zone ì„ ì •ì˜í•˜ê³  ì¸í„°íŽ˜ì´ìŠ¤ ì—°ê²°ì„ ì›í•œë‹¤ë©´ <em>create</em> í•­ëª©ì„ ìž…ë ¥í•˜"
+"세요."
+
+msgid ""
+"Choose the network(s) you want to attach to this wireless interface or fill "
+"out the <em>create</em> field to define a new network."
+msgstr ""
+"ì´ ë¬´ì„ ëžœ ì¸í„°íŽ˜ì´ìŠ¤ì™€ ì—°ê²°í•˜ê³ ìž í•˜ëŠ” 네트워í¬(들)ì„ ì„ íƒí•˜ì„¸ìš”. í˜¹ì€ ìƒˆë¡œ"
+"ìš´ 네트워í¬ë¥¼ ì •ì˜í• ë ¤ë©´ <em>create</em> ì„ ìž‘ì„±í•˜ì„¸ìš”."
+
+msgid "Cipher"
+msgstr ""
+
+msgid "Cisco UDP encapsulation"
+msgstr ""
+
+msgid ""
+"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)."
+msgstr ""
+"현재 설정 파ì¼ì— 대한 tar ì•„ì¹´ì´ë¸Œ 다운로드를 ì›í•œë‹¤ë©´ \"ì•„ì¹´ì´ë¸Œ ìƒì„±\" 버튼"
+"ì„ í´ë¦­í•˜ì„¸ìš”. Firmware ì˜ ì´ˆê¸° 설정 reset ì„ ì›í•œë‹¤ë©´ \"Reset 하기\" 를 í´"
+"릭하세요. (squashfs ì´ë¯¸ì§€ë“¤ë§Œ 가능)."
+
+msgid "Client"
+msgstr ""
+
+msgid "Client ID to send when requesting DHCP"
+msgstr "DHCP 요청시 전송할 Client ID"
+
+msgid ""
+"Close inactive connection after the given amount of seconds, use 0 to "
+"persist connection"
+msgstr ""
+
+msgid "Close list..."
+msgstr "ëª©ë¡ ë‹«ê¸°..."
+
+msgid "Collecting data..."
+msgstr "Data 를 수집중입니다..."
+
+msgid "Command"
+msgstr "명령어"
+
+msgid "Common Configuration"
+msgstr "공통 설정"
+
+msgid "Configuration"
+msgstr "설정"
+
+msgid "Configuration applied."
+msgstr ""
+
+msgid "Configuration files will be kept."
+msgstr ""
+
+msgid "Confirmation"
+msgstr "다시 확ì¸"
+
+msgid "Connect"
+msgstr "ì—°ê²°"
+
+msgid "Connected"
+msgstr "연결 시간"
+
+msgid "Connection Limit"
+msgstr ""
+
+msgid "Connection to server fails when TLS cannot be used"
+msgstr ""
+
+msgid "Connections"
+msgstr "ì—°ê²°"
+
+msgid "Country"
+msgstr ""
+
+msgid "Country Code"
+msgstr ""
+
+msgid "Cover the following interface"
+msgstr ""
+
+msgid "Cover the following interfaces"
+msgstr ""
+
+msgid "Create / Assign firewall-zone"
+msgstr "Firewall-zone ìƒì„± / 할당"
+
+msgid "Create Interface"
+msgstr ""
+
+msgid "Create a bridge over multiple interfaces"
+msgstr ""
+
+msgid "Critical"
+msgstr ""
+
+msgid "Cron Log Level"
+msgstr ""
+
+msgid "Custom Interface"
+msgstr "ìž„ì˜ì˜ ì¸í„°íŽ˜ì´ìŠ¤"
+
+msgid "Custom delegated IPv6-prefix"
+msgstr ""
+
+msgid ""
+"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
+"sysupgrade."
+msgstr ""
+"ê°œì¸ì´ ìš´ì˜í•˜ëŠ” feed ê°™ì€ ì •ë³´ë¥¼ 입력할 수 있는 custom feed 목ë¡ìž…니다. ì´ íŒŒ"
+"ì¼ì€ sysupgrade ì‹œ ìž…ë ¥ëœ ì •ë³´ê°€ 유지ë©ë‹ˆë‹¤."
+
+msgid "Custom feeds"
+msgstr "Custom feed 들"
+
+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> ë“¤ì˜ "
+"í–‰ë™ì„ 마ìŒëŒ€ë¡œ 변경할 수 있습니다."
+
+msgid "DHCP Leases"
+msgstr "DHCP 임대 정보"
+
+msgid "DHCP Server"
+msgstr "DHCP 서버"
+
+msgid "DHCP and DNS"
+msgstr "DHCP 와 DNS"
+
+msgid "DHCP client"
+msgstr "DHCP client"
+
+msgid "DHCP-Options"
+msgstr "DHCP-옵션들"
+
+msgid "DHCPv6 Leases"
+msgstr "DHCPv6 임대 정보"
+
+msgid "DHCPv6 client"
+msgstr ""
+
+msgid "DHCPv6-Mode"
+msgstr ""
+
+msgid "DHCPv6-Service"
+msgstr ""
+
+msgid "DNS"
+msgstr ""
+
+msgid "DNS forwardings"
+msgstr ""
+
+msgid "DNS-Label / FQDN"
+msgstr ""
+
+msgid "DNSSEC"
+msgstr ""
+
+msgid "DNSSEC check unsigned"
+msgstr ""
+
+msgid "DPD Idle Timeout"
+msgstr ""
+
+msgid "DS-Lite AFTR address"
+msgstr ""
+
+msgid "DSL"
+msgstr ""
+
+msgid "DSL Status"
+msgstr ""
+
+msgid "DSL line mode"
+msgstr ""
+
+msgid "DUID"
+msgstr ""
+
+msgid "Data Rate"
+msgstr ""
+
+msgid "Debug"
+msgstr ""
+
+msgid "Default %d"
+msgstr ""
+
+msgid "Default gateway"
+msgstr ""
+
+msgid "Default is stateless + stateful"
+msgstr ""
+
+msgid "Default route"
+msgstr ""
+
+msgid "Default state"
+msgstr "기본 ìƒíƒœ"
+
+msgid "Define a name for this network."
+msgstr ""
+
+msgid ""
+"Define additional DHCP options, for example "
+"\"<code>6,192.168.2.1,192.168.2.2</code>\" which advertises different DNS "
+"servers to clients."
+msgstr ""
+"추가ì ì¸ DHCP ì˜µì…˜ì„ ì •ì˜í•©ë‹ˆë‹¤. 예를 들어 "
+"\"<code>6,192.168.2.1,192.168.2.2</code>\" 는 client ì—게 다른 DNS 서버를 세"
+"팅하ë„ë¡ ê¶Œê³ í•  수 있습니다."
+
+msgid "Delete"
+msgstr "삭제"
+
+msgid "Delete this network"
+msgstr "ì´ ë„¤íŠ¸ì›Œí¬ë¥¼ 삭제합니다"
+
+msgid "Description"
+msgstr "설명"
+
+msgid "Design"
+msgstr "ë””ìžì¸"
+
+msgid "Destination"
+msgstr ""
+
+msgid "Device"
+msgstr ""
+
+msgid "Device Configuration"
+msgstr "장치 설정"
+
+msgid "Device is rebooting..."
+msgstr ""
+
+msgid "Device unreachable"
+msgstr ""
+
+msgid "Diagnostics"
+msgstr "진단"
+
+msgid "Dial number"
+msgstr ""
+
+msgid "Directory"
+msgstr ""
+
+msgid "Disable"
+msgstr "비활성화"
+
+msgid ""
+"Disable <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr> for "
+"this interface."
+msgstr ""
+"ì´ ì¸í„°íŽ˜ì´ìŠ¤ì— 대해 <abbr title=\"Dynamic Host Configuration Protocol"
+"\">DHCP</abbr> ê¸°ëŠ¥ì„ ë¹„í™œì„±í•©ë‹ˆë‹¤."
+
+msgid "Disable DNS setup"
+msgstr ""
+
+msgid "Disable Encryption"
+msgstr ""
+
+msgid "Disabled"
+msgstr ""
+
+msgid "Disabled (default)"
+msgstr ""
+
+msgid "Discard upstream RFC1918 responses"
+msgstr ""
+
+msgid "Displaying only packages containing"
+msgstr ""
+
+msgid "Distance Optimization"
+msgstr ""
+
+msgid "Distance to farthest network member in meters."
+msgstr ""
+
+msgid "Distribution feeds"
+msgstr "Distribution feed 들"
+
+msgid "Diversity"
+msgstr ""
+
+msgid ""
+"Dnsmasq is a combined <abbr title=\"Dynamic Host Configuration Protocol"
+"\">DHCP</abbr>-Server and <abbr title=\"Domain Name System\">DNS</abbr>-"
+"Forwarder for <abbr title=\"Network Address Translation\">NAT</abbr> "
+"firewalls"
+msgstr ""
+"Dnsmasq 는 <abbr title=\"Network Address Translation\">NAT</abbr> ë°©í™”ë²½ì„ ìœ„"
+"한 <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>-서버와 "
+"<abbr title=\"Domain Name System\">DNS</abbr>-Forwarder ê¸°ëŠ¥ì„ ì œê³µí•©ë‹ˆë‹¤."
+
+msgid "Do not cache negative replies, e.g. for not existing domains"
+msgstr ""
+
+msgid "Do not forward requests that cannot be answered by public name servers"
+msgstr ""
+
+msgid "Do not forward reverse lookups for local networks"
+msgstr ""
+
+msgid "Domain required"
+msgstr ""
+
+msgid "Domain whitelist"
+msgstr ""
+
+msgid "Don't Fragment"
+msgstr ""
+
+msgid ""
+"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
+"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
+msgstr ""
+
+msgid "Download and install package"
+msgstr "패키지 다운로드 후 설치"
+
+msgid "Download backup"
+msgstr "백업 다운로드"
+
+msgid "Dropbear Instance"
+msgstr ""
+
+msgid ""
+"Dropbear offers <abbr title=\"Secure Shell\">SSH</abbr> network shell access "
+"and an integrated <abbr title=\"Secure Copy\">SCP</abbr> server"
+msgstr ""
+"Dropbear 는 <abbr title=\"Secure Shell\">SSH</abbr> network shell 접근과 "
+"<abbr title=\"Secure Copy\">SCP</abbr> 서버 ê¸°ëŠ¥ì„ ì œê³µí•©ë‹ˆë‹¤"
+
+msgid "Dual-Stack Lite (RFC6333)"
+msgstr ""
+
+msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
+msgstr ""
+
+msgid "Dynamic tunnel"
+msgstr ""
+
+msgid ""
+"Dynamically allocate DHCP addresses for clients. If disabled, only clients "
+"having static leases will be served."
+msgstr ""
+"ë™ì ìœ¼ë¡œ DHCP 주소를 client ì—게 할당합니다. 만약 비활성화시, static lease "
+"ê°€ ì„¤ì •ëœ client 만 주소 ì œê³µì´ ì´ë£¨ì–´ì§‘니다."
+
+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 "ì´ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 수정합니다"
+
+msgid "Edit this network"
+msgstr "ì´ ë„¤íŠ¸ì›Œí¬ë¥¼ 수정합니다"
+
+msgid "Emergency"
+msgstr ""
+
+msgid "Enable"
+msgstr "활성화"
+
+msgid "Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
+msgstr "<abbr title=\"Spanning Tree Protocol\">STP</abbr> 활성화"
+
+msgid "Enable HE.net dynamic endpoint update"
+msgstr ""
+
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
+msgid "Enable IPv6 negotiation on the PPP link"
+msgstr ""
+
+msgid "Enable Jumbo Frame passthrough"
+msgstr ""
+
+msgid "Enable NTP client"
+msgstr "NTP client 활성화"
+
+msgid "Enable Single DES"
+msgstr ""
+
+msgid "Enable TFTP server"
+msgstr "TFTP 서버 활성화"
+
+msgid "Enable VLAN functionality"
+msgstr "VLAN 기능 활성화"
+
+msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
+msgstr ""
+
+msgid "Enable learning and aging"
+msgstr ""
+
+msgid "Enable mirroring of incoming packets"
+msgstr ""
+
+msgid "Enable mirroring of outgoing packets"
+msgstr ""
+
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
+msgid "Enable this mount"
+msgstr ""
+
+msgid "Enable this swap"
+msgstr ""
+
+msgid "Enable/Disable"
+msgstr "활성/비활성"
+
+msgid "Enabled"
+msgstr "활성화ë¨"
+
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
+msgid "Enables the Spanning Tree Protocol on this bridge"
+msgstr "ì´ bridge ì— Spanning Tree Protocol 활성화합니다"
+
+msgid "Encapsulation mode"
+msgstr ""
+
+msgid "Encryption"
+msgstr "암호화"
+
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
+msgid "Erasing..."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Errored seconds (ES)"
+msgstr ""
+
+msgid "Ethernet Adapter"
+msgstr ""
+
+msgid "Ethernet Switch"
+msgstr "Ethernet 스위치"
+
+msgid "Exclude interfaces"
+msgstr ""
+
+msgid "Expand hosts"
+msgstr ""
+
+msgid "Expires"
+msgstr "만료 시간"
+
+msgid ""
+"Expiry time of leased addresses, minimum is 2 minutes (<code>2m</code>)."
+msgstr "임대한 ì£¼ì†Œì˜ ìœ íš¨ 시간. ìµœì†Œê°’ì€ 2 분 (<code>2m</code>) 입니다."
+
+msgid "External"
+msgstr ""
+
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
+msgid "External system log server"
+msgstr "외부 system log 서버"
+
+msgid "External system log server port"
+msgstr "외부 system log 서버 í¬íŠ¸"
+
+msgid "External system log server protocol"
+msgstr "외부 system log 서버 프로토콜"
+
+msgid "Extra SSH command options"
+msgstr ""
+
+msgid "File"
+msgstr ""
+
+msgid "Filename of the boot image advertised to clients"
+msgstr ""
+
+msgid "Filesystem"
+msgstr ""
+
+msgid "Filter"
+msgstr "í•„í„°"
+
+msgid "Filter private"
+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 "ë„¤íŠ¸ì›Œí¬ ê²€ìƒ‰ ë° ì—°ê²°í•©ë‹ˆë‹¤"
+
+msgid "Find package"
+msgstr "패키지 찾기"
+
+msgid "Finish"
+msgstr ""
+
+msgid "Firewall"
+msgstr "방화벽"
+
+msgid "Firewall Mark"
+msgstr ""
+
+msgid "Firewall Settings"
+msgstr "방화벽 설정"
+
+msgid "Firewall Status"
+msgstr "방화벽 ìƒíƒœ"
+
+msgid "Firmware File"
+msgstr ""
+
+msgid "Firmware Version"
+msgstr "Firmware 버전"
+
+msgid "Fixed source port for outbound DNS queries"
+msgstr ""
+
+msgid "Flash Firmware"
+msgstr ""
+
+msgid "Flash image..."
+msgstr "ì´ë¯¸ì§€ë¡œ Flash..."
+
+msgid "Flash new firmware image"
+msgstr "새로운 firmware ì´ë¯¸ì§€ë¡œ flash"
+
+msgid "Flash operations"
+msgstr "Flash ìž‘ì—…"
+
+msgid "Flashing..."
+msgstr ""
+
+msgid "Force"
+msgstr "강제하기"
+
+msgid "Force CCMP (AES)"
+msgstr ""
+
+msgid "Force DHCP on this network even if another server is detected."
+msgstr "다른 DHCP 서버가 íƒì§€ë˜ë”ë¼ë„ ì´ ë„¤íŠ¸ì›Œí¬ì— DHCP 를 강제합니다."
+
+msgid "Force TKIP"
+msgstr ""
+
+msgid "Force TKIP and CCMP (AES)"
+msgstr ""
+
+msgid "Force link"
+msgstr ""
+
+msgid "Force use of NAT-T"
+msgstr ""
+
+msgid "Form token mismatch"
+msgstr ""
+
+msgid "Forward DHCP traffic"
+msgstr ""
+
+msgid "Forward Error Correction Seconds (FECS)"
+msgstr ""
+
+msgid "Forward broadcast traffic"
+msgstr ""
+
+msgid "Forwarding mode"
+msgstr ""
+
+msgid "Fragmentation Threshold"
+msgstr ""
+
+msgid "Frame Bursting"
+msgstr ""
+
+msgid "Free"
+msgstr "ì´ìš© 가능한 ì–‘"
+
+msgid "Free space"
+msgstr "여유 공간"
+
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
+msgid "GHz"
+msgstr ""
+
+msgid "GPRS only"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Gateway ports"
+msgstr ""
+
+msgid "General Settings"
+msgstr "기본 설정"
+
+msgid "General Setup"
+msgstr "기본 설정"
+
+msgid "General options for opkg"
+msgstr "opkg ëª…ë ¹ì˜ ê¸°ë³¸ 옵션들"
+
+msgid "Generate Config"
+msgstr ""
+
+msgid "Generate archive"
+msgstr "ì•„ì¹´ì´ë¸Œ ìƒì„±"
+
+msgid "Generic 802.11%s Wireless Controller"
+msgstr ""
+
+msgid "Given password confirmation did not match, password not changed!"
+msgstr ""
+
+msgid "Global Settings"
+msgstr ""
+
+msgid "Global network options"
+msgstr ""
+
+msgid "Go to password configuration..."
+msgstr "암호 설정 하기"
+
+msgid "Go to relevant configuration page"
+msgstr ""
+
+msgid "Group Password"
+msgstr ""
+
+msgid "Guest"
+msgstr ""
+
+msgid "HE.net password"
+msgstr ""
+
+msgid "HE.net username"
+msgstr ""
+
+msgid "HT mode (802.11n)"
+msgstr ""
+
+msgid "Handler"
+msgstr ""
+
+msgid "Hang Up"
+msgstr ""
+
+msgid "Header Error Code Errors (HEC)"
+msgstr ""
+
+msgid "Heartbeat"
+msgstr ""
+
+msgid ""
+"Here you can configure the basic aspects of your device like its hostname or "
+"the timezone."
+msgstr ""
+"여기서 호스트ì´ë¦„ì´ë‚˜ 시간대와 ê°™ì€ ê¸°ë³¸ì ì¸ 장비 ì„¤ì •ì„ í•  수 있습니다."
+
+msgid ""
+"Here you can paste public SSH-Keys (one per line) for SSH public-key "
+"authentication."
+msgstr ""
+"ì•„ëž˜ì— SSH public-key ì¸ì¦ì„ 위한 공개 SSH-Key 들 (í•œ 줄당 한개) 를 입력할 "
+"수 있습니다."
+
+msgid "Hermes 802.11b Wireless Controller"
+msgstr ""
+
+msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
+msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr> 숨기기"
+
+msgid "Host"
+msgstr "호스트"
+
+msgid "Host entries"
+msgstr "호스트 목ë¡ë“¤"
+
+msgid "Host expiry timeout"
+msgstr ""
+
+msgid "Host-<abbr title=\"Internet Protocol Address\">IP</abbr> or Network"
+msgstr "Host-<abbr title=\"Internet Protocol Address\">IP</abbr> í˜¹ì€ Network"
+
+msgid "Hostname"
+msgstr "호스트ì´ë¦„"
+
+msgid "Hostname to send when requesting DHCP"
+msgstr "DHCP 요청시 전달할 호스트ì´ë¦„"
+
+msgid "Hostnames"
+msgstr "호스트ì´ë¦„"
+
+msgid "Hybrid"
+msgstr ""
+
+msgid "IKE DH Group"
+msgstr ""
+
+msgid "IP Addresses"
+msgstr ""
+
+msgid "IP address"
+msgstr "IP 주소"
+
+msgid "IPv4"
+msgstr ""
+
+msgid "IPv4 Firewall"
+msgstr "IPv4 방화벽"
+
+msgid "IPv4 WAN Status"
+msgstr "IPv4 WAN ìƒíƒœ"
+
+msgid "IPv4 address"
+msgstr "IPv4 주소"
+
+msgid "IPv4 and IPv6"
+msgstr "IPv4 와 IPv6"
+
+msgid "IPv4 assignment length"
+msgstr ""
+
+msgid "IPv4 broadcast"
+msgstr ""
+
+msgid "IPv4 gateway"
+msgstr ""
+
+msgid "IPv4 netmask"
+msgstr ""
+
+msgid "IPv4 only"
+msgstr ""
+
+msgid "IPv4 prefix"
+msgstr ""
+
+msgid "IPv4 prefix length"
+msgstr ""
+
+msgid "IPv4-Address"
+msgstr "IPv4-주소"
+
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
+msgid "IPv6"
+msgstr "IPv6"
+
+msgid "IPv6 Firewall"
+msgstr "IPv6 방화벽"
+
+msgid "IPv6 Neighbours"
+msgstr "IPv6 Neighbour 들"
+
+msgid "IPv6 Settings"
+msgstr "IPv6 설정"
+
+msgid "IPv6 ULA-Prefix"
+msgstr ""
+
+msgid "IPv6 WAN Status"
+msgstr "IPv6 WAN ìƒíƒœ"
+
+msgid "IPv6 address"
+msgstr ""
+
+msgid "IPv6 address delegated to the local tunnel endpoint (optional)"
+msgstr ""
+
+msgid "IPv6 assignment hint"
+msgstr ""
+
+msgid "IPv6 assignment length"
+msgstr ""
+
+msgid "IPv6 gateway"
+msgstr ""
+
+msgid "IPv6 only"
+msgstr ""
+
+msgid "IPv6 prefix"
+msgstr ""
+
+msgid "IPv6 prefix length"
+msgstr ""
+
+msgid "IPv6 routed prefix"
+msgstr ""
+
+msgid "IPv6-Address"
+msgstr "IPv6-주소"
+
+msgid "IPv6-PD"
+msgstr ""
+
+msgid "IPv6-in-IPv4 (RFC4213)"
+msgstr ""
+
+msgid "IPv6-over-IPv4 (6rd)"
+msgstr ""
+
+msgid "IPv6-over-IPv4 (6to4)"
+msgstr ""
+
+msgid "Identity"
+msgstr ""
+
+msgid "If checked, 1DES is enaled"
+msgstr ""
+
+msgid "If checked, encryption is disabled"
+msgstr ""
+
+msgid ""
+"If specified, mount the device by its UUID instead of a fixed device node"
+msgstr ""
+
+msgid ""
+"If specified, mount the device by the partition label instead of a fixed "
+"device node"
+msgstr ""
+
+msgid "If unchecked, no default route is configured"
+msgstr "ì²´í¬í•˜ì§€ ì•Šì„ ê²½ìš°, 기본 route ê°€ 설정ë˜ì§€ 않습니다"
+
+msgid "If unchecked, the advertised DNS server addresses are ignored"
+msgstr "ì²´í¬í•˜ì§€ ì•Šì„ ê²½ìš°, 사용하ë„ë¡ ê¶Œìž¥ëœ DNS 주소는 무시ë©ë‹ˆë‹¤"
+
+msgid ""
+"If your physical memory is insufficient unused data can be temporarily "
+"swapped to a swap-device resulting in a higher amount of usable <abbr title="
+"\"Random Access Memory\">RAM</abbr>. Be aware that swapping data is a very "
+"slow process as the swap-device cannot be accessed with the high datarates "
+"of the <abbr title=\"Random Access Memory\">RAM</abbr>."
+msgstr ""
+
+msgid "Ignore <code>/etc/hosts</code>"
+msgstr "<code>/etc/hosts</code> íŒŒì¼ ë¬´ì‹œ"
+
+msgid "Ignore interface"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤ 무시"
+
+msgid "Ignore resolve file"
+msgstr "resolve íŒŒì¼ ë¬´ì‹œ"
+
+msgid "Image"
+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 ""
+
+msgid "Inbound:"
+msgstr ""
+
+msgid "Info"
+msgstr ""
+
+msgid "Initscript"
+msgstr ""
+
+msgid "Initscripts"
+msgstr "Initscript 들"
+
+msgid "Install"
+msgstr "설치"
+
+msgid "Install iputils-traceroute6 for IPv6 traceroute"
+msgstr ""
+
+msgid "Install package %q"
+msgstr ""
+
+msgid "Install protocol extensions..."
+msgstr ""
+
+msgid "Installed packages"
+msgstr "ì„¤ì¹˜ëœ íŒ¨í‚¤ì§€"
+
+msgid "Interface"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤"
+
+msgid "Interface Configuration"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤ 설정"
+
+msgid "Interface Overview"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤ 개요"
+
+msgid "Interface is reconnecting..."
+msgstr ""
+
+msgid "Interface is shutting down..."
+msgstr ""
+
+msgid "Interface name"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤ ì´ë¦„"
+
+msgid "Interface not present or not connected yet."
+msgstr ""
+
+msgid "Interface reconnected"
+msgstr ""
+
+msgid "Interface shut down"
+msgstr ""
+
+msgid "Interfaces"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤"
+
+msgid "Internal"
+msgstr ""
+
+msgid "Internal Server Error"
+msgstr ""
+
+msgid "Invalid"
+msgstr ""
+
+msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed."
+msgstr ""
+
+msgid "Invalid VLAN ID given! Only unique IDs are allowed"
+msgstr ""
+
+msgid "Invalid username and/or password! Please try again."
+msgstr ""
+
+msgid "Isolate Clients"
+msgstr ""
+
+msgid ""
+"It appears that you are trying to flash an image that does not fit into the "
+"flash memory, please verify the image file!"
+msgstr ""
+
+msgid "JavaScript required!"
+msgstr ""
+
+msgid "Join Network"
+msgstr "ë„¤íŠ¸ì›Œí¬ ì—°ê²°"
+
+msgid "Join Network: Wireless Scan"
+msgstr "ë„¤íŠ¸ì›Œí¬ ì—°ê²°: 무선랜 스캔 ê²°ê³¼"
+
+msgid "Joining Network: %q"
+msgstr "ë„¤íŠ¸ì›Œí¬ ì—°ê²°ì¤‘: %q"
+
+msgid "Keep settings"
+msgstr "설정 유지"
+
+msgid "Kernel Log"
+msgstr "Kernel 로그"
+
+msgid "Kernel Version"
+msgstr "Kernel 버전"
+
+msgid "Key"
+msgstr ""
+
+msgid "Key #%d"
+msgstr ""
+
+msgid "Kill"
+msgstr ""
+
+msgid "L2TP"
+msgstr ""
+
+msgid "L2TP Server"
+msgstr ""
+
+msgid "LCP echo failure threshold"
+msgstr ""
+
+msgid "LCP echo interval"
+msgstr ""
+
+msgid "LLC"
+msgstr ""
+
+msgid "Label"
+msgstr ""
+
+msgid "Language"
+msgstr "언어"
+
+msgid "Language and Style"
+msgstr "언어와 스타ì¼"
+
+msgid "Latency"
+msgstr ""
+
+msgid "Leaf"
+msgstr ""
+
+msgid "Lease time"
+msgstr "임대 시간"
+
+msgid "Lease validity time"
+msgstr ""
+
+msgid "Leasefile"
+msgstr ""
+
+msgid "Leasetime"
+msgstr "임대 시간"
+
+msgid "Leasetime remaining"
+msgstr "남아있는 임대 시간"
+
+msgid "Leave empty to autodetect"
+msgstr ""
+
+msgid "Leave empty to use the current WAN address"
+msgstr ""
+
+msgid "Legend:"
+msgstr ""
+
+msgid "Limit"
+msgstr "제한"
+
+msgid "Limit DNS service to subnets interfaces on which we are serving DNS."
+msgstr ""
+"DNS 를 제공하기로한 subnet ì¸í„°íŽ˜ì´ìŠ¤ë“¤ì— 대해서만 DNS 서비스를 제공합니다."
+
+msgid "Limit listening to these interfaces, and loopback."
+msgstr ""
+
+msgid "Line Attenuation (LATN)"
+msgstr ""
+
+msgid "Line Mode"
+msgstr ""
+
+msgid "Line State"
+msgstr ""
+
+msgid "Line Uptime"
+msgstr ""
+
+msgid "Link On"
+msgstr ""
+
+msgid ""
+"List of <abbr title=\"Domain Name System\">DNS</abbr> servers to forward "
+"requests to"
+msgstr ""
+
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
+msgid "List of SSH key files for auth"
+msgstr ""
+
+msgid "List of domains to allow RFC1918 responses for"
+msgstr ""
+
+msgid "List of hosts that supply bogus NX domain results"
+msgstr ""
+
+msgid "Listen Interfaces"
+msgstr ""
+
+msgid "Listen Port"
+msgstr ""
+
+msgid "Listen only on the given interface or, if unspecified, on all"
+msgstr ""
+"지정한 ì¸í„°íŽ˜ì´ìŠ¤ì—만 listening 하며 미지정시 모든 ì¸í„°íŽ˜ì´ìŠ¤ì— ì ìš©ë©ë‹ˆë‹¤"
+
+msgid "Listening port for inbound DNS queries"
+msgstr ""
+
+msgid "Load"
+msgstr "부하"
+
+msgid "Load Average"
+msgstr "부하 í‰ê· "
+
+msgid "Loading"
+msgstr ""
+
+msgid "Local IP address to assign"
+msgstr ""
+
+msgid "Local IPv4 address"
+msgstr ""
+
+msgid "Local IPv6 address"
+msgstr ""
+
+msgid "Local Service Only"
+msgstr ""
+
+msgid "Local Startup"
+msgstr "Local 시작 프로그램"
+
+msgid "Local Time"
+msgstr "지역 시간"
+
+msgid "Local domain"
+msgstr ""
+
+msgid ""
+"Local domain specification. Names matching this domain are never forwarded "
+"and are resolved from DHCP or hosts files only"
+msgstr ""
+
+msgid "Local domain suffix appended to DHCP names and hosts file entries"
+msgstr ""
+
+msgid "Local server"
+msgstr ""
+
+msgid ""
+"Localise hostname depending on the requesting subnet if multiple IPs are "
+"available"
+msgstr ""
+
+msgid "Localise queries"
+msgstr ""
+
+msgid "Locked to channel %s used by: %s"
+msgstr ""
+
+msgid "Log output level"
+msgstr "Log output 레벨"
+
+msgid "Log queries"
+msgstr ""
+
+msgid "Logging"
+msgstr ""
+
+msgid "Login"
+msgstr "로그ì¸"
+
+msgid "Logout"
+msgstr "로그아웃"
+
+msgid "Loss of Signal Seconds (LOSS)"
+msgstr ""
+
+msgid "Lowest leased address as offset from the network address."
+msgstr "임대ë˜ëŠ” ì£¼ì†Œì˜ ìµœì†Œ 시작ì . (ë„¤íŠ¸ì›Œí¬ ì£¼ì†Œë¡œ ë¶€í„°ì˜ offset)"
+
+msgid "MAC-Address"
+msgstr "MAC-주소"
+
+msgid "MAC-Address Filter"
+msgstr "MAC-주소 필터"
+
+msgid "MAC-Filter"
+msgstr "MAC-í•„í„°"
+
+msgid "MAC-List"
+msgstr ""
+
+msgid "MAP / LW4over6"
+msgstr ""
+
+msgid "MB/s"
+msgstr ""
+
+msgid "MD5"
+msgstr ""
+
+msgid "MHz"
+msgstr ""
+
+msgid "MTU"
+msgstr ""
+
+msgid ""
+"Make sure to clone the root filesystem using something like the commands "
+"below:"
+msgstr ""
+
+msgid "Manual"
+msgstr ""
+
+msgid "Max. Attainable Data Rate (ATTNDR)"
+msgstr ""
+
+msgid "Maximum allowed number of active DHCP leases"
+msgstr "Active DHCP lease ê±´ì˜ ìµœëŒ€ 허용 숫ìž"
+
+msgid "Maximum allowed number of concurrent DNS queries"
+msgstr "허용ë˜ëŠ” 최대 ë™ì‹œ DNS query 수"
+
+msgid "Maximum allowed size of EDNS.0 UDP packets"
+msgstr "í—ˆìš©ëœ ìµœëŒ€ EDNS.0 UDP 패킷 í¬ê¸°"
+
+msgid "Maximum amount of seconds to wait for the modem to become ready"
+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 "ìž„ëŒ€ë  ìˆ˜ 있는 ì£¼ì†Œì˜ ìµœëŒ€ 숫ìž."
+
+msgid "Mbit/s"
+msgstr ""
+
+msgid "Memory"
+msgstr "메모리"
+
+msgid "Memory usage (%)"
+msgstr "메모리 사용량 (%)"
+
+msgid "Metric"
+msgstr ""
+
+msgid "Minimum hold time"
+msgstr ""
+
+msgid "Mirror monitor port"
+msgstr ""
+
+msgid "Mirror source port"
+msgstr ""
+
+msgid "Missing protocol extension for proto %q"
+msgstr ""
+
+msgid "Mobility Domain"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Model"
+msgstr "모ë¸"
+
+msgid "Modem device"
+msgstr ""
+
+msgid "Modem init timeout"
+msgstr ""
+
+msgid "Monitor"
+msgstr ""
+
+msgid "Mount Entry"
+msgstr ""
+
+msgid "Mount Point"
+msgstr ""
+
+msgid "Mount Points"
+msgstr ""
+
+msgid "Mount Points - Mount Entry"
+msgstr ""
+
+msgid "Mount Points - Swap Entry"
+msgstr ""
+
+msgid ""
+"Mount Points define at which point a memory device will be attached to the "
+"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 ""
+
+msgid "Move down"
+msgstr ""
+
+msgid "Move up"
+msgstr ""
+
+msgid "Multicast address"
+msgstr ""
+
+msgid "NAS ID"
+msgstr ""
+
+msgid "NAT-T Mode"
+msgstr ""
+
+msgid "NAT64 Prefix"
+msgstr ""
+
+msgid "NCM"
+msgstr ""
+
+msgid "NDP-Proxy"
+msgstr ""
+
+msgid "NT Domain"
+msgstr ""
+
+msgid "NTP server candidates"
+msgstr "NTP 서버 목ë¡"
+
+msgid "NTP sync time-out"
+msgstr ""
+
+msgid "Name"
+msgstr "ì´ë¦„"
+
+msgid "Name of the new interface"
+msgstr ""
+
+msgid "Name of the new network"
+msgstr ""
+
+msgid "Navigation"
+msgstr ""
+
+msgid "Netmask"
+msgstr ""
+
+msgid "Network"
+msgstr "네트워í¬"
+
+msgid "Network Utilities"
+msgstr "ë„¤íŠ¸ì›Œí¬ ìœ í‹¸ë¦¬í‹°"
+
+msgid "Network boot image"
+msgstr "ë„¤íŠ¸ì›Œí¬ boot ì´ë¯¸ì§€"
+
+msgid "Network without interfaces."
+msgstr ""
+
+msgid "Next »"
+msgstr ""
+
+msgid "No DHCP Server configured for this interface"
+msgstr ""
+
+msgid "No NAT-T"
+msgstr ""
+
+msgid "No chains in this table"
+msgstr "ì´ table ì—는 ì •ì˜ëœ chain ì´ ì—†ìŒ"
+
+msgid "No files found"
+msgstr ""
+
+msgid "No information available"
+msgstr "ì´ìš© 가능한 ì •ë³´ê°€ 없습니다"
+
+msgid "No negative cache"
+msgstr ""
+
+msgid "No network configured on this device"
+msgstr ""
+
+msgid "No network name specified"
+msgstr ""
+
+msgid "No package lists available"
+msgstr ""
+
+msgid "No password set!"
+msgstr "암호 ì„¤ì •ì„ í•´ì£¼ì„¸ìš”!"
+
+msgid "No rules in this chain"
+msgstr ""
+
+msgid "No zone assigned"
+msgstr ""
+
+msgid "Noise"
+msgstr "ë…¸ì´ì¦ˆ"
+
+msgid "Noise Margin (SNR)"
+msgstr ""
+
+msgid "Noise:"
+msgstr ""
+
+msgid "Non Pre-emtive CRC errors (CRC_P)"
+msgstr ""
+
+msgid "Non-wildcard"
+msgstr ""
+
+msgid "None"
+msgstr ""
+
+msgid "Normal"
+msgstr ""
+
+msgid "Not Found"
+msgstr ""
+
+msgid "Not associated"
+msgstr ""
+
+msgid "Not connected"
+msgstr "ì—°ê²°ë˜ì§€ ì•ŠìŒ"
+
+msgid "Note: Configuration files will be erased."
+msgstr ""
+
+msgid "Note: interface name length"
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "Nslookup"
+msgstr ""
+
+msgid "OK"
+msgstr ""
+
+msgid "OPKG-Configuration"
+msgstr "OPKG-설정"
+
+msgid "Obfuscated Group Password"
+msgstr ""
+
+msgid "Obfuscated Password"
+msgstr ""
+
+msgid "Off-State Delay"
+msgstr ""
+
+msgid ""
+"On this page you can configure the network interfaces. You can bridge "
+"several interfaces by ticking the \"bridge interfaces\" field and enter the "
+"names of several network interfaces separated by spaces. You can also use "
+"<abbr title=\"Virtual Local Area Network\">VLAN</abbr> notation "
+"<samp>INTERFACE.VLANNR</samp> (<abbr title=\"for example\">e.g.</abbr>: "
+"<samp>eth0.1</samp>)."
+msgstr ""
+"ì´ íŽ˜ì´ì§€ì—서는 ë„¤íŠ¸ì›Œí¬ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 설정할 수 있습니다. \"Bridge ì¸í„°íŽ˜ì´ìŠ¤"
+"\" í•­ëª©ì„ í´ë¦­í•˜ê³ , 공백으로 êµ¬ë¶„ëœ ë„¤íŠ¸ì›Œí¬ ì¸í„°íŽ˜ì´ìŠ¤ë“¤ì˜ ì´ë¦„ì„ ì ëŠ” ë°©ì‹"
+"으로 여러 ì¸í„°íŽ˜ì´ìŠ¤ë“¤ì„ bridge í•  수 있습니다. ë˜í•œ <abbr title=\"Virtual "
+"Local Area Network\">VLAN</abbr> í‘œê¸°ë²•ì¸ <samp>INTERFACE.VLANNR</samp> "
+"(<abbr title=\"for example\">예</abbr>: <samp>eth0.1</samp>) 를 사용하실 수 "
+"있습니다."
+
+msgid "On-State Delay"
+msgstr ""
+
+msgid "One of hostname or mac address must be specified!"
+msgstr ""
+
+msgid "One or more fields contain invalid values!"
+msgstr ""
+
+msgid "One or more invalid/required values on tab"
+msgstr ""
+
+msgid "One or more required fields have no value!"
+msgstr ""
+
+msgid "Open list..."
+msgstr "ëª©ë¡ ì—´ëžŒ..."
+
+msgid "OpenConnect (CISCO AnyConnect)"
+msgstr ""
+
+msgid "Operating frequency"
+msgstr "ë™ìž‘ 주파수"
+
+msgid "Option changed"
+msgstr "ë³€ê²½ëœ option"
+
+msgid "Option removed"
+msgstr "ì‚­ì œëœ option"
+
+msgid "Optional"
+msgstr ""
+
+msgid "Optional, specify to override default server (tic.sixxs.net)"
+msgstr ""
+
+msgid "Optional, use when the SIXXS account has more than one tunnel"
+msgstr ""
+
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
+msgid "Options"
+msgstr ""
+
+msgid "Other:"
+msgstr ""
+
+msgid "Out"
+msgstr ""
+
+msgid "Outbound:"
+msgstr ""
+
+msgid "Output Interface"
+msgstr ""
+
+msgid "Override MAC address"
+msgstr "MAC 주소 ë®ì–´ì“°ê¸°"
+
+msgid "Override MTU"
+msgstr "MTU ë®ì–´ì“°ê¸°"
+
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
+msgid "Override default interface name"
+msgstr "기본 ì¸í„°íŽ˜ì´ìŠ¤ ì´ë¦„ì„ ë®ì–´ì”니다"
+
+msgid "Override the gateway in DHCP responses"
+msgstr ""
+
+msgid ""
+"Override the netmask sent to clients. Normally it is calculated from the "
+"subnet that is served."
+msgstr ""
+"Client ì— ì „ë‹¬ë  netmask 를 ë®ì–´ 쓸 수 있습니다. 보통 해당 ê°’ì€ ì œê³µë˜ëŠ” "
+"subnet ì— ë”°ë¼ ìžë™ 계산ë©ë‹ˆë‹¤."
+
+msgid "Override the table used for internal routes"
+msgstr ""
+
+msgid "Overview"
+msgstr "개요"
+
+msgid "Owner"
+msgstr ""
+
+msgid "PAP/CHAP password"
+msgstr ""
+
+msgid "PAP/CHAP username"
+msgstr ""
+
+msgid "PID"
+msgstr ""
+
+msgid "PIN"
+msgstr ""
+
+msgid "PMK R1 Push"
+msgstr ""
+
+msgid "PPP"
+msgstr ""
+
+msgid "PPPoA Encapsulation"
+msgstr ""
+
+msgid "PPPoATM"
+msgstr ""
+
+msgid "PPPoE"
+msgstr ""
+
+msgid "PPPoSSH"
+msgstr ""
+
+msgid "PPtP"
+msgstr ""
+
+msgid "PSID offset"
+msgstr ""
+
+msgid "PSID-bits length"
+msgstr ""
+
+msgid "PTM/EFM (Packet Transfer Mode)"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Package lists are older than 24 hours"
+msgstr ""
+
+msgid "Package name"
+msgstr "패키지 ì´ë¦„"
+
+msgid "Packets"
+msgstr ""
+
+msgid "Part of zone %q"
+msgstr ""
+
+msgid "Password"
+msgstr "암호"
+
+msgid "Password authentication"
+msgstr "암호 ì¸ì¦"
+
+msgid "Password of Private Key"
+msgstr ""
+
+msgid "Password of inner Private Key"
+msgstr ""
+
+msgid "Password successfully changed!"
+msgstr ""
+
+msgid "Path to CA-Certificate"
+msgstr ""
+
+msgid "Path to Client-Certificate"
+msgstr ""
+
+msgid "Path to Private Key"
+msgstr ""
+
+msgid "Path to executable which handles the button event"
+msgstr ""
+
+msgid "Path to inner CA-Certificate"
+msgstr ""
+
+msgid "Path to inner Client-Certificate"
+msgstr ""
+
+msgid "Path to inner Private Key"
+msgstr ""
+
+msgid "Peak:"
+msgstr "최고치:"
+
+msgid "Peer IP address to assign"
+msgstr ""
+
+msgid "Peers"
+msgstr ""
+
+msgid "Perfect Forward Secrecy"
+msgstr ""
+
+msgid "Perform reboot"
+msgstr "재부팅하기"
+
+msgid "Perform reset"
+msgstr "Reset 하기"
+
+msgid "Persistent Keep Alive"
+msgstr ""
+
+msgid "Phy Rate:"
+msgstr ""
+
+msgid "Physical Settings"
+msgstr "Physical 설정"
+
+msgid "Ping"
+msgstr ""
+
+msgid "Pkts."
+msgstr "Pkts."
+
+msgid "Please enter your username and password."
+msgstr "사용ìžì´ë¦„ê³¼ 암호를 입력해 주세요."
+
+msgid "Policy"
+msgstr ""
+
+msgid "Port"
+msgstr "í¬íŠ¸"
+
+msgid "Port status:"
+msgstr "í¬íŠ¸ ìƒíƒœ:"
+
+msgid "Power Management Mode"
+msgstr ""
+
+msgid "Pre-emtive CRC errors (CRCP_P)"
+msgstr ""
+
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
+msgid ""
+"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
+"ignore failures"
+msgstr ""
+
+msgid "Prevent listening on these interfaces."
+msgstr ""
+
+msgid "Prevents client-to-client communication"
+msgstr ""
+
+msgid "Prism2/2.5/3 802.11b Wireless Controller"
+msgstr ""
+
+msgid "Private Key"
+msgstr ""
+
+msgid "Proceed"
+msgstr ""
+
+msgid "Processes"
+msgstr "프로세스"
+
+msgid "Profile"
+msgstr ""
+
+msgid "Prot."
+msgstr "Prot."
+
+msgid "Protocol"
+msgstr "프로토콜"
+
+msgid "Protocol family"
+msgstr ""
+
+msgid "Protocol of the new interface"
+msgstr ""
+
+msgid "Protocol support is not installed"
+msgstr ""
+
+msgid "Provide NTP server"
+msgstr ""
+
+msgid "Provide new network"
+msgstr "새로운 네트워í¬ë¥¼ 추가합니다"
+
+msgid "Pseudo Ad-Hoc (ahdemo)"
+msgstr ""
+
+msgid "Public Key"
+msgstr ""
+
+msgid "Public prefix routed to this device for distribution to clients."
+msgstr ""
+
+msgid "QMI Cellular"
+msgstr ""
+
+msgid "Quality"
+msgstr ""
+
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
+msgid "RFC3947 NAT-T mode"
+msgstr ""
+
+msgid "RTS/CTS Threshold"
+msgstr ""
+
+msgid "RX"
+msgstr ""
+
+msgid "RX Rate"
+msgstr ""
+
+msgid "RaLink 802.11%s Wireless Controller"
+msgstr ""
+
+msgid "Radius-Accounting-Port"
+msgstr ""
+
+msgid "Radius-Accounting-Secret"
+msgstr ""
+
+msgid "Radius-Accounting-Server"
+msgstr ""
+
+msgid "Radius-Authentication-Port"
+msgstr ""
+
+msgid "Radius-Authentication-Secret"
+msgstr ""
+
+msgid "Radius-Authentication-Server"
+msgstr ""
+
+msgid ""
+"Read <code>/etc/ethers</code> to configure the <abbr title=\"Dynamic Host "
+"Configuration Protocol\">DHCP</abbr>-Server"
+msgstr ""
+"<code>/etc/ethers</code> 파ì¼ì„ ì½ì–´ <abbr title=\"Dynamic Host "
+"Configuration Protocol\">DHCP</abbr>-서버를 설정합니다"
+
+msgid ""
+"Really delete this interface? The deletion cannot be undone!\\nYou might "
+"lose access to this device if you are connected via this interface."
+msgstr ""
+
+msgid ""
+"Really delete this wireless network? The deletion cannot be undone!\\nYou "
+"might lose access to this device if you are connected via this network."
+msgstr ""
+
+msgid "Really reset all changes?"
+msgstr ""
+
+msgid ""
+"Really shut down network?\\nYou might lose access to this device if you are "
+"connected via this interface."
+msgstr ""
+"ì •ë§ë¡œ 네트워í¬ë¥¼ shutdown 하시겠습니까?\\nì´ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 통해 연결하였다면 "
+"ì ‘ì†ì´ ëŠì–´ì§ˆ 수 있습니다."
+
+msgid ""
+"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
+"you are connected via this interface."
+msgstr ""
+
+msgid "Really switch protocol?"
+msgstr "ì •ë§ í”„ë¡œí† ì½œ ë³€ê²½ì„ ì›í•˜ì„¸ìš”?"
+
+msgid "Realtime Connections"
+msgstr "실시간 연결수"
+
+msgid "Realtime Graphs"
+msgstr "실시간 그래프"
+
+msgid "Realtime Load"
+msgstr "실시간 부하"
+
+msgid "Realtime Traffic"
+msgstr "실시간 트래픽"
+
+msgid "Realtime Wireless"
+msgstr ""
+
+msgid "Reassociation Deadline"
+msgstr ""
+
+msgid "Rebind protection"
+msgstr ""
+
+msgid "Reboot"
+msgstr "재부팅"
+
+msgid "Rebooting..."
+msgstr ""
+
+msgid "Reboots the operating system of your device"
+msgstr "ìž¥ì¹˜ì˜ ìš´ì˜ì²´ì œë¥¼ 재부팅합니다"
+
+msgid "Receive"
+msgstr ""
+
+msgid "Receiver Antenna"
+msgstr ""
+
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
+msgid "Reconnect this interface"
+msgstr "ì´ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 재연결합니다"
+
+msgid "Reconnecting interface"
+msgstr "ì¸í„°íŽ˜ì´ìŠ¤ 재연결중입니다"
+
+msgid "References"
+msgstr ""
+
+msgid "Relay"
+msgstr ""
+
+msgid "Relay Bridge"
+msgstr ""
+
+msgid "Relay between networks"
+msgstr ""
+
+msgid "Relay bridge"
+msgstr ""
+
+msgid "Remote IPv4 address"
+msgstr ""
+
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
+msgid "Remove"
+msgstr "제거"
+
+msgid "Repeat scan"
+msgstr ""
+
+msgid "Replace entry"
+msgstr ""
+
+msgid "Replace wireless configuration"
+msgstr ""
+
+msgid "Request IPv6-address"
+msgstr ""
+
+msgid "Request IPv6-prefix of length"
+msgstr ""
+
+msgid "Require TLS"
+msgstr ""
+
+msgid "Required"
+msgstr ""
+
+msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
+msgstr "특정 ISP ë“¤ì— ìš”êµ¬ë¨. 예: Charter (DOCSIS 3 기반)"
+
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
+msgid ""
+"Requires upstream supports DNSSEC; verify unsigned domain responses really "
+"come from unsigned domains"
+msgstr ""
+
+msgid "Reset"
+msgstr "초기화"
+
+msgid "Reset Counters"
+msgstr "Counter 초기화"
+
+msgid "Reset to defaults"
+msgstr "초기값으로 reset"
+
+msgid "Resolv and Hosts Files"
+msgstr "Resolv 와 Hosts 파ì¼"
+
+msgid "Resolve file"
+msgstr "Resolve 파ì¼"
+
+msgid "Restart"
+msgstr "재시작"
+
+msgid "Restart Firewall"
+msgstr "방화벽 재시작"
+
+msgid "Restore backup"
+msgstr "백업 복구"
+
+msgid "Reveal/hide password"
+msgstr "암호 ë³´ì´ê¸°/숨기기"
+
+msgid "Revert"
+msgstr "변경 취소"
+
+msgid "Root"
+msgstr ""
+
+msgid "Root directory for files served via TFTP"
+msgstr "TFTP 를 통해 제공ë˜ëŠ” 파ì¼ë“¤ì˜ root 디렉토리"
+
+msgid "Root preparation"
+msgstr ""
+
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
+msgid "Routed IPv6 prefix for downstream interfaces"
+msgstr ""
+
+msgid "Router Advertisement-Service"
+msgstr ""
+
+msgid "Router Password"
+msgstr "ë¼ìš°í„° 암호"
+
+msgid "Routes"
+msgstr "Route 경로"
+
+msgid ""
+"Routes specify over which interface and gateway a certain host or network "
+"can be reached."
+msgstr ""
+"Route 경로는 특정 호스트 í˜¹ì€ ë„¤íŠ¸ì›Œí¬ê°€ 사용해야 í•  ì¸í„°íŽ˜ì´ìŠ¤ì™€ gateway ì •"
+"보를 나타냅니다."
+
+msgid "Run a filesystem check before mounting the device"
+msgstr ""
+
+msgid "Run filesystem check"
+msgstr ""
+
+msgid "SHA256"
+msgstr ""
+
+msgid ""
+"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
+"use 6in4 instead"
+msgstr ""
+
+msgid "SIXXS-handle[/Tunnel-ID]"
+msgstr ""
+
+msgid "SNR"
+msgstr ""
+
+msgid "SSH Access"
+msgstr ""
+
+msgid "SSH server address"
+msgstr ""
+
+msgid "SSH server port"
+msgstr ""
+
+msgid "SSH username"
+msgstr ""
+
+msgid "SSH-Keys"
+msgstr ""
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid "Save"
+msgstr "저장"
+
+msgid "Save & Apply"
+msgstr "저장 & ì ìš©"
+
+msgid "Save &#38; Apply"
+msgstr "저장 &#38; ì ìš©"
+
+msgid "Scan"
+msgstr "Scan 하기"
+
+msgid "Scheduled Tasks"
+msgstr "작업 관리"
+
+msgid "Section added"
+msgstr "ì¶”ê°€ëœ section"
+
+msgid "Section removed"
+msgstr "ì‚­ì œëœ section"
+
+msgid "See \"mount\" manpage for details"
+msgstr ""
+
+msgid ""
+"Send LCP echo requests at the given interval in seconds, only effective in "
+"conjunction with failure threshold"
+msgstr ""
+
+msgid "Separate Clients"
+msgstr ""
+
+msgid "Server Settings"
+msgstr "서버 설정"
+
+msgid "Server password"
+msgstr ""
+
+msgid ""
+"Server password, enter the specific password of the tunnel when the username "
+"contains the tunnel ID"
+msgstr ""
+
+msgid "Server username"
+msgstr ""
+
+msgid "Service Name"
+msgstr ""
+
+msgid "Service Type"
+msgstr ""
+
+msgid "Services"
+msgstr "서비스"
+
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
+msgid "Set up Time Synchronization"
+msgstr ""
+
+msgid "Setup DHCP Server"
+msgstr ""
+
+msgid "Severely Errored Seconds (SES)"
+msgstr ""
+
+msgid "Short GI"
+msgstr ""
+
+msgid "Show current backup file list"
+msgstr "현재 백업 íŒŒì¼ ëª©ë¡ ë³´ê¸°"
+
+msgid "Shutdown this interface"
+msgstr "ì´ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 정지합니다"
+
+msgid "Shutdown this network"
+msgstr "ì´ ë„¤íŠ¸ì›Œí¬ë¥¼ shutdown 합니다"
+
+msgid "Signal"
+msgstr "신호"
+
+msgid "Signal Attenuation (SATN)"
+msgstr ""
+
+msgid "Signal:"
+msgstr ""
+
+msgid "Size"
+msgstr "Size"
+
+msgid "Size (.ipk)"
+msgstr "í¬ê¸° (.ipk)"
+
+msgid "Skip"
+msgstr ""
+
+msgid "Skip to content"
+msgstr ""
+
+msgid "Skip to navigation"
+msgstr ""
+
+msgid "Slot time"
+msgstr ""
+
+msgid "Software"
+msgstr "소프트웨어"
+
+msgid "Software VLAN"
+msgstr ""
+
+msgid "Some fields are invalid, cannot save values!"
+msgstr ""
+
+msgid "Sorry, the object you requested was not found."
+msgstr ""
+
+msgid "Sorry, the server encountered an unexpected error."
+msgstr ""
+
+msgid ""
+"Sorry, there is no sysupgrade support present; a new firmware image must be "
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
+msgstr ""
+
+msgid "Sort"
+msgstr "순서"
+
+msgid "Source"
+msgstr ""
+
+msgid "Source routing"
+msgstr ""
+
+msgid "Specifies the button state to handle"
+msgstr ""
+
+msgid "Specifies the directory the device is attached to"
+msgstr ""
+
+msgid "Specifies the listening port of this <em>Dropbear</em> instance"
+msgstr "<em>Dropbear</em> instance ì˜ listening í¬íŠ¸ë¥¼ 지정합니다"
+
+msgid ""
+"Specifies the maximum amount of failed ARP requests until hosts are presumed "
+"to be dead"
+msgstr ""
+
+msgid ""
+"Specifies the maximum amount of seconds after which hosts are presumed to be "
+"dead"
+msgstr ""
+
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
+msgid "Specify the secret encryption key here."
+msgstr ""
+
+msgid "Start"
+msgstr "시작"
+
+msgid "Start priority"
+msgstr "시작 우선순위"
+
+msgid "Startup"
+msgstr "시작 프로그램"
+
+msgid "Static IPv4 Routes"
+msgstr "Static IPv4 Route 경로"
+
+msgid "Static IPv6 Routes"
+msgstr "Static IPv6 Route 경로"
+
+msgid "Static Leases"
+msgstr "Static Lease 들"
+
+msgid "Static Routes"
+msgstr "Static Route 경로"
+
+msgid "Static address"
+msgstr ""
+
+msgid ""
+"Static leases are used to assign fixed IP addresses and symbolic hostnames "
+"to DHCP clients. They are also required for non-dynamic interface "
+"configurations where only hosts with a corresponding lease are served."
+msgstr ""
+"Static Lease 는 DHCP client ì—게 ê³ ì •ëœ IP 주소와 symbolic hostname ì„ í• ë‹¹"
+"í•  ë•Œ 사용ë©ë‹ˆë‹¤. ì´ ê¸°ëŠ¥ì€ ë˜í•œ ì§€ì •ëœ host ì— ëŒ€í•´ì„œë§Œ 주소 임대를 하ë„ë¡ "
+"하는 non-dynamic ì¸í„°íŽ˜ì´ìŠ¤ 설정ì—ë„ ì‚¬ìš©ë©ë‹ˆë‹¤."
+
+msgid "Status"
+msgstr "ìƒíƒœ"
+
+msgid "Stop"
+msgstr "정지"
+
+msgid "Strict order"
+msgstr "Strict order"
+
+msgid "Submit"
+msgstr "제출하기"
+
+msgid "Suppress logging"
+msgstr ""
+
+msgid "Suppress logging of the routine operation of these protocols"
+msgstr ""
+
+msgid "Swap"
+msgstr ""
+
+msgid "Swap Entry"
+msgstr ""
+
+msgid "Switch"
+msgstr "스위치"
+
+msgid "Switch %q"
+msgstr "스위치 %q"
+
+msgid "Switch %q (%s)"
+msgstr "스위치 %q (%s)"
+
+msgid ""
+"Switch %q has an unknown topology - the VLAN settings might not be accurate."
+msgstr ""
+
+msgid "Switch VLAN"
+msgstr "스위치 VLAN"
+
+msgid "Switch protocol"
+msgstr "프로토콜 변경"
+
+msgid "Sync with browser"
+msgstr "브ë¼ìš°ì € 시간대로 ë™ê¸°í™”"
+
+msgid "Synchronizing..."
+msgstr ""
+
+msgid "System"
+msgstr "시스템"
+
+msgid "System Log"
+msgstr "시스템 로그"
+
+msgid "System Properties"
+msgstr "시스템 ë“±ë¡ ì •ë³´"
+
+msgid "System log buffer size"
+msgstr "System log ë²„í¼ í¬ê¸°"
+
+msgid "TCP:"
+msgstr ""
+
+msgid "TFTP Settings"
+msgstr "TFTP 설정"
+
+msgid "TFTP server root"
+msgstr "TFTP 서버 root"
+
+msgid "TX"
+msgstr "TX"
+
+msgid "TX Rate"
+msgstr ""
+
+msgid "Table"
+msgstr ""
+
+msgid "Target"
+msgstr ""
+
+msgid "Target network"
+msgstr ""
+
+msgid "Terminate"
+msgstr ""
+
+msgid ""
+"The <em>Device Configuration</em> section covers physical settings of the "
+"radio hardware such as channel, transmit power or antenna selection which "
+"are shared among all defined wireless networks (if the radio hardware is "
+"multi-SSID capable). Per network settings like encryption or operation mode "
+"are grouped in the <em>Interface Configuration</em>."
+msgstr ""
+"<em>장치 설정<em> ì„¹ì…˜ì€ channel, transmit power í˜¹ì€ antenna ì„ íƒê³¼ ê°™ì€ ë¬¼"
+"리ì ì¸ 설정 ë‚´ìš©ì„ ë‹¤ë£¹ë‹ˆë‹¤. ì´ ì„¤ì •ì€ (만약 radio 하드웨어가 multi-SSID 지"
+"ì›ì´ 가능하다면) ì •ì˜ëœ 모든 무선 네트워í¬ì— 공통ì ìœ¼ë¡œ ì ìš©ë©ë‹ˆë‹¤. 암호화 혹"
+"ì€ operation mode 와 ê°™ì€ ê° ë„¤íŠ¸ì›Œí¬ ì„¤ì •ë“¤ì€ <em>ì¸í„°íŽ˜ì´ìŠ¤ 설정</em>ì—ì„œ "
+"다루어집니다."
+
+msgid ""
+"The <em>libiwinfo-lua</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The HE.net endpoint update configuration changed, you must now use the plain "
+"username instead of the user ID!"
+msgstr ""
+
+msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
+"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
+msgstr ""
+
+msgid ""
+"The allowed characters are: <code>A-Z</code>, <code>a-z</code>, <code>0-9</"
+"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>)"
+msgstr ""
+
+msgid ""
+"The filesystem that was used to format the memory (<abbr title=\"for example"
+"\">e.g.</abbr> <samp><abbr title=\"Third Extended Filesystem\">ext3</abbr></"
+"samp>)"
+msgstr ""
+
+msgid ""
+"The flash image was uploaded. Below is the checksum and file size listed, "
+"compare them with the original file to ensure data integrity.<br /> Click "
+"\"Proceed\" below to start the flash procedure."
+msgstr ""
+
+msgid "The following changes have been committed"
+msgstr ""
+
+msgid "The following changes have been reverted"
+msgstr "다ìŒì˜ 변경 ì‚¬í•­ë“¤ì´ ì·¨ì†Œë˜ì—ˆìŠµë‹ˆë‹¤"
+
+msgid "The following rules are currently active on this system."
+msgstr "다ìŒì˜ rule ë“¤ì´ í˜„ìž¬ ì´ ì‹œìŠ¤í…œì— ì ìš© 중입니다."
+
+msgid "The given network name is not unique"
+msgstr ""
+
+msgid ""
+"The hardware is not multi-SSID capable and the existing configuration will "
+"be replaced if you proceed."
+msgstr ""
+
+msgid ""
+"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 "
+"addresses."
+msgstr ""
+
+msgid "The length of the IPv6 prefix in bits"
+msgstr ""
+
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
+msgid ""
+"The network ports on this device can be combined to several <abbr title="
+"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
+"communicate directly with each other. <abbr title=\"Virtual Local Area "
+"Network\">VLAN</abbr>s are often used to separate different network "
+"segments. Often there is by default one Uplink port for a connection to the "
+"next greater network like the internet and other ports for a local network."
+msgstr ""
+"ì´ ìž¥ì¹˜ì˜ ë„¤íŠ¸ì›Œí¬ í¬íŠ¸ë“¤ì€ 컴퓨터ë¼ë¦¬ ì§ì ‘ í†µì‹ ì„ í•  수 있ë„ë¡ ì—¬ëŸ¬ <abbr "
+"title=\"Virtual Local Area Network\">VLAN</abbr> 으로 êµ¬ì„±ë  ìˆ˜ 있습니다. "
+"<abbr title=\"Virtual Local Area Network\">VLAN</abbr>ì€ ì¢…ì¢… 다른 ë„¤íŠ¸ì›Œí¬ "
+"segment ë“¤ì„ ë¶„ë¦¬í•˜ëŠ”ë° ì‚¬ìš©ë˜ê¸°ë„ 합니다. í•œ ê°œì˜ uplink í¬íŠ¸ê°€ ì¸í„°ë„·ì— ì—°"
+"ê²°ë˜ì–´ 있고 나머지 í¬íŠ¸ë“¤ì€ local 네트워í¬ë¡œ ì—°ê²°ë˜ëŠ” êµ¬ì„±ì— ìžì£¼ 사용ë©ë‹ˆë‹¤."
+
+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."
+msgstr ""
+
+msgid ""
+"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."
+msgstr ""
+
+msgid ""
+"The tunnel end-point is behind NAT, defaults to disabled and only applies to "
+"AYIYA"
+msgstr ""
+
+msgid ""
+"The uploaded image file does not contain a supported format. Make sure that "
+"you choose the generic image format for your platform."
+msgstr ""
+
+msgid "There are no active leases."
+msgstr ""
+
+msgid "There are no pending changes to apply!"
+msgstr ""
+
+msgid "There are no pending changes to revert!"
+msgstr ""
+
+msgid "There are no pending changes!"
+msgstr ""
+
+msgid ""
+"There is no device assigned yet, please attach a network device in the "
+"\"Physical Settings\" tab"
+msgstr ""
+
+msgid ""
+"There is no password set on this router. Please configure a root password to "
+"protect the web interface and enable SSH."
+msgstr ""
+"ì´ ê³µìœ ê¸°ì— ì•”í˜¸ ì„¤ì •ì´ ë˜ì§€ 않았습니다. 웹 UI 와 SSH ë¶€ë¶„ì„ ë³´í˜¸í•˜ê¸° 위해서 "
+"꼭 root 암호를 설정해 주세요."
+
+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."
+msgstr ""
+"ì´ê²ƒì€ sysupgrade ì‹œ 유지ë˜ì–´ì•¼ 하는 파ì¼ê³¼ 디렉토리 목ë¡ì— 대한 shell glob "
+"패턴들입니다. /etc/config/ í•˜ìœ„ì˜ ìˆ˜ì •ëœ íŒŒì¼ì´ë‚˜ 특정 다른 ì„¤ì •ë“¤ì€ ìžë™ì "
+"으로 변경 ì‚¬í•­ì´ ë³´ì¡´ë©ë‹ˆë‹¤."
+
+msgid ""
+"This is either the \"Update Key\" configured for the tunnel or the account "
+"password if no update key has been configured"
+msgstr ""
+
+msgid ""
+"This is the content of /etc/rc.local. Insert your own commands here (in "
+"front of 'exit 0') to execute them at the end of the boot process."
+msgstr ""
+"ì´ê²ƒì€ /etc/rc.local 파ì¼ì˜ 내용입니다. ì—¬ê¸°ì— ('exit 0' ì•žì—) 부팅 절차가 "
+"ëë‚  ë•Œ ì‹¤í–‰í•˜ê³ ìž í•˜ëŠ” ëª…ë ¹ë“¤ì„ ì‚½ìž…í•˜ì„¸ìš”."
+
+msgid ""
+"This is the local endpoint address assigned by the tunnel broker, it usually "
+"ends with <code>:2</code>"
+msgstr ""
+
+msgid ""
+"This is the only <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
+"abbr> in the local network"
+msgstr ""
+
+msgid "This is the plain username for logging into the account"
+msgstr ""
+
+msgid ""
+"This is the prefix routed to you by the tunnel broker for use by clients"
+msgstr ""
+
+msgid "This is the system crontab in which scheduled tasks can be defined."
+msgstr "아래는 ì˜ˆì •ëœ ìž‘ì—…ë“¤ì´ ì •ì˜ëœ 시스템 crontab 내용입니다."
+
+msgid ""
+"This is usually the address of the nearest PoP operated by the tunnel broker"
+msgstr ""
+
+msgid ""
+"This list gives an overview over currently running system processes and "
+"their status."
+msgstr ""
+"ì´ ëª©ë¡ì€ 현재 ì‹¤í–‰ì¤‘ì¸ ì‹œìŠ¤í…œ 프로세스와 해당 ìƒíƒœì— 대한 개요를 ë³´ì—¬ì¤ë‹ˆë‹¤."
+
+msgid "This page allows the configuration of custom button actions"
+msgstr ""
+
+msgid "This page gives an overview over currently active network connections."
+msgstr "ì´ íŽ˜ì´ì§€ëŠ” 현재 active ìƒíƒœì¸ ë„¤íŠ¸ì›Œí¬ ì—°ê²°ì„ ë³´ì—¬ì¤ë‹ˆë‹¤."
+
+msgid "This section contains no values yet"
+msgstr "ì´ section ì€ ì•„ì§ ìž…ë ¥ëœ ê°’ì´ ì—†ìŠµë‹ˆë‹¤"
+
+msgid "Time Synchronization"
+msgstr "시간 ë™ê¸°í™”"
+
+msgid "Time Synchronization is not configured yet."
+msgstr "시간 ë™ê¸°í™”ê°€ ì•„ì§ ì„¤ì •ë˜ì§€ 않았습니다."
+
+msgid "Timezone"
+msgstr "시간대"
+
+msgid ""
+"To restore configuration files, you can upload a previously generated backup "
+"archive here."
+msgstr ""
+"설정 파ì¼ì„ ë³µêµ¬í•˜ê³ ìž í•œë‹¤ë©´ ì´ì „ì— ë°±ì—…í•˜ì‹  ì•„ì¹´ì´ë¸Œ 파ì¼ì„ 여기로 업로드"
+"할 수 있습니다."
+
+msgid "Tone"
+msgstr ""
+
+msgid "Total Available"
+msgstr "ì´ ì´ìš© 가능한 ì–‘"
+
+msgid "Traceroute"
+msgstr ""
+
+msgid "Traffic"
+msgstr "트래픽"
+
+msgid "Transfer"
+msgstr "전송량"
+
+msgid "Transmission Rate"
+msgstr ""
+
+msgid "Transmit"
+msgstr ""
+
+msgid "Transmit Power"
+msgstr ""
+
+msgid "Transmitter Antenna"
+msgstr ""
+
+msgid "Trigger"
+msgstr ""
+
+msgid "Trigger Mode"
+msgstr ""
+
+msgid "Tunnel ID"
+msgstr ""
+
+msgid "Tunnel Interface"
+msgstr ""
+
+msgid "Tunnel Link"
+msgstr ""
+
+msgid "Tunnel broker protocol"
+msgstr ""
+
+msgid "Tunnel setup server"
+msgstr ""
+
+msgid "Tunnel type"
+msgstr ""
+
+msgid "Tx-Power"
+msgstr ""
+
+msgid "Type"
+msgstr "유형"
+
+msgid "UDP:"
+msgstr ""
+
+msgid "UMTS only"
+msgstr ""
+
+msgid "UMTS/GPRS/EV-DO"
+msgstr ""
+
+msgid "USB Device"
+msgstr ""
+
+msgid "USB Ports"
+msgstr ""
+
+msgid "UUID"
+msgstr ""
+
+msgid "Unable to dispatch"
+msgstr ""
+
+msgid "Unavailable Seconds (UAS)"
+msgstr ""
+
+msgid "Unknown"
+msgstr "알수없ìŒ"
+
+msgid "Unknown Error, password not changed!"
+msgstr ""
+
+msgid "Unmanaged"
+msgstr ""
+
+msgid "Unmount"
+msgstr ""
+
+msgid "Unsaved Changes"
+msgstr "ì ìš© ì•ˆëœ ë³€ê²½ 사항"
+
+msgid "Unsupported protocol type."
+msgstr ""
+
+msgid "Update lists"
+msgstr ""
+
+msgid ""
+"Upload a sysupgrade-compatible image here to replace the running firmware. "
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
+msgstr ""
+"ì‹¤í–‰ì¤‘ì¸ firmware ë³€ê²½ì„ í•˜ê³ ìž í•œë‹¤ë©´ ì—¬ê¸°ì— sysupgrade í˜¸í™˜ì„±ì´ ìœ ì§€ë˜ëŠ” ì´"
+"미지를 업로드하세요. í˜„ìž¬ì˜ ì„¤ì •ì„ ìœ ì§€í•˜ê³ ìž í•œë‹¤ë©´ \"설정 유지\" 를 ì²´í¬í•˜"
+"세요. (ì´ë¥¼ 지ì›í•˜ëŠ” firmware ì´ë¯¸ì§€ í•„ìš”)"
+
+msgid "Upload archive..."
+msgstr "ì•„ì¹´ì´ë¸Œ 업로드..."
+
+msgid "Uploaded File"
+msgstr "Uploaded File"
+
+msgid "Uptime"
+msgstr "ê°€ë™ ì‹œê°„"
+
+msgid "Use <code>/etc/ethers</code>"
+msgstr "<code>/etc/ethers</code> 사용"
+
+msgid "Use DHCP gateway"
+msgstr ""
+
+msgid "Use DNS servers advertised by peer"
+msgstr "Peer 가 권장한 DNS 서버 사용"
+
+msgid "Use ISO/IEC 3166 alpha2 country codes."
+msgstr ""
+
+msgid "Use MTU on tunnel interface"
+msgstr ""
+
+msgid "Use TTL on tunnel interface"
+msgstr ""
+
+msgid "Use as external overlay (/overlay)"
+msgstr ""
+
+msgid "Use as root filesystem (/)"
+msgstr ""
+
+msgid "Use broadcast flag"
+msgstr "Broadcast flag 사용"
+
+msgid "Use builtin IPv6-management"
+msgstr "ìžì²´ 내장 IPv6-관리 기능 사용"
+
+msgid "Use custom DNS servers"
+msgstr "ìž„ì˜ì˜ DNS 서버 사용"
+
+msgid "Use default gateway"
+msgstr "Default gateway 사용"
+
+msgid "Use gateway metric"
+msgstr "Gateway metric 사용"
+
+msgid "Use routing table"
+msgstr "Routing table 사용"
+
+msgid ""
+"Use the <em>Add</em> Button to add a new lease entry. The <em>MAC-Address</"
+"em> indentifies the host, the <em>IPv4-Address</em> specifies to the fixed "
+"address to use and the <em>Hostname</em> is assigned as symbolic name to the "
+"requesting host. The optional <em>Lease time</em> can be used to set non-"
+"standard host-specific lease time, e.g. 12h, 3d or infinite."
+msgstr ""
+"새로운 í•­ëª©ì„ ì¶”ê°€í•˜ê¸° 위해서는 <em>추가</em> ë²„íŠ¼ì„ ì‚¬ìš©í•˜ì„¸ìš”. <em>MAC-주소"
+"</em>는 host 를 나타내며, <em>IPv4-주소</em>는 사용할 고정 주소를 나타내고, "
+"요청하는 host ì— ëŒ€í•´ <em>hostname</em> ì´ symbolic name 으로 부여ë©ë‹ˆë‹¤. ì„ "
+"íƒ ì‚¬í•­ì¸ <em>임대 시간</em>ì€ í•´ë‹¹ host ì—만 해당ë˜ëŠ” ì‹œê°ì„ ì„¤ì •í•˜ëŠ”ë° ì‚¬ìš©"
+"ë  ìˆ˜ 있습니다. 예를 들어 12h, 3d í˜¹ì€ infinite ê°’ë“¤ì´ ê°€ëŠ¥í•©ë‹ˆë‹¤."
+
+msgid "Used"
+msgstr ""
+
+msgid "Used Key Slot"
+msgstr ""
+
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
+msgid "User certificate (PEM encoded)"
+msgstr ""
+
+msgid "User key (PEM encoded)"
+msgstr ""
+
+msgid "Username"
+msgstr "사용ìžì´ë¦„"
+
+msgid "VC-Mux"
+msgstr ""
+
+msgid "VDSL"
+msgstr ""
+
+msgid "VLANs on %q"
+msgstr ""
+
+msgid "VLANs on %q (%s)"
+msgstr "VLAN 설정: %q (%s)"
+
+msgid "VPN Local address"
+msgstr ""
+
+msgid "VPN Local port"
+msgstr ""
+
+msgid "VPN Server"
+msgstr ""
+
+msgid "VPN Server port"
+msgstr ""
+
+msgid "VPN Server's certificate SHA1 hash"
+msgstr ""
+
+msgid "VPNC (CISCO 3000 (and others) VPN)"
+msgstr ""
+
+msgid "Vendor"
+msgstr ""
+
+msgid "Vendor Class to send when requesting DHCP"
+msgstr "DHCP 요청시 전송할 Vendor Class"
+
+msgid "Verbose"
+msgstr ""
+
+msgid "Verbose logging by aiccu daemon"
+msgstr ""
+
+msgid "Verify"
+msgstr ""
+
+msgid "Version"
+msgstr "버전"
+
+msgid "WDS"
+msgstr "WDS"
+
+msgid "WEP Open System"
+msgstr ""
+
+msgid "WEP Shared Key"
+msgstr ""
+
+msgid "WEP passphrase"
+msgstr ""
+
+msgid "WMM Mode"
+msgstr "WMM Mode"
+
+msgid "WPA passphrase"
+msgstr ""
+
+msgid ""
+"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP "
+"and ad-hoc mode) to be installed."
+msgstr ""
+
+msgid ""
+"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)"
+msgstr ""
+
+msgid "Waiting for changes to be applied..."
+msgstr "변경 ì‚¬í•­ì´ ì ìš©ë˜ê¸°ë¥¼ 기다리는 중입니다..."
+
+msgid "Waiting for command to complete..."
+msgstr "실행한 ëª…ë ¹ì´ ë나기를 기다리는 중입니다..."
+
+msgid "Waiting for device..."
+msgstr ""
+
+msgid "Warning"
+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 ""
+
+msgid "Whether to route only packets from delegated prefixes"
+msgstr ""
+
+msgid "Width"
+msgstr ""
+
+msgid "WireGuard VPN"
+msgstr ""
+
+msgid "Wireless"
+msgstr "무선"
+
+msgid "Wireless Adapter"
+msgstr ""
+
+msgid "Wireless Network"
+msgstr "무선랜 네트워í¬"
+
+msgid "Wireless Overview"
+msgstr "무선랜 개요"
+
+msgid "Wireless Security"
+msgstr "무선랜 보안"
+
+msgid "Wireless is disabled or not associated"
+msgstr "ë¬´ì„ ì´ ë¹„í™œì„±í™”ë˜ì–´ 있거나 ì—°ê²°ë˜ì–´ 있지 않습니다"
+
+msgid "Wireless is restarting..."
+msgstr "ë¬´ì„ ëžœì´ ìž¬ì‹œìž‘ì¤‘ìž…ë‹ˆë‹¤..."
+
+msgid "Wireless network is disabled"
+msgstr "무선 네트워í¬ê°€ 꺼져 있ìŒ"
+
+msgid "Wireless network is enabled"
+msgstr "무선 네트워í¬ê°€ 켜져 있ìŒ"
+
+msgid "Wireless restarted"
+msgstr "ë¬´ì„ ëžœì´ ìž¬ì‹œìž‘ë˜ì—ˆìŠµë‹ˆë‹¤"
+
+msgid "Wireless shut down"
+msgstr "ë¬´ì„ ëžœì´ shutdown ë˜ì—ˆìŠµë‹ˆë‹¤"
+
+msgid "Write received DNS requests to syslog"
+msgstr "ë°›ì€ DNS 요청 ë‚´ìš©ì„ systlog ì— ê¸°ë¡í•©ë‹ˆë‹¤"
+
+msgid "Write system log to file"
+msgstr "System log 출력 íŒŒì¼ ê²½ë¡œ"
+
+msgid ""
+"You can enable or disable installed init scripts here. Changes will applied "
+"after a device reboot.<br /><strong>Warning: If you disable essential init "
+"scripts like \"network\", your device might become inaccessible!</strong>"
+msgstr ""
+"ì´ ë©”ë‰´ì—ì„œ ì„¤ì¹˜ëœ init script 를 활성화/비활성화 í•  수 있습니다. 변경 사항"
+"ì€ ìž¥ì¹˜ê°€ 재부팅 ë  ë•Œ ì ìš©ë˜ê²Œ ë©ë‹ˆë‹¤.<br /><strong>경고: 만약 \"network\" "
+"와 ê°™ì€ ì¤‘ìš” init script 를 비활성화 í•  경우, ìž¥ì¹˜ì— ì ‘ì†ì„ 못하실 수 있습니"
+"다!</strong>"
+
+msgid ""
+"You must enable JavaScript in your browser or LuCI will not work properly."
+msgstr ""
+
+msgid ""
+"Your Internet Explorer is too old to display this page correctly. Please "
+"upgrade it to at least version 7 or use another browser like Firefox, Opera "
+"or Safari."
+msgstr ""
+
+msgid "any"
+msgstr ""
+
+msgid "auto"
+msgstr ""
+
+msgid "automatic"
+msgstr ""
+
+msgid "baseT"
+msgstr ""
+
+msgid "bridged"
+msgstr ""
+
+msgid "create:"
+msgstr ""
+
+msgid "creates a bridge over specified interface(s)"
+msgstr "지정한 ì¸í„°íŽ˜ì´ìŠ¤(들)ë¡œ êµ¬ì„±ëœ bridge 를 ìƒì„±í•©ë‹ˆë‹¤"
+
+msgid "dB"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "disable"
+msgstr ""
+
+msgid "disabled"
+msgstr ""
+
+msgid "expired"
+msgstr "만료ë¨"
+
+msgid ""
+"file where given <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
+"abbr>-leases will be stored"
+msgstr ""
+"í• ë‹¹ëœ <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>-lease "
+"ì •ë³´ê°€ 저장ë˜ëŠ” 파ì¼"
+
+msgid "forward"
+msgstr ""
+
+msgid "full-duplex"
+msgstr ""
+
+msgid "half-duplex"
+msgstr ""
+
+msgid "help"
+msgstr ""
+
+msgid "hidden"
+msgstr ""
+
+msgid "hybrid mode"
+msgstr ""
+
+msgid "if target is a network"
+msgstr "Target ì´ ë„¤íŠ¸ì›Œí¬ì¼ 경우"
+
+msgid "input"
+msgstr ""
+
+msgid "kB"
+msgstr ""
+
+msgid "kB/s"
+msgstr ""
+
+msgid "kbit/s"
+msgstr ""
+
+msgid "local <abbr title=\"Domain Name System\">DNS</abbr> file"
+msgstr "local <abbr title=\"Domain Name System\">DNS</abbr> 파ì¼"
+
+msgid "minimum 1280, maximum 1480"
+msgstr ""
+
+msgid "minutes"
+msgstr ""
+
+msgid "navigation Navigation"
+msgstr ""
+
+msgid "no"
+msgstr ""
+
+msgid "no link"
+msgstr "link ì—†ìŒ"
+
+msgid "none"
+msgstr ""
+
+msgid "not present"
+msgstr ""
+
+msgid "off"
+msgstr ""
+
+msgid "on"
+msgstr ""
+
+msgid "open"
+msgstr ""
+
+msgid "overlay"
+msgstr ""
+
+msgid "relay mode"
+msgstr ""
+
+msgid "routed"
+msgstr ""
+
+msgid "server mode"
+msgstr ""
+
+msgid "skiplink1 Skip to navigation"
+msgstr ""
+
+msgid "skiplink2 Skip to content"
+msgstr ""
+
+msgid "stateful-only"
+msgstr ""
+
+msgid "stateless"
+msgstr ""
+
+msgid "stateless + stateful"
+msgstr ""
+
+msgid "tagged"
+msgstr ""
+
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
+msgid "unknown"
+msgstr ""
+
+msgid "unlimited"
+msgstr ""
+
+msgid "unspecified"
+msgstr ""
+
+msgid "unspecified -or- create:"
+msgstr "unspecified -혹ì€- create:"
+
+msgid "untagged"
+msgstr ""
+
+msgid "yes"
+msgstr ""
+
+msgid "« Back"
+msgstr ""
diff --git a/modules/luci-base/po/ms/base.po b/modules/luci-base/po/ms/base.po
index 3aaf0c018..521d95dbc 100644
--- a/modules/luci-base/po/ms/base.po
+++ b/modules/luci-base/po/ms/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr ""
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -136,9 +163,6 @@ msgstr ""
msgid "APN"
msgstr ""
-msgid "AR Support"
-msgstr "AR-Penyokong"
-
msgid "ARP retry threshold"
msgstr ""
@@ -268,6 +292,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -276,9 +303,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -374,9 +398,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Associated Stesen"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -386,6 +407,9 @@ msgstr ""
msgid "Authentication"
msgstr "Authentifizierung"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Pengesahan"
@@ -452,9 +476,6 @@ msgstr "Kembali ke ikhtisar"
msgid "Back to scan results"
msgstr "Kembali ke keputusan scan"
-msgid "Background Scan"
-msgstr "Latar Belakang Scan"
-
msgid "Backup / Flash Firmware"
msgstr ""
@@ -479,9 +500,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -550,6 +577,9 @@ msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Jumlah disemak "
@@ -601,9 +631,6 @@ msgstr "Perintah"
msgid "Common Configuration"
msgstr ""
-msgid "Compression"
-msgstr "Mampatan"
-
msgid "Configuration"
msgstr "Konfigurasi"
@@ -817,12 +844,12 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Mematikan pemasa HW-Beacon"
-
msgid "Disabled"
msgstr ""
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr ""
@@ -862,15 +889,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr "Jangan menghantar jawapan penyelidikan"
-
msgid "Domain required"
msgstr "Domain diperlukan"
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -937,6 +964,9 @@ msgstr "Mengaktifkan <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -967,6 +997,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -979,6 +1012,11 @@ msgstr ""
msgid "Enabled"
msgstr ""
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Aktifkan spanning Tree Protokol di jambatan ini"
@@ -988,6 +1026,12 @@ msgstr ""
msgid "Encryption"
msgstr "Enkripsi"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -1019,6 +1063,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1031,9 +1081,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Frame Cepat"
-
msgid "File"
msgstr ""
@@ -1069,6 +1116,9 @@ msgstr "Selesai"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Tetapan Firewall"
@@ -1114,6 +1164,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1144,6 +1197,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1201,6 +1259,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Kawalan"
@@ -1258,6 +1319,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Alamat IP"
@@ -1300,6 +1364,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "Konfigurasi IPv6"
@@ -1348,6 +1415,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1492,6 +1562,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Username dan / atau password tak sah! Sila cuba lagi."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1500,7 +1573,7 @@ msgstr ""
"Tampak bahawa anda cuba untuk flash fail gambar yang tidak sesuai dengan "
"memori flash, sila buat pengesahan pada fail gambar!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
#, fuzzy
@@ -1614,6 +1687,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1626,6 +1715,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1743,9 +1835,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Rate Maksimum"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1782,9 +1871,6 @@ msgstr "Penggunaan Memori (%)"
msgid "Metric"
msgstr "Metrik"
-msgid "Minimum Rate"
-msgstr "Rate Minimum"
-
#, fuzzy
msgid "Minimum hold time"
msgstr "Memegang masa minimum"
@@ -1798,6 +1884,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mode"
@@ -1856,9 +1945,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr "Multicast Rate"
-
msgid "Multicast address"
msgstr ""
@@ -1871,6 +1957,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2050,12 +2139,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Pilihan"
@@ -2068,9 +2195,6 @@ msgstr "Keluar"
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr "Saluran Outdoor"
-
msgid "Output Interface"
msgstr ""
@@ -2080,6 +2204,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2112,6 +2242,9 @@ msgstr "PID"
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2196,6 +2329,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2205,6 +2341,9 @@ msgstr "Lakukan reboot"
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2235,6 +2374,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2249,6 +2400,9 @@ msgstr "Mencegah komunikasi sesama Pelanggan"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Teruskan"
@@ -2282,12 +2436,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2368,6 +2534,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2386,6 +2555,9 @@ msgstr "Menerima"
msgid "Receiver Antenna"
msgstr "Antena Penerima"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2395,9 +2567,6 @@ msgstr ""
msgid "References"
msgstr "Rujukan"
-msgid "Regulatory Domain"
-msgstr "Peraturan Domain"
-
msgid "Relay"
msgstr ""
@@ -2413,6 +2582,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Menghapuskan"
@@ -2434,9 +2606,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2481,6 +2673,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2570,9 +2768,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Pisahkan Pelanggan"
-msgid "Separate WDS"
-msgstr "Pisahkan WDS"
-
msgid "Server Settings"
msgstr ""
@@ -2596,6 +2791,11 @@ msgstr ""
msgid "Services"
msgstr "Perkhidmatan"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2661,8 +2861,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2694,6 +2894,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2718,9 +2931,6 @@ msgstr "Statische Einträge"
msgid "Static Routes"
msgstr "Laluan Statik"
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2838,6 +3048,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2897,6 +3111,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3097,9 +3314,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Mod Turbo"
-
msgid "Tx-Power"
msgstr ""
@@ -3118,6 +3332,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3150,8 +3367,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3219,6 +3436,11 @@ msgstr "Diguna"
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3329,6 +3551,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3368,9 +3593,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Sokongan XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3378,7 +3600,7 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3467,6 +3689,9 @@ msgstr "Fail DNS tempatan"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3521,6 +3746,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
@@ -3541,3 +3769,45 @@ msgstr ""
msgid "« Back"
msgstr "« Kembali"
+
+#~ msgid "AR Support"
+#~ msgstr "AR-Penyokong"
+
+#~ msgid "Background Scan"
+#~ msgstr "Latar Belakang Scan"
+
+#~ msgid "Compression"
+#~ msgstr "Mampatan"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Mematikan pemasa HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Jangan menghantar jawapan penyelidikan"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Frame Cepat"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Rate Maksimum"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Rate Minimum"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Multicast Rate"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Saluran Outdoor"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Peraturan Domain"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Pisahkan WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Mod Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Sokongan XR"
diff --git a/modules/luci-base/po/no/base.po b/modules/luci-base/po/no/base.po
index 579ea2466..8e94388f1 100644
--- a/modules/luci-base/po/no/base.po
+++ b/modules/luci-base/po/no/base.po
@@ -38,18 +38,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "1 minutts belastning:"
msgid "15 Minute Load:"
msgstr "15 minutters belastning:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "5 minutters belastning:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -138,9 +165,6 @@ msgstr ""
msgid "APN"
msgstr "<abbr title=\"Aksesspunkt Navn\">APN</abbr>"
-msgid "AR Support"
-msgstr "AR Støtte"
-
msgid "ARP retry threshold"
msgstr "APR terskel for nytt forsøk"
@@ -277,6 +301,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr "Tillat oppstrøms svar i 127.0.0.0/8 nettet, f.eks for RBL tjenester"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -285,9 +312,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -383,9 +407,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Tilkoblede Klienter"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s Trådløs Kontroller"
-
msgid "Auth Group"
msgstr ""
@@ -395,6 +416,9 @@ msgstr ""
msgid "Authentication"
msgstr "Godkjenning"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritativ"
@@ -461,9 +485,6 @@ msgstr "Tilbake til oversikt"
msgid "Back to scan results"
msgstr "Tilbake til skanne resultat"
-msgid "Background Scan"
-msgstr "Bakgrunns Skanning"
-
msgid "Backup / Flash Firmware"
msgstr "Sikkerhetskopiering/Firmware oppgradering"
@@ -491,9 +512,15 @@ msgstr ""
"konfigurasjonsfiler som er merket av opkg, essensielle enhets filer og andre "
"filer valgt av bruker."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitrate"
@@ -562,6 +589,9 @@ msgstr "Kontroller"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Kontrollsum"
@@ -623,9 +653,6 @@ msgstr "Kommando"
msgid "Common Configuration"
msgstr "Vanlige Innstillinger"
-msgid "Compression"
-msgstr "Komprimering"
-
msgid "Configuration"
msgstr "Konfigurasjon"
@@ -845,12 +872,12 @@ msgstr "Deaktiver DNS oppsett"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Deaktiver HW-Beacon timer"
-
msgid "Disabled"
msgstr "Deaktivert"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Forkast oppstrøms RFC1918 svar"
@@ -891,15 +918,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Ikke videresend reverserte oppslag for lokale nettverk"
-msgid "Do not send probe responses"
-msgstr "Ikke send probe svar"
-
msgid "Domain required"
msgstr "Domene kreves"
msgid "Domain whitelist"
msgstr "Domene hviteliste"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -972,6 +999,9 @@ msgstr "Aktiver <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Aktiver HE,net dynamisk endepunkt oppdatering"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Aktiver IPv6 på PPP lenke"
@@ -1002,6 +1032,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Aktiver dette monteringspunktet"
@@ -1014,6 +1047,11 @@ msgstr "Aktiver/Deaktiver"
msgid "Enabled"
msgstr "Aktivert"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Aktiverer Spanning Tree Protocol på denne broen"
@@ -1023,6 +1061,12 @@ msgstr "Innkapsling modus"
msgid "Encryption"
msgstr "Kryptering"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Sletter..."
@@ -1055,6 +1099,12 @@ msgstr "Utløpstid på leide adresser, minimum er 2 minutter (<code>2m</code>)."
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Ekstern systemlogg server"
@@ -1067,9 +1117,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Fast Frames"
-
msgid "File"
msgstr "Fil"
@@ -1105,6 +1152,9 @@ msgstr "Fullfør"
msgid "Firewall"
msgstr "Brannmur"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Brannmur Innstillinger"
@@ -1151,6 +1201,9 @@ msgstr "Bruk TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Bruk TKIP og CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1181,6 +1234,11 @@ msgstr "Ledig"
msgid "Free space"
msgstr "Ledig plass"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1238,6 +1296,9 @@ msgstr "HE.net passord"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Behandler"
@@ -1297,6 +1358,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP adresse"
@@ -1339,6 +1403,9 @@ msgstr "IPv4 prefikslengde"
msgid "IPv4-Address"
msgstr "IPv4-Adresse"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1387,6 +1454,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-Adresse"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-i-IPv4 (RFC4213)"
@@ -1530,6 +1600,9 @@ msgstr "Ugyldig VLAN ID gitt! Bare unike ID'er er tillatt"
msgid "Invalid username and/or password! Please try again."
msgstr "Ugyldig brukernavn og/eller passord! Vennligst prøv igjen."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1538,8 +1611,8 @@ msgstr ""
"Det virker som du prøver å flashe med en firmware som ikke passer inn i "
"flash-minnet, vennligst kontroller firmware filen!"
-msgid "Java Script required!"
-msgstr "Java Script kreves!"
+msgid "JavaScript required!"
+msgstr "JavaScript kreves!"
msgid "Join Network"
msgstr "Koble til nettverket"
@@ -1653,6 +1726,22 @@ msgstr ""
"Liste med <abbr title=\"Domain Name System\">DNS</abbr> servere som "
"forespørsler blir videresendt til"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1665,6 +1754,9 @@ msgstr "Liste over verter som returneren falske NX domene resultater"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"Lytt kun på det angitte grensesnitt, om ingen er angitt lyttes det på alle"
@@ -1788,9 +1880,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Maksimal hastighet"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Maksimalt antall aktive DHCP leieavtaler"
@@ -1826,9 +1915,6 @@ msgstr "Minne forbruk (%)"
msgid "Metric"
msgstr "Metrisk"
-msgid "Minimum Rate"
-msgstr "Minimum hastighet"
-
msgid "Minimum hold time"
msgstr "Minimum holde tid"
@@ -1841,6 +1927,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Mangler protokoll utvidelse for proto %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Modus"
@@ -1899,9 +1988,6 @@ msgstr "Flytt ned"
msgid "Move up"
msgstr "Flytt opp"
-msgid "Multicast Rate"
-msgstr "Multicast hastighet"
-
msgid "Multicast address"
msgstr "Multicast adresse"
@@ -1914,6 +2000,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2094,12 +2183,50 @@ msgstr "Innstilling endret"
msgid "Option removed"
msgstr "Innstilling fjernet"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Alternativer"
@@ -2112,9 +2239,6 @@ msgstr "Ut"
msgid "Outbound:"
msgstr "Ugående:"
-msgid "Outdoor Channels"
-msgstr "Utendørs Kanaler"
-
msgid "Output Interface"
msgstr ""
@@ -2124,6 +2248,12 @@ msgstr "Overstyr MAC adresse"
msgid "Override MTU"
msgstr "Overstyr MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2158,6 +2288,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2242,6 +2375,9 @@ msgstr "Maksimalt:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2251,6 +2387,9 @@ msgstr "Omstart nå"
msgid "Perform reset"
msgstr "Foreta nullstilling"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Phy Hastighet:"
@@ -2281,6 +2420,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2297,6 +2448,9 @@ msgstr "Hindrer klient-til-klient kommunikasjon"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b Trådløs Kontroller"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Fortsett"
@@ -2330,12 +2484,24 @@ msgstr "Lag nytt nettverk"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Kvalitet"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2429,6 +2595,9 @@ msgstr "Trafikk Sanntid"
msgid "Realtime Wireless"
msgstr "Trådløst i sanntid"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Binde beskyttelse"
@@ -2447,6 +2616,9 @@ msgstr "Motta"
msgid "Receiver Antenna"
msgstr "Mottak antenne"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Koble til igjen"
@@ -2456,9 +2628,6 @@ msgstr "Kobler til igjen"
msgid "References"
msgstr "Referanser"
-msgid "Regulatory Domain"
-msgstr "Regulerende Domene"
-
msgid "Relay"
msgstr "Relay"
@@ -2474,6 +2643,9 @@ msgstr "Relay bro"
msgid "Remote IPv4 address"
msgstr "Ekstern IPv4 adresse"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Avinstaller"
@@ -2495,9 +2667,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Er nødvendig for noen nettleverandører, f.eks Charter med DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2542,6 +2734,12 @@ msgstr "Rot katalog for filer gitt fra TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2633,9 +2831,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Separerte Klienter"
-msgid "Separate WDS"
-msgstr "Separert WDS"
-
msgid "Server Settings"
msgstr "Server Innstillinger"
@@ -2659,6 +2854,11 @@ msgstr "Tjeneste type"
msgid "Services"
msgstr "Tjenester"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Oppsett tidssynkronisering"
@@ -2723,15 +2923,14 @@ msgstr "Beklager, objektet du spurte om ble ikke funnet."
msgid "Sorry, the server encountered an unexpected error."
msgstr "Beklager, det oppstod en uventet feil på serveren."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Beklager, men finner ikke støtte for 'sysupgrade', ny firmware må derfor "
-"flashes manuelt. Viser til OpenWrt wiki for installering av firmare på "
-"forskjellige enheter."
+"flashes manuelt. Viser til wiki for installering av firmare på forskjellige "
+"enheter."
msgid "Sort"
msgstr "Sortering"
@@ -2762,6 +2961,19 @@ msgid ""
"dead"
msgstr "Angir maksimalt antall sekunder før verter ansees som frakoblet"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Angi krypteringsnøkkelen her."
@@ -2786,9 +2998,6 @@ msgstr "Statiske Leier"
msgid "Static Routes"
msgstr "Statiske Ruter"
-msgid "Static WDS"
-msgstr "Statisk WDS"
-
msgid "Static address"
msgstr "Statisk adresse"
@@ -2917,6 +3126,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"IPv6 prefikset tilordnet mot leverandør, ender som regel med <code>::</code>"
@@ -2984,6 +3197,9 @@ msgstr "Lengden IPv4 prefikset i bits, resten brukt i IPv6-adresser."
msgid "The length of the IPv6 prefix in bits"
msgstr "Lengden på IPv6 prefikset i bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3203,9 +3419,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Turbo Modus"
-
msgid "Tx-Power"
msgstr "Tx-Styrke"
@@ -3224,6 +3437,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB Enhet"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3256,12 +3472,12 @@ msgstr "Oppdater lister"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Last her opp en sysupgrade-kompatibel firmware som skal erstatte den "
"kjørende firmware. Merk av \"Behold innstillinger\" for å beholde gjeldene "
-"konfigurasjon. (en OpenWrt kompatibel firmware er nødvendig)"
+"konfigurasjon. (en kompatibel firmware er nødvendig)"
msgid "Upload archive..."
msgstr "Last opp arkiv..."
@@ -3332,6 +3548,11 @@ msgstr "Brukt"
msgid "Used Key Slot"
msgstr "Brukte Nøkler"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3442,6 +3663,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Trådløs"
@@ -3481,9 +3705,6 @@ msgstr "Skriv mottatte DNS forespørsler til syslog"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "XR Støtte"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3495,9 +3716,9 @@ msgstr ""
"utilgjengelig! </strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Du må aktivere Java Script i nettleseren din ellers vil ikke LuCI fungere "
+"Du må aktivere JavaScript i nettleseren din ellers vil ikke LuCI fungere "
"skikkelig."
msgid ""
@@ -3588,6 +3809,9 @@ msgstr "lokal <abbr title=\"Domain Navn System\">DNS</abbr>-fil"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3642,6 +3866,9 @@ msgstr ""
msgid "tagged"
msgstr "tagget"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "ukjent"
@@ -3663,6 +3890,54 @@ msgstr "ja"
msgid "« Back"
msgstr "« Tilbake"
+#~ msgid "AR Support"
+#~ msgstr "AR Støtte"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s Trådløs Kontroller"
+
+#~ msgid "Background Scan"
+#~ msgstr "Bakgrunns Skanning"
+
+#~ msgid "Compression"
+#~ msgstr "Komprimering"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Deaktiver HW-Beacon timer"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Ikke send probe svar"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Fast Frames"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Maksimal hastighet"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Minimum hastighet"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Multicast hastighet"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Utendørs Kanaler"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Regulerende Domene"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Separert WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "Statisk WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbo Modus"
+
+#~ msgid "XR Support"
+#~ msgstr "XR Støtte"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Et nytt nettverk vil bli opprettet hvis du tar bort haken."
diff --git a/modules/luci-base/po/pl/base.po b/modules/luci-base/po/pl/base.po
index 4619ad283..3043b8fec 100644
--- a/modules/luci-base/po/pl/base.po
+++ b/modules/luci-base/po/pl/base.po
@@ -44,18 +44,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Obciążenie 1 min.:"
msgid "15 Minute Load:"
msgstr "Obciążenie 15 min.:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Obciążenie 5 min.:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -143,10 +170,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-# Wydaje mi się że brakuje litery R...
-msgid "AR Support"
-msgstr "Wsparcie dla ARP"
-
msgid "ARP retry threshold"
msgstr "Próg powtórzeń ARP"
@@ -292,6 +315,9 @@ msgid ""
msgstr ""
"Pozwól na ruch wychodzący (odpowiedzi) z podsieci 127.0.0.0/8, np. usługi RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -300,9 +326,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -398,9 +421,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Połączone stacje"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Bezprzewodowy kontroler Atheros 802.11%s"
-
msgid "Auth Group"
msgstr ""
@@ -410,6 +430,9 @@ msgstr ""
msgid "Authentication"
msgstr "Uwierzytelnianie"
+msgid "Authentication Type"
+msgstr ""
+
# Nawet M$ tego nie tłumaczy;)
msgid "Authoritative"
msgstr "Autorytatywny"
@@ -477,9 +500,6 @@ msgstr "Wróć do przeglądu"
msgid "Back to scan results"
msgstr "Wróć do wyników skanowania"
-msgid "Background Scan"
-msgstr "Skanowanie w tle"
-
msgid "Backup / Flash Firmware"
msgstr "Kopia zapasowa/aktualizacja firmware"
@@ -508,9 +528,15 @@ msgstr ""
"Zawiera ona zmienione pliki konfiguracyjne oznaczone przez opkg, podstawowe "
"pliki systemowe, oraz pliki oznaczone do kopiowania przez użytkownika."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Przepływność"
@@ -580,6 +606,9 @@ msgstr "Sprawdź"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Suma kontrolna"
@@ -642,9 +671,6 @@ msgstr "Polecenie"
msgid "Common Configuration"
msgstr "Konfiguracja podstawowa"
-msgid "Compression"
-msgstr "Kompresja"
-
msgid "Configuration"
msgstr "Konfiguracja"
@@ -867,12 +893,12 @@ msgstr "Wyłącz konfigurowanie DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Wyłącz zegar HW-Beacon"
-
msgid "Disabled"
msgstr "Wyłączony"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Odrzuć wychodzące odpowiedzi RFC1918"
@@ -915,15 +941,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Nie przekazuj odwrotnych lookup`ów do sieci lokalnych"
-msgid "Do not send probe responses"
-msgstr "Nie wysyłaj ramek probe response"
-
msgid "Domain required"
msgstr "Wymagana domena"
msgid "Domain whitelist"
msgstr "Whitelist domen (Dozwolone domeny)"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -999,6 +1025,9 @@ msgstr "WÅ‚Ä…cz <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Włącz dynamiczną aktualizację punktu końcowego sieci HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "WÅ‚Ä…cz negocjacjÄ™ IPv6 na Å‚Ä…czu PPP"
@@ -1029,6 +1058,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "WÅ‚Ä…cz ten punkt montowania"
@@ -1041,6 +1073,11 @@ msgstr "Wlącz/Wyłącz"
msgid "Enabled"
msgstr "WÅ‚Ä…czony"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
"Włącz protokół <abbr title=\"Spanning Tree Protocol\">STP</abbr> na tym "
@@ -1053,6 +1090,12 @@ msgstr "Sposób Enkapsulacji"
msgid "Encryption"
msgstr "Szyfrowanie"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Usuwanie..."
@@ -1086,6 +1129,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Zewnętrzny serwer dla loga systemowego"
@@ -1098,9 +1147,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Szybkie ramki (Fast Frames)"
-
msgid "File"
msgstr "Plik"
@@ -1136,6 +1182,9 @@ msgstr "Zakończ"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
# Nie ma potrzeby pisania z dużej litery
msgid "Firewall Settings"
msgstr "Ustawienia firewalla"
@@ -1183,6 +1232,9 @@ msgstr "WymuÅ› TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "WymuÅ› TKIP i CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1213,6 +1265,11 @@ msgstr "Wolna"
msgid "Free space"
msgstr "Wolna przestrzeń"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1272,6 +1329,9 @@ msgstr "Hasło HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Uchwyt"
@@ -1334,6 +1394,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Adres IP"
@@ -1376,6 +1439,9 @@ msgstr "Długość prefiksu IPv4"
msgid "IPv4-Address"
msgstr "Adres IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1424,6 +1490,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "Adres IPv6"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-w-IPv4 (RFC4213)"
@@ -1575,6 +1644,9 @@ msgstr "Podano niewłaściwy ID VLAN`u! Dozwolone są tylko unikalne ID."
msgid "Invalid username and/or password! Please try again."
msgstr "Niewłaściwy login i/lub hasło! Spróbuj ponownie."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1583,8 +1655,8 @@ msgstr ""
"Wygląda na to, że próbujesz wgrać obraz większy niż twoja pamięć flash, "
"proszę sprawdź czy to właściwy obraz!"
-msgid "Java Script required!"
-msgstr "Java Script jest wymagany!"
+msgid "JavaScript required!"
+msgstr "JavaScript jest wymagany!"
msgid "Join Network"
msgstr "Połącz z siecią"
@@ -1698,6 +1770,22 @@ msgstr ""
"Lista serwerów <abbr title=\"Domain Name System\">DNS</abbr> do których będą "
"przekazywane zapytania"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1710,6 +1798,9 @@ msgstr "Lista hostów które dostarczają zafałszowane wyniki NX domain"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"Słuchaj tylko na podanym interfejsie, lub jeśli nie podano na wszystkich"
@@ -1834,9 +1925,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Maksymalna Szybkość"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Maksymalna dozwolona liczba aktywnych dzierżaw DHCP"
@@ -1872,9 +1960,6 @@ msgstr "Użycie pamięci (%)"
msgid "Metric"
msgstr "Metryka"
-msgid "Minimum Rate"
-msgstr "Minimalna Szybkość"
-
msgid "Minimum hold time"
msgstr "Minimalny czas podtrzymania"
@@ -1887,6 +1972,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Brakujące rozszerzenie protokołu dla protokołu %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Tryb"
@@ -1945,9 +2033,6 @@ msgstr "Przesuń w dół"
msgid "Move up"
msgstr "Przesuń w górę"
-msgid "Multicast Rate"
-msgstr "Szybkość Multicast`u"
-
msgid "Multicast address"
msgstr "Adres Multicast`u"
@@ -1960,6 +2045,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2139,12 +2227,50 @@ msgstr "Wartość zmieniona"
msgid "Option removed"
msgstr "Usunięto wartość"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Opcje"
@@ -2157,9 +2283,6 @@ msgstr "WychodzÄ…ce"
msgid "Outbound:"
msgstr "WychodzÄ…cy:"
-msgid "Outdoor Channels"
-msgstr "Kanały zewnętrzne"
-
msgid "Output Interface"
msgstr ""
@@ -2169,6 +2292,12 @@ msgstr "Nadpisz adres MAC"
msgid "Override MTU"
msgstr "Nadpisz MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2203,6 +2332,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2289,6 +2421,9 @@ msgstr "Szczyt:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2298,6 +2433,9 @@ msgstr "Wykonaj restart"
msgid "Perform reset"
msgstr "Wykonaj reset"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Szybkość Phy:"
@@ -2328,6 +2466,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2344,6 +2494,9 @@ msgstr "Zapobiegaj komunikacji klientów pomiędzy sobą"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Kontroler bezprzewodowy Prism2/2.5/3 802.11b"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Wykonaj"
@@ -2378,12 +2531,24 @@ msgstr "Utwórz nową sieć"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Jakość"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2478,6 +2643,9 @@ msgstr "Ruch w czasie rzeczywistym"
msgid "Realtime Wireless"
msgstr "WiFi w czasie rzeczywistym"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Przypisz ochronÄ™"
@@ -2496,6 +2664,9 @@ msgstr "Odebrane"
msgid "Receiver Antenna"
msgstr "Antena odbiorcza"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Połącz ponownie ten interfejs"
@@ -2505,9 +2676,6 @@ msgstr "ÅÄ…czÄ™ ponownie interfejs"
msgid "References"
msgstr "Referencje"
-msgid "Regulatory Domain"
-msgstr "Domena regulacji"
-
msgid "Relay"
msgstr "Przekaźnik"
@@ -2523,6 +2691,9 @@ msgstr "Most przekaźnikowy"
msgid "Remote IPv4 address"
msgstr "Zdalny adres IPv4"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Usuń"
@@ -2544,9 +2715,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Wymagany dla niektórych dostawców internetu, np. Charter z DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2591,6 +2782,12 @@ msgstr "Katalog Root`a dla plików udostępnianych przez TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2684,9 +2881,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Rozdziel klientów"
-msgid "Separate WDS"
-msgstr "Rozdziel WDS"
-
msgid "Server Settings"
msgstr "Ustawienia serwera"
@@ -2710,6 +2904,11 @@ msgstr "Typ serwisu"
msgid "Services"
msgstr "Serwisy"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Ustawienia synchronizacji czasu"
@@ -2774,15 +2973,14 @@ msgstr "Przepraszamy, ale żądany obiekt nie został znaleziony."
msgid "Sorry, the server encountered an unexpected error."
msgstr "Przepraszamy, ale serwer napotkał nieoczekiwany błąd."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Przepraszamy, ale nie ma wsparcia dla trybu sysupgrade. Nowy firmware musi "
-"być wgrany ręcznie. Sprawdź stronę OpenWrt wiki, aby uzyskać instrukcję dla "
-"danego urzÄ…dzenia."
+"być wgrany ręcznie. Sprawdź stronę wiki, aby uzyskać instrukcję dla danego "
+"urzÄ…dzenia."
msgid "Sort"
msgstr "Posortuj"
@@ -2815,6 +3013,19 @@ msgid ""
msgstr ""
"Określa maksymalny czas w sekundach przed założeniem, że host jest martwy"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Określ tajny klucz szyfrowania."
@@ -2839,9 +3050,6 @@ msgstr "Dzierżawy statyczne"
msgid "Static Routes"
msgstr "Statyczne ścieżki routingu"
-msgid "Static WDS"
-msgstr "Statyczny WDS"
-
msgid "Static address"
msgstr "Stały adres"
@@ -2972,6 +3180,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"Prefiks IPv6 przypisany do dostawcy, zazwyczaj kończy się <code>::</code>"
@@ -3042,6 +3254,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "Długość prefiksu IPv6 w bitach"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3266,9 +3481,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Tryb Turbo"
-
msgid "Tx-Power"
msgstr "Moc nadawania"
@@ -3287,6 +3499,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "UrzÄ…dzenie USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3319,12 +3534,12 @@ msgstr "Aktualizuj listy"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Prześlij zgodny z funkcją sysupgrade obraz tutaj, aby zastąpić aktualnie "
"działające firmware. Zaznacz opcję \"Zachowaj ustawienia\", aby zachować "
-"bieżącą konfigurację (wymaga zgodnego obrazu firmware OpenWrt)."
+"bieżącą konfigurację (wymaga zgodnego obrazu firmware)."
msgid "Upload archive..."
msgstr "Załaduj archiwum..."
@@ -3396,6 +3611,11 @@ msgstr "Użyte"
msgid "Used Key Slot"
msgstr "Użyte gniazdo klucza"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3507,6 +3727,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Sieć bezprzewodowa"
@@ -3546,9 +3769,6 @@ msgstr "Zapisz otrzymane żądania DNS do syslog'a"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Wsparcie XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3560,9 +3780,9 @@ msgstr ""
"siÄ™ nieosiÄ…galne!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Musisz włączyć obsługę Java Script w swojej przeglądarce, inaczej LuCI nie "
+"Musisz włączyć obsługę JavaScript w swojej przeglądarce, inaczej LuCI nie "
"będzie działać poprawnie."
msgid ""
@@ -3653,6 +3873,9 @@ msgstr "lokalny plik <abbr title=\"Domain Name System\">DNS</abbr>"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3708,6 +3931,9 @@ msgstr ""
msgid "tagged"
msgstr "tagowane"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "nieznane"
@@ -3729,6 +3955,55 @@ msgstr "tak"
msgid "« Back"
msgstr "« Wróć"
+# Wydaje mi się że brakuje litery R...
+#~ msgid "AR Support"
+#~ msgstr "Wsparcie dla ARP"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Bezprzewodowy kontroler Atheros 802.11%s"
+
+#~ msgid "Background Scan"
+#~ msgstr "Skanowanie w tle"
+
+#~ msgid "Compression"
+#~ msgstr "Kompresja"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Wyłącz zegar HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Nie wysyłaj ramek probe response"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Szybkie ramki (Fast Frames)"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Maksymalna Szybkość"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Minimalna Szybkość"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Szybkość Multicast`u"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Kanały zewnętrzne"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Domena regulacji"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Rozdziel WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "Statyczny WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Tryb Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Wsparcie XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr ""
#~ "Zostanie utworzona dodatkowa sieć jeśli zostawisz tą opcję niezaznaczoną."
diff --git a/modules/luci-base/po/pt-br/base.po b/modules/luci-base/po/pt-br/base.po
index e61ad6c82..3229cb7f4 100644
--- a/modules/luci-base/po/pt-br/base.po
+++ b/modules/luci-base/po/pt-br/base.po
@@ -1,20 +1,20 @@
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-10 03:41+0200\n"
-"PO-Revision-Date: 2014-03-29 23:31+0200\n"
-"Last-Translator: Luiz Angelo <luizluca@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"PO-Revision-Date: 2017-02-22 20:30-0300\n"
+"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Pootle 2.0.6\n"
+"X-Generator: Poedit 1.8.11\n"
+"Language-Team: \n"
msgid "%s is untagged in multiple VLANs!"
-msgstr ""
+msgstr "%s está sem etiqueta em múltiplas VLANs!"
msgid "(%d minute window, %d second interval)"
msgstr "(janela de %d minutos, intervalo de %d segundos)"
@@ -38,10 +38,15 @@ msgid "-- custom --"
msgstr "-- personalizado --"
msgid "-- match by device --"
-msgstr ""
+msgstr "-- casar por dispositivo --"
msgid "-- match by label --"
+msgstr "-- casar por rótulo --"
+
+msgid "-- match by uuid --"
msgstr ""
+"-- casar por <abbr title=\"Universal Unique IDentifier/Identificador Único "
+"Universal\">UUID</abbr> --"
msgid "1 Minute Load:"
msgstr "Carga 1 Minuto:"
@@ -49,12 +54,38 @@ msgstr "Carga 1 Minuto:"
msgid "15 Minute Load:"
msgstr "Carga 15 Minutos:"
+msgid "4-character hexadecimal ID"
+msgstr "Identificador hexadecimal de 4 caracteres"
+
msgid "464XLAT (CLAT)"
-msgstr ""
+msgstr "464XLAT (CLAT)"
msgid "5 Minute Load:"
msgstr "Carga 5 Minutos:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+"Identificador de 6 octetos como uma cadeia hexadecimal - sem dois pontos"
+
+msgid "802.11r Fast Transition"
+msgstr "802.11r Fast Transition"
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr "Tempo de expiração máximo da consulta da Associação SA do 802.11w"
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+"Tempo de expiração de tentativa de consulta da Associação SA do 802.11w"
+
+msgid "802.11w Management Frame Protection"
+msgstr "Proteção do Quadro de Gerenciamento do 802.11w"
+
+msgid "802.11w maximum timeout"
+msgstr "Estouro de tempo máximo do 802.11w"
+
+msgid "802.11w retry timeout"
+msgstr "Estouro de tempo da nova tentativa do 802.11w"
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
"<abbr title=\"Identificador de Conjunto Básico de Serviços\">BSSID</abbr>"
@@ -100,6 +131,8 @@ msgstr "Roteador <abbr title=\"Protocolo de Internet Versão 6\">IPv6</abbr>"
msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)"
msgstr ""
+"<abbr title=\"Internet Protocol Version 6/Protocolo Internet Versão "
+"6\">IPv6</abbr>-Suffix (hex)"
msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Configuration"
msgstr "Configuração do <abbr title=\"Diodo Emissor de Luz\">LED</abbr>"
@@ -131,42 +164,47 @@ msgid "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>"
msgstr "<abbr title='Par: %s / Grupo: %s'>%s - %s</abbr>"
msgid "A43C + J43 + A43"
-msgstr ""
+msgstr "A43C + J43 + A43"
msgid "A43C + J43 + A43 + V43"
-msgstr ""
+msgstr "A43C + J43 + A43 + V43"
msgid "ADSL"
msgstr ""
+"<abbr title=\"Assymetrical Digital Subscriber Line/Linha Digital Assimétrica "
+"para Assinante\">ADSL</abbr>"
msgid "AICCU (SIXXS)"
msgstr ""
+"<abbr title=\"Automatic IPv6 Connectivity Client Utility/Utilitário Cliente "
+"de Conectividade IPv6 Automática\">AICCU (SIXXS)</abbr>"
msgid "ANSI T1.413"
-msgstr ""
+msgstr "ANSI T1.413"
msgid "APN"
msgstr "<abbr title=\"Access Point Name\">APN</abbr>"
-msgid "AR Support"
-msgstr "Suporte AR"
-
msgid "ARP retry threshold"
msgstr ""
"Limite de retentativas do <abbr title=\"Address Resolution Protocol\">ARP</"
"abbr>"
msgid "ATM (Asynchronous Transfer Mode)"
-msgstr ""
+msgstr "ATM (Asynchronous Transfer Mode)"
msgid "ATM Bridges"
msgstr "Ponte ATM"
msgid "ATM Virtual Channel Identifier (VCI)"
-msgstr "Identificador de Canal Virtual ATM (VCI)"
+msgstr ""
+"Identificador de Canal Virtual ATM (<abbr title=\"Virtual Channel Identifier"
+"\">VCI</abbr>)"
msgid "ATM Virtual Path Identifier (VPI)"
-msgstr "Identificador de Caminho Virtual ATM (VPI)"
+msgstr ""
+"Identificador de Caminho Virtual ATM (<abbr title=\"Virtual Path Identifier"
+"\">VPI</abbr>)"
msgid ""
"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual "
@@ -181,10 +219,10 @@ msgid "ATM device number"
msgstr "Número do dispositivo ATM"
msgid "ATU-C System Vendor ID"
-msgstr ""
+msgstr "Identificador de"
msgid "AYIYA"
-msgstr ""
+msgstr "AYIYA"
msgid "Access Concentrator"
msgstr "Concentrador de Acesso"
@@ -234,7 +272,7 @@ msgid "Additional Hosts files"
msgstr "Arquivos adicionais de equipamentos conhecidos (hosts)"
msgid "Additional servers file"
-msgstr ""
+msgstr "Arquivo de servidores adicionais"
msgid "Address"
msgstr "Endereço"
@@ -250,6 +288,8 @@ msgstr "Opções Avançadas"
msgid "Aggregate Transmit Power(ACTATP)"
msgstr ""
+"Potência de Transmissão Agregada (<abbr title=\"Aggregate Transmit Power"
+"\">ACTATP</abbr>)"
msgid "Alert"
msgstr "Alerta"
@@ -258,9 +298,11 @@ msgid ""
"Allocate IP addresses sequentially, starting from the lowest available "
"address"
msgstr ""
+"Alocar endereços IP sequencialmente, iniciando a partir do endereço mais "
+"baixo disponível"
msgid "Allocate IP sequentially"
-msgstr ""
+msgstr "Alocar endereços IP sequencialmente"
msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication"
msgstr ""
@@ -292,79 +334,82 @@ msgstr ""
"Permite respostas que apontem para 127.0.0.0/8 de servidores externos, por "
"exemplo, para os serviços RBL"
+msgid "Allowed IPs"
+msgstr "Endereços IP autorizados"
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
msgstr ""
+"Veja também a <a href=\"https://www.sixxs.net/faq/connectivity/?"
+"faq=comparison\">Comparação de Tunelamentos</a> em SIXXS"
msgid "Always announce default router"
-msgstr ""
-
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
+msgstr "Sempre anuncie o roteador padrão"
msgid "Annex"
-msgstr ""
+msgstr "Anexo"
msgid "Annex A + L + M (all)"
-msgstr ""
+msgstr "Anexos A + L + M (todo)"
msgid "Annex A G.992.1"
-msgstr ""
+msgstr "Anexo A G.992.1"
msgid "Annex A G.992.2"
-msgstr ""
+msgstr "Anexo A G.992.2"
msgid "Annex A G.992.3"
-msgstr ""
+msgstr "Anexo A G.992.3"
msgid "Annex A G.992.5"
-msgstr ""
+msgstr "Anexo A G.992.5"
msgid "Annex B (all)"
-msgstr ""
+msgstr "Anexo B (todo)"
msgid "Annex B G.992.1"
-msgstr ""
+msgstr "Anexo B G.992.1"
msgid "Annex B G.992.3"
-msgstr ""
+msgstr "Anexo B G.992.3"
msgid "Annex B G.992.5"
-msgstr ""
+msgstr "Anexo B G.992.5"
msgid "Annex J (all)"
-msgstr ""
+msgstr "Anexo J (todo)"
msgid "Annex L G.992.3 POTS 1"
-msgstr ""
+msgstr "Anexo L G.992.3 POTS 1"
msgid "Annex M (all)"
-msgstr ""
+msgstr "Anexo M (todo)"
msgid "Annex M G.992.3"
-msgstr ""
+msgstr "Anexo M G.992.3"
msgid "Annex M G.992.5"
-msgstr ""
+msgstr "Anexo M G.992.5"
msgid "Announce as default router even if no public prefix is available."
msgstr ""
+"Anuncie-se como rotador padrão mesmo se não existir um prefixo público."
msgid "Announced DNS domains"
-msgstr ""
+msgstr "Domínios DNS anunciados"
msgid "Announced DNS servers"
-msgstr ""
+msgstr "Servidores DNS anunciados"
msgid "Anonymous Identity"
-msgstr ""
+msgstr "Identidade Anônima"
msgid "Anonymous Mount"
-msgstr ""
+msgstr "Montagem Anônima"
msgid "Anonymous Swap"
-msgstr ""
+msgstr "Espaço de Troca (swap) Anônimo"
msgid "Antenna 1"
msgstr "Antena 1"
@@ -387,6 +432,8 @@ msgstr "Aplicar as alterações"
msgid ""
"Assign a part of given length of every public IPv6-prefix to this interface"
msgstr ""
+"Atribua uma parte do comprimento de cada prefixo IPv6 público para esta "
+"interface"
msgid "Assign interfaces..."
msgstr "atribuir as interfaces"
@@ -394,22 +441,24 @@ msgstr "atribuir as interfaces"
msgid ""
"Assign prefix parts using this hexadecimal subprefix ID for this interface."
msgstr ""
+"Atribua partes do prefixo usando este identificador hexadecimal do "
+"subprefixo para esta interface"
msgid "Associated Stations"
msgstr "Estações associadas"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Controlador Wireless Atheros 802.11%s"
-
msgid "Auth Group"
-msgstr ""
+msgstr "Grupo de Autenticação"
msgid "AuthGroup"
-msgstr ""
+msgstr "Grupo de Autenticação"
msgid "Authentication"
msgstr "Autenticação"
+msgid "Authentication Type"
+msgstr "Tipo de Autenticação"
+
msgid "Authoritative"
msgstr "Autoritário"
@@ -420,25 +469,29 @@ msgid "Auto Refresh"
msgstr "Atualização Automática"
msgid "Automatic"
-msgstr ""
+msgstr "Automático"
msgid "Automatic Homenet (HNCP)"
msgstr ""
+"Rede Doméstica Automática (<abbr title=\"Homenet Control Protocol\">HNCP</"
+"abbr>)"
msgid "Automatically check filesystem for errors before mounting"
msgstr ""
+"Execute automaticamente a verificação do sistema de arquivos antes da "
+"montagem do dispositivo"
msgid "Automatically mount filesystems on hotplug"
-msgstr ""
+msgstr "Monte automaticamente o espaço de troca (swap) ao conectar"
msgid "Automatically mount swap on hotplug"
-msgstr ""
+msgstr "Monte automaticamente o espaço de troca (swap) ao conectar"
msgid "Automount Filesystem"
-msgstr ""
+msgstr "Montagem Automática de Sistema de Arquivo"
msgid "Automount Swap"
-msgstr ""
+msgstr "Montagem Automática do Espaço de Troca (swap) "
msgid "Available"
msgstr "Disponível"
@@ -450,13 +503,13 @@ msgid "Average:"
msgstr "Média:"
msgid "B43 + B43C"
-msgstr ""
+msgstr "B43 + B43C"
msgid "B43 + B43C + V43"
-msgstr ""
+msgstr "B43 + B43C + V43"
msgid "BR / DMR / AFTR"
-msgstr ""
+msgstr "BR / DMR / AFTR"
msgid "BSSID"
msgstr "BSSID"
@@ -476,9 +529,6 @@ msgstr "Voltar para visão geral"
msgid "Back to scan results"
msgstr "Voltar para os resultados da busca"
-msgid "Background Scan"
-msgstr "Busca em Segundo Plano"
-
msgid "Backup / Flash Firmware"
msgstr "Cópia de Segurança / Gravar Firmware"
@@ -492,10 +542,10 @@ msgid "Bad address specified!"
msgstr "Endereço especificado está incorreto!"
msgid "Band"
-msgstr ""
+msgstr "Banda"
msgid "Behind NAT"
-msgstr ""
+msgstr "Atrás da NAT"
msgid ""
"Below is the determined list of files to backup. It consists of changed "
@@ -506,8 +556,16 @@ msgstr ""
"de configuração alterados marcados pelo opkg, arquivos base essenciais e "
"padrões para a cópia de segurança definidos pelo usuário."
+msgid "Bind interface"
+msgstr "Interface Vinculada"
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+"Vincule somente para as explicitamenteinterfaces ao invés do endereço "
+"coringa."
+
+msgid "Bind the tunnel to this interface (optional)."
+msgstr "Vincule o túnel a esta interface (opcional)"
msgid "Bitrate"
msgstr "Taxa de bits"
@@ -540,12 +598,15 @@ msgid ""
"Build/distribution specific feed definitions. This file will NOT be "
"preserved in any sysupgrade."
msgstr ""
+"Fonte de pacotes específico da compilação/distribuição. Esta NÃO será "
+"preservada em qualquer atualização do sistema."
msgid "Buttons"
msgstr "Botões"
msgid "CA certificate; if empty it will be saved after the first connection."
msgstr ""
+"Certificado da CA; se em branco, será salvo depois da primeira conexão."
msgid "CPU usage (%)"
msgstr "Uso da CPU (%)"
@@ -554,7 +615,7 @@ msgid "Cancel"
msgstr "Cancelar"
msgid "Category"
-msgstr ""
+msgstr "Categoria"
msgid "Chain"
msgstr "Cadeia"
@@ -576,6 +637,10 @@ msgstr "Verificar"
msgid "Check fileystems before mount"
msgstr ""
+"Execute a verificação do sistema de arquivos antes da montagem do dispositivo"
+
+msgid "Check this option to delete the existing networks from this radio."
+msgstr "Marque esta opção para remover as redes existentes neste rádio."
msgid "Checksum"
msgstr "Soma de verificação"
@@ -602,7 +667,7 @@ msgid "Cipher"
msgstr "Cifra"
msgid "Cisco UDP encapsulation"
-msgstr ""
+msgstr "Encapsulamento UDP da Cisco"
msgid ""
"Click \"Generate archive\" to download a tar archive of the current "
@@ -639,9 +704,6 @@ msgstr "Comando"
msgid "Common Configuration"
msgstr "Configuração Comum"
-msgid "Compression"
-msgstr "Compressão"
-
msgid "Configuration"
msgstr "Configuração"
@@ -664,7 +726,7 @@ msgid "Connection Limit"
msgstr "Limite de conexão"
msgid "Connection to server fails when TLS cannot be used"
-msgstr ""
+msgstr "A conexão para este servidor falhará quando o TLS não puder ser usado"
msgid "Connections"
msgstr "Conexões"
@@ -700,15 +762,17 @@ msgid "Custom Interface"
msgstr "Interface Personalizada"
msgid "Custom delegated IPv6-prefix"
-msgstr ""
+msgstr "Prefixo IPv6 delegado personalizado"
msgid ""
"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
"sysupgrade."
msgstr ""
+"Definições de fonte de pacotes personalizadas, ex: fontes privadas. Este "
+"arquivo será preservado em uma atualização do sistema."
msgid "Custom feeds"
-msgstr ""
+msgstr "Fontes de pacotes customizadas"
msgid ""
"Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
@@ -736,13 +800,13 @@ msgid "DHCPv6 Leases"
msgstr "Alocações DHCPv6"
msgid "DHCPv6 client"
-msgstr ""
+msgstr "Cliente DHCPv6"
msgid "DHCPv6-Mode"
-msgstr ""
+msgstr "Modo DHCPv6"
msgid "DHCPv6-Service"
-msgstr ""
+msgstr "Serviço DHCPv6"
msgid "DNS"
msgstr "DNS"
@@ -751,34 +815,34 @@ msgid "DNS forwardings"
msgstr "Encaminhamentos DNS"
msgid "DNS-Label / FQDN"
-msgstr ""
+msgstr "Rótulo DNS / FQDN"
msgid "DNSSEC"
-msgstr ""
+msgstr "DNSSEC"
msgid "DNSSEC check unsigned"
-msgstr ""
+msgstr "Verificar DNSSEC sem assinatura"
msgid "DPD Idle Timeout"
-msgstr ""
+msgstr "Tempo de expiração para ociosidade do DPD"
msgid "DS-Lite AFTR address"
-msgstr ""
+msgstr "Endereço DS-Lite AFTR"
msgid "DSL"
-msgstr ""
+msgstr "DSL"
msgid "DSL Status"
-msgstr ""
+msgstr "Estado da DSL"
msgid "DSL line mode"
-msgstr ""
+msgstr "Modo de linha DSL"
msgid "DUID"
msgstr "DUID"
msgid "Data Rate"
-msgstr ""
+msgstr "Taxa de Dados"
msgid "Debug"
msgstr "Depurar"
@@ -790,10 +854,10 @@ msgid "Default gateway"
msgstr "Roteador Padrão"
msgid "Default is stateless + stateful"
-msgstr ""
+msgstr "O padrão é sem estado + com estado"
msgid "Default route"
-msgstr ""
+msgstr "Rota padrão"
msgid "Default state"
msgstr "Estado padrão"
@@ -832,10 +896,10 @@ msgid "Device Configuration"
msgstr "Configuração do Dispositivo"
msgid "Device is rebooting..."
-msgstr ""
+msgstr "O dispositivo está reiniciando..."
msgid "Device unreachable"
-msgstr ""
+msgstr "Dispositivo não alcançável"
msgid "Diagnostics"
msgstr "Diagnóstico"
@@ -860,14 +924,14 @@ msgid "Disable DNS setup"
msgstr "Desabilita a configuração do DNS"
msgid "Disable Encryption"
-msgstr ""
-
-msgid "Disable HW-Beacon timer"
-msgstr "Desativar temporizador de Beacon de Hardware"
+msgstr "Desabilitar Cifragem"
msgid "Disabled"
msgstr "Desabilitado"
+msgid "Disabled (default)"
+msgstr "Desabilitado (padrão)"
+
msgid "Discard upstream RFC1918 responses"
msgstr ""
"Descartar respostas de servidores externos para redes privadas (RFC1918)"
@@ -882,7 +946,7 @@ msgid "Distance to farthest network member in meters."
msgstr "Distância para o computador mais distante da rede (em metros)."
msgid "Distribution feeds"
-msgstr ""
+msgstr "Fontes de pacotes da distribuição"
msgid "Diversity"
msgstr "Diversidade"
@@ -911,15 +975,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Não encaminhe buscas por endereço reverso das redes local"
-msgid "Do not send probe responses"
-msgstr "Não enviar respostas de exames"
-
msgid "Domain required"
msgstr "Requerer domínio"
msgid "Domain whitelist"
msgstr "Lista branca de domínios"
+msgid "Don't Fragment"
+msgstr "Não Fragmentar"
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -946,7 +1010,7 @@ msgstr ""
"integrado"
msgid "Dual-Stack Lite (RFC6333)"
-msgstr ""
+msgstr "Duas Pilhas Leve (RFC6333)"
msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
msgstr ""
@@ -964,7 +1028,7 @@ msgstr ""
"somente os clientes com atribuições estáticas serão servidos. "
msgid "EA-bits length"
-msgstr ""
+msgstr "Comprimento dos bits EA"
msgid "EAP-Method"
msgstr "Método EAP"
@@ -976,6 +1040,8 @@ msgid ""
"Edit the raw configuration data above to fix any error and hit \"Save\" to "
"reload the page."
msgstr ""
+"Edite os dados de configuração brutos abaixo para arrumar qualquer erro e "
+"clique em \"Salvar\" para recarregar a página."
msgid "Edit this interface"
msgstr "Editar esta interface"
@@ -995,6 +1061,9 @@ msgstr "Ativar <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Ativar a atualização de ponto final dinâmico HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr "Ativar a negociação de IPv6"
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Ativar a negociação de IPv6 no enlace PPP"
@@ -1005,7 +1074,7 @@ msgid "Enable NTP client"
msgstr "Ativar o cliente <abbr title=\"Network Time Protocol\">NTP</abbr>"
msgid "Enable Single DES"
-msgstr ""
+msgstr "Habilitar DES Simples"
msgid "Enable TFTP server"
msgstr "Ativar servidor TFTP"
@@ -1014,16 +1083,19 @@ msgid "Enable VLAN functionality"
msgstr "Ativar funcionalidade de VLAN"
msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
-msgstr ""
+msgstr "Habilite o botão WPS. requer WPA(2)-PSK"
msgid "Enable learning and aging"
msgstr "Ativar o aprendizado e obsolescência"
msgid "Enable mirroring of incoming packets"
-msgstr ""
+msgstr "Habilitar espelhamento dos pacotes entrantes"
msgid "Enable mirroring of outgoing packets"
-msgstr ""
+msgstr "Habilitar espelhamento dos pacotes saintes"
+
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr "Habilita o campo DF (Não Fragmentar) dos pacotes encapsulados."
msgid "Enable this mount"
msgstr "Ativar esta montagem"
@@ -1037,6 +1109,13 @@ msgstr "Ativar/Desativar"
msgid "Enabled"
msgstr "Ativado"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+"Ativa a troca rápida entre pontos de acesso que pertencem ao mesmo Domínio "
+"de Mobilidade"
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Ativa o protocolo STP nesta ponte"
@@ -1046,6 +1125,12 @@ msgstr "Modo de encapsulamento"
msgid "Encryption"
msgstr "Cifragem"
+msgid "Endpoint Host"
+msgstr "Equipamento do ponto final"
+
+msgid "Endpoint Port"
+msgstr "Porta do ponto final"
+
msgid "Erasing..."
msgstr "Apagando..."
@@ -1053,7 +1138,7 @@ msgid "Error"
msgstr "Erro"
msgid "Errored seconds (ES)"
-msgstr ""
+msgstr "Segundos com erro (ES)"
msgid "Ethernet Adapter"
msgstr "Adaptador Ethernet"
@@ -1062,7 +1147,7 @@ msgid "Ethernet Switch"
msgstr "Switch Ethernet"
msgid "Exclude interfaces"
-msgstr ""
+msgstr "Excluir interfaces"
msgid "Expand hosts"
msgstr "Expandir arquivos de equipamentos conhecidos (hosts)"
@@ -1070,7 +1155,6 @@ msgstr "Expandir arquivos de equipamentos conhecidos (hosts)"
msgid "Expires"
msgstr "Expira"
-#, fuzzy
msgid ""
"Expiry time of leased addresses, minimum is 2 minutes (<code>2m</code>)."
msgstr ""
@@ -1078,7 +1162,13 @@ msgstr ""
"code>)."
msgid "External"
-msgstr ""
+msgstr "Externo"
+
+msgid "External R0 Key Holder List"
+msgstr "Lista dos Detentor de Chave R0 Externa"
+
+msgid "External R1 Key Holder List"
+msgstr "Lista dos Detentor de Chave R1 Externa"
msgid "External system log server"
msgstr "Servidor externo de registros do sistema (syslog)"
@@ -1087,13 +1177,10 @@ msgid "External system log server port"
msgstr "Porta do servidor externo de registro do sistema (syslog)"
msgid "External system log server protocol"
-msgstr ""
+msgstr "Protocolo do servidor externo de registro do sistema (syslog)"
msgid "Extra SSH command options"
-msgstr ""
-
-msgid "Fast Frames"
-msgstr "Quadros Rápidos"
+msgstr "Opções adicionais do comando SSH"
msgid "File"
msgstr "Arquivo"
@@ -1117,6 +1204,9 @@ msgid ""
"Find all currently attached filesystems and swap and replace configuration "
"with defaults based on what was detected"
msgstr ""
+"Encontre todos os sistemas de arquivos e espaços de troca (swap) atualmente "
+"conectados e substitua a configuração com valores padrão baseados no que foi "
+"detectado"
msgid "Find and join network"
msgstr "Procurar e conectar à rede"
@@ -1130,6 +1220,9 @@ msgstr "Terminar"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Configurações do Firewall"
@@ -1137,7 +1230,7 @@ msgid "Firewall Status"
msgstr "Estado do Firewall"
msgid "Firmware File"
-msgstr ""
+msgstr "Arquivo da Firmware"
msgid "Firmware Version"
msgstr "Versão do Firmware"
@@ -1175,17 +1268,22 @@ msgstr "Forçar TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forçar TKIP e CCMP (AES)"
-msgid "Force use of NAT-T"
+msgid "Force link"
msgstr ""
+msgid "Force use of NAT-T"
+msgstr "Force o uso do NAT-T"
+
msgid "Form token mismatch"
-msgstr ""
+msgstr "Chave eletrônica do formulário não casa"
msgid "Forward DHCP traffic"
msgstr "Encaminhar tráfego DHCP"
msgid "Forward Error Correction Seconds (FECS)"
msgstr ""
+"Segundos a frente de correção de erros ( <abbr title=\"Forward Error "
+"Correction Seconds\">FECS</abbr>)"
msgid "Forward broadcast traffic"
msgstr "Encaminhar tráfego broadcast"
@@ -1205,6 +1303,13 @@ msgstr "Livre"
msgid "Free space"
msgstr "Espaço livre"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+"Mais informações sobre interfaces e parceiros WireGuard em <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+
msgid "GHz"
msgstr "GHz"
@@ -1224,10 +1329,10 @@ msgid "General Setup"
msgstr "Configurações Gerais"
msgid "General options for opkg"
-msgstr ""
+msgstr "Opções gerais para o opkg"
msgid "Generate Config"
-msgstr ""
+msgstr "Gerar Configuração"
msgid "Generate archive"
msgstr "Gerar arquivo"
@@ -1239,10 +1344,10 @@ 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 ""
+msgstr "Configurações Globais"
msgid "Global network options"
-msgstr ""
+msgstr "Opções de rede globais"
msgid "Go to password configuration..."
msgstr "Ir para a configuração de senha..."
@@ -1251,16 +1356,21 @@ msgid "Go to relevant configuration page"
msgstr "Ir para a página de configuração pertinente"
msgid "Group Password"
-msgstr ""
+msgstr "Senha do Grupo"
msgid "Guest"
-msgstr ""
+msgstr "Convidado\t"
msgid "HE.net password"
msgstr "Senha HE.net"
msgid "HE.net username"
+msgstr "Usuário do HE.net"
+
+msgid "HT mode (802.11n)"
msgstr ""
+"Modo <abbr title=\"High Throughput/Alta Taxa de Transferência\">HT</abbr> "
+"(802.11n)"
# Não sei que contexto isto está sendo usado
msgid "Handler"
@@ -1271,9 +1381,11 @@ msgstr "Suspender"
msgid "Header Error Code Errors (HEC)"
msgstr ""
+"Erros de Código de Erro de Cabeçalho (<abbr title=\"Header Error Code\">HEC</"
+"abbr>)"
msgid "Heartbeat"
-msgstr ""
+msgstr "Pulso de vida"
msgid ""
"Here you can configure the basic aspects of your device like its hostname or "
@@ -1298,7 +1410,7 @@ msgstr ""
"\">ESSID</abbr>"
msgid "Host"
-msgstr ""
+msgstr "Equipamento"
msgid "Host entries"
msgstr "Entradas de Equipamentos"
@@ -1321,10 +1433,15 @@ msgid "Hostnames"
msgstr "Nome dos equipamentos"
msgid "Hybrid"
-msgstr ""
+msgstr "Híbrido"
msgid "IKE DH Group"
msgstr ""
+"Grupo <abbr title=\"Diffie-Hellman\">DH</abbr> do <abbr title=\"Internet "
+"Key Exchange/Troca de Chaves na Internet\">IKE</abbr>"
+
+msgid "IP Addresses"
+msgstr "Endereços IP"
msgid "IP address"
msgstr "Endereço IP"
@@ -1345,7 +1462,7 @@ msgid "IPv4 and IPv6"
msgstr "IPv4 e IPv6"
msgid "IPv4 assignment length"
-msgstr ""
+msgstr "Tamanho da atribuição IPv4"
msgid "IPv4 broadcast"
msgstr "Broadcast IPv4"
@@ -1360,7 +1477,7 @@ msgid "IPv4 only"
msgstr "Somente IPv4"
msgid "IPv4 prefix"
-msgstr ""
+msgstr "Prefixo IPv4"
msgid "IPv4 prefix length"
msgstr "Tamanho do prefixo IPv4"
@@ -1368,6 +1485,9 @@ msgstr "Tamanho do prefixo IPv4"
msgid "IPv4-Address"
msgstr "Endereço IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr "IPv4-in-IPv4 (RFC2003)"
+
msgid "IPv6"
msgstr "IPv6"
@@ -1375,13 +1495,15 @@ msgid "IPv6 Firewall"
msgstr "Firewall para IPv6"
msgid "IPv6 Neighbours"
-msgstr ""
+msgstr "Vizinhos IPv6"
msgid "IPv6 Settings"
-msgstr ""
+msgstr "Configurações IPv6"
msgid "IPv6 ULA-Prefix"
msgstr ""
+"Prefixo <abbr title=\"Unique Local Address/Endereço Local Único\">ULA</abbr> "
+"IPv6"
msgid "IPv6 WAN Status"
msgstr "Estado IPv6 da WAN"
@@ -1390,13 +1512,13 @@ msgid "IPv6 address"
msgstr "Endereço IPv6"
msgid "IPv6 address delegated to the local tunnel endpoint (optional)"
-msgstr ""
+msgstr "Endereços IPv6 delegados para o ponta local do túnel (opcional)"
msgid "IPv6 assignment hint"
-msgstr ""
+msgstr "Sugestão de atribuição IPv6"
msgid "IPv6 assignment length"
-msgstr ""
+msgstr "Tamanho da atribuição IPv6"
msgid "IPv6 gateway"
msgstr "Roteador padrão do IPv6"
@@ -1411,11 +1533,14 @@ msgid "IPv6 prefix length"
msgstr "Tamanho Prefixo IPv6"
msgid "IPv6 routed prefix"
-msgstr ""
+msgstr "Prefixo roteável IPv6"
msgid "IPv6-Address"
msgstr "Endereço IPv6"
+msgid "IPv6-PD"
+msgstr "IPv6-PD"
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1429,10 +1554,10 @@ msgid "Identity"
msgstr "Identidade PEAP"
msgid "If checked, 1DES is enaled"
-msgstr ""
+msgstr "Se marcado, a cifragem 1DES será habilitada"
msgid "If checked, encryption is disabled"
-msgstr ""
+msgstr "Se marcado, a cifragem estará desabilitada"
msgid ""
"If specified, mount the device by its UUID instead of a fixed device node"
@@ -1488,6 +1613,8 @@ 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 ""
+"Para prevenir acesso não autorizado neste sistema, sua requisição foi "
+"bloqueada. Clique abaixo em \"Continuar »\" para retornar à página anterior."
msgid "Inactivity timeout"
msgstr "Tempo limite de inatividade"
@@ -1508,7 +1635,7 @@ msgid "Install"
msgstr "Instalar"
msgid "Install iputils-traceroute6 for IPv6 traceroute"
-msgstr ""
+msgstr "Instale iputils-traceroute6 para rastrear rotas IPv6"
msgid "Install package %q"
msgstr "Instalar pacote %q"
@@ -1535,7 +1662,7 @@ msgid "Interface is shutting down..."
msgstr "A interface está desligando..."
msgid "Interface name"
-msgstr ""
+msgstr "Nome da Interface"
msgid "Interface not present or not connected yet."
msgstr "A interface não está presente ou não está conectada ainda."
@@ -1550,7 +1677,7 @@ msgid "Interfaces"
msgstr "Interfaces"
msgid "Internal"
-msgstr ""
+msgstr "Interno"
msgid "Internal Server Error"
msgstr "erro no servidor interno"
@@ -1571,7 +1698,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Usuário e/ou senha inválida! Por favor, tente novamente."
-#, fuzzy
+msgid "Isolate Clients"
+msgstr ""
+
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
@@ -1579,8 +1708,8 @@ msgstr ""
"A imagem que está a tentar carregar aparenta nao caber na flash do "
"equipamento. Por favor verifique o arquivo da imagem!"
-msgid "Java Script required!"
-msgstr "É necessário Java Script!"
+msgid "JavaScript required!"
+msgstr "É necessário JavaScript!"
msgid "Join Network"
msgstr "Conectar à Rede"
@@ -1589,7 +1718,7 @@ msgid "Join Network: Wireless Scan"
msgstr "Conectar à Rede: Busca por Rede Sem Fio"
msgid "Joining Network: %q"
-msgstr ""
+msgstr "Juntando-se à rede %q"
msgid "Keep settings"
msgstr "Manter configurações"
@@ -1634,13 +1763,13 @@ msgid "Language and Style"
msgstr "Idioma e Estilo"
msgid "Latency"
-msgstr ""
+msgstr "Latência"
msgid "Leaf"
-msgstr ""
+msgstr "Folha"
msgid "Lease time"
-msgstr ""
+msgstr "Tempo de concessão"
msgid "Lease validity time"
msgstr "Tempo de validade da atribuição"
@@ -1668,21 +1797,23 @@ msgstr "Limite"
msgid "Limit DNS service to subnets interfaces on which we are serving DNS."
msgstr ""
+"Limite o serviço DNS para subredes das interfaces nas quais estamos servindo "
+"DNS."
msgid "Limit listening to these interfaces, and loopback."
-msgstr ""
+msgstr "Escute somente nestas interfaces e na interface local (loopback) "
msgid "Line Attenuation (LATN)"
-msgstr ""
+msgstr "Atenuação de Linha (<abbr title=\"Line Attenuation\">LATN</abbr>)"
msgid "Line Mode"
-msgstr ""
+msgstr "Modo da Linha"
msgid "Line State"
-msgstr ""
+msgstr "Estado da Linha"
msgid "Line Uptime"
-msgstr ""
+msgstr "Tempo de Atividade da Linha"
msgid "Link On"
msgstr "Enlace Ativo"
@@ -1694,8 +1825,34 @@ msgstr ""
"Lista dos servidores <abbr title=\"Domain Name System\">DNS</abbr> para "
"encaminhar as requisições"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+"Lista dos R0KHs no mesmo Domínio de Mobilidade. <br /> Formato: Endereço "
+"MAC, Identificador NAS, chave de 128 bits como cadeia hexadecimal. <br /> "
+"Esta lista é usada para mapear o Identificador R0KH (Identificador NAS) para "
+"um endereço MAC de destino ao solicitar a chave PMK-R1 a partir do R0KH que "
+"o STA usado durante a Associação de Domínio de Mobilidade Inicial."
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+"Lista dos R1KHs no mesmo Domínio de Mobilidade. <br /> Formato: Endereço "
+"MAC, R1KH-ID como 6 octetos com dois pontos, chave de 128 bits como cadeia "
+"hexadecimal. <br /> Esta lista é usada para mapear o identificador R1KH para "
+"um endereço MAC de destino ao enviar a chave PMK-R1 a partir do R0KH. Esta é "
+"também a lista de R1KHs autorizados no MD que podem solicitar chaves PMK-R1."
+
msgid "List of SSH key files for auth"
-msgstr ""
+msgstr "Lista de arquivos de chaves SSH para autenticação"
msgid "List of domains to allow RFC1918 responses for"
msgstr ""
@@ -1708,7 +1865,10 @@ msgstr ""
"fornecem resultados errados para consultas a domínios inexistentes (NX)"
msgid "Listen Interfaces"
-msgstr ""
+msgstr "Interfaces de Escuta"
+
+msgid "Listen Port"
+msgstr "Porta de Escuta"
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1727,7 +1887,7 @@ msgid "Loading"
msgstr "Carregando"
msgid "Local IP address to assign"
-msgstr ""
+msgstr "Endereço IP local para atribuir"
msgid "Local IPv4 address"
msgstr "Endereço IPv4 local"
@@ -1736,7 +1896,7 @@ msgid "Local IPv6 address"
msgstr "Endereço IPv6 local"
msgid "Local Service Only"
-msgstr ""
+msgstr "Somente Serviço Local"
msgid "Local Startup"
msgstr "Iniciação Local"
@@ -1747,7 +1907,6 @@ msgstr "Hora Local"
msgid "Local domain"
msgstr "Domínio Local"
-#, fuzzy
msgid ""
"Local domain specification. Names matching this domain are never forwarded "
"and are resolved from DHCP or hosts files only"
@@ -1775,7 +1934,7 @@ msgid "Localise queries"
msgstr "Localizar consultas"
msgid "Locked to channel %s used by: %s"
-msgstr ""
+msgstr "Travado no canal %s usado por: %s"
msgid "Log output level"
msgstr "Nível de detalhamento de saída dos registros"
@@ -1794,6 +1953,8 @@ msgstr "Sair"
msgid "Loss of Signal Seconds (LOSS)"
msgstr ""
+"Segundos de Perda de Sinal (<abbr title=\"Loss of Signal Seconds\">LOSS</"
+"abbr>)"
msgid "Lowest leased address as offset from the network address."
msgstr "O endereço mais baixo concedido como deslocamento do endereço da rede."
@@ -1811,13 +1972,13 @@ msgid "MAC-List"
msgstr "Lista de MAC"
msgid "MAP / LW4over6"
-msgstr ""
+msgstr "MAP / LW4over6"
msgid "MB/s"
msgstr "MB/s"
msgid "MD5"
-msgstr ""
+msgstr "MD5"
msgid "MHz"
msgstr "MHz"
@@ -1831,15 +1992,16 @@ msgid ""
"Make sure to clone the root filesystem using something like the commands "
"below:"
msgstr ""
+"Certifique-se que clonou o sistema de arquivos raiz com algo como o comando "
+"abaixo:"
msgid "Manual"
-msgstr ""
+msgstr "Manual"
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-
-msgid "Maximum Rate"
-msgstr "Taxa Máxima"
+"Taxa de Dados Atingível Máxima (<abbr title=\"Maximum Attainable Data Rate"
+"\">ATTNDR</abbr>)"
msgid "Maximum allowed number of active DHCP leases"
msgstr "Número máximo permitido de alocações DHCP ativas"
@@ -1861,6 +2023,8 @@ msgid ""
"Maximum length of the name is 15 characters including the automatic protocol/"
"bridge prefix (br-, 6in4-, pppoe- etc.)"
msgstr ""
+"Comprimento máximo do nome é de 15 caracteres, incluindo o prefixo "
+"automático do protocolo/ponte (br-, 6in4- pppoe-, etc.)"
msgid "Maximum number of leased addresses."
msgstr "Número máximo de endereços atribuídos."
@@ -1877,26 +2041,26 @@ msgstr "Uso da memória (%)"
msgid "Metric"
msgstr "Métrica"
-msgid "Minimum Rate"
-msgstr "Taxa Mínima"
-
msgid "Minimum hold time"
msgstr "Tempo mínimo de espera"
msgid "Mirror monitor port"
-msgstr ""
+msgstr "Porta de monitoramento do espelho"
msgid "Mirror source port"
-msgstr ""
+msgstr "Porta de origem do espelho"
msgid "Missing protocol extension for proto %q"
msgstr "Extensão para o protocolo %q está ausente"
+msgid "Mobility Domain"
+msgstr "Domínio da Mobilidade"
+
msgid "Mode"
msgstr "Modo"
msgid "Model"
-msgstr ""
+msgstr "Modelo"
msgid "Modem device"
msgstr "Dispositivo do Modem"
@@ -1930,7 +2094,7 @@ msgstr ""
"anexado ao sistema de arquivos"
msgid "Mount filesystems not specifically configured"
-msgstr ""
+msgstr "Monte sistemas de arquivos não especificamente configurados"
msgid "Mount options"
msgstr "Opções de montagem"
@@ -1939,7 +2103,7 @@ msgid "Mount point"
msgstr "Ponto de montagem"
msgid "Mount swap not specifically configured"
-msgstr ""
+msgstr "Montar espalho de troca (swap) não especificamente configurado"
msgid "Mounted file systems"
msgstr "Sistemas de arquivos montados"
@@ -1950,9 +2114,6 @@ msgstr "Mover para baixo"
msgid "Move up"
msgstr "Mover para cima"
-msgid "Multicast Rate"
-msgstr "Taxa de Multicast"
-
msgid "Multicast address"
msgstr "Endereço de Multicast"
@@ -1960,22 +2121,25 @@ msgid "NAS ID"
msgstr "NAS ID"
msgid "NAT-T Mode"
-msgstr ""
+msgstr "Modo NAT-T"
msgid "NAT64 Prefix"
+msgstr "Prefixo NAT64"
+
+msgid "NCM"
msgstr ""
msgid "NDP-Proxy"
-msgstr ""
+msgstr "Proxy NDP"
msgid "NT Domain"
-msgstr ""
+msgstr "Domínio NT"
msgid "NTP server candidates"
msgstr "Candidatos a servidor NTP"
msgid "NTP sync time-out"
-msgstr ""
+msgstr "Tempo limite da sincronia do NTP"
msgid "Name"
msgstr "Nome"
@@ -2011,7 +2175,7 @@ msgid "No DHCP Server configured for this interface"
msgstr "Nenhum Servidor DHCP configurado para esta interface"
msgid "No NAT-T"
-msgstr ""
+msgstr "Sem NAT-T"
msgid "No chains in this table"
msgstr "Nenhuma cadeira nesta tabela"
@@ -2047,16 +2211,18 @@ msgid "Noise"
msgstr "Ruído"
msgid "Noise Margin (SNR)"
-msgstr ""
+msgstr "Margem de Ruído (<abbr title=\"Noise Margin\">SNR</abbr>)"
msgid "Noise:"
msgstr "Ruído:"
msgid "Non Pre-emtive CRC errors (CRC_P)"
msgstr ""
+"Erros CRC Não Preemptivos<abbr title=\"Non Pre-emptive CRC errors\">CRC_P</"
+"abbr>"
msgid "Non-wildcard"
-msgstr ""
+msgstr "Sem caracter curinga"
msgid "None"
msgstr "Nenhum"
@@ -2077,7 +2243,7 @@ msgid "Note: Configuration files will be erased."
msgstr "Nota: Os arquivos de configuração serão apagados."
msgid "Note: interface name length"
-msgstr ""
+msgstr "Aviso: tamanho do nome da interface"
msgid "Notice"
msgstr "Aviso"
@@ -2092,10 +2258,10 @@ msgid "OPKG-Configuration"
msgstr "Configuração-OPKG"
msgid "Obfuscated Group Password"
-msgstr ""
+msgstr "Senha Ofuscada do Grupo"
msgid "Obfuscated Password"
-msgstr ""
+msgstr "Senha Ofuscada"
msgid "Off-State Delay"
msgstr "Atraso no estado de desligado"
@@ -2126,7 +2292,7 @@ msgid "One or more fields contain invalid values!"
msgstr "Um ou mais campos contém valores inválidos!"
msgid "One or more invalid/required values on tab"
-msgstr ""
+msgstr "Um ou mais valores inválidos/obrigatórios na aba"
msgid "One or more required fields have no value!"
msgstr "Um ou mais campos obrigatórios não tem valor!"
@@ -2135,10 +2301,10 @@ msgid "Open list..."
msgstr "Abrir lista..."
msgid "OpenConnect (CISCO AnyConnect)"
-msgstr ""
+msgstr "OpenConnect (CISCO AnyConnect)"
msgid "Operating frequency"
-msgstr ""
+msgstr "Frequência de Operação"
msgid "Option changed"
msgstr "Opção alterada"
@@ -2146,11 +2312,57 @@ msgstr "Opção alterada"
msgid "Option removed"
msgstr "Opção removida"
+msgid "Optional"
+msgstr "Opcional"
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
+"Opcional, especifique para sobrescrever o servidor padrão (tic.sixxs.net)"
msgid "Optional, use when the SIXXS account has more than one tunnel"
+msgstr "Opcional, para usar quando a conta SIXXS tem mais de um túnel"
+
+msgid "Optional."
+msgstr "Opcional."
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
msgstr ""
+"Opcional. Adiciona uma camada extra de cifragem simétrica para resistência "
+"pós quântica."
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr "Opcional. Cria rotas para endereços IP Autorizados para este parceiro."
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+"Opcional. Equipamento do parceiro. Nomes serão resolvido antes de levantar a "
+"interface."
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr "Opcional. Unidade Máxima de Transmissão da interface do túnel."
+
+msgid "Optional. Port of peer."
+msgstr "Opcional. Porta do parceiro."
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+"Opcional. Segundos entre mensagens para manutenção da conexão. O padrão é 0 "
+"(desabilitado). O valor recomendado caso este dispositivo esteja atrás de "
+"uma NAT é 25."
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr "opcional. Porta UDP usada para pacotes saintes ou entrantes."
msgid "Options"
msgstr "Opções"
@@ -2164,20 +2376,25 @@ msgstr "Saída"
msgid "Outbound:"
msgstr "Saindo:"
-msgid "Outdoor Channels"
-msgstr "Canais para externo"
-
msgid "Output Interface"
-msgstr ""
+msgstr "Interface de Saída"
msgid "Override MAC address"
msgstr "Sobrescrever o endereço MAC"
msgid "Override MTU"
-msgstr "Sobrescrever o MTU"
+msgstr ""
+"Sobrescrever o <abbr title=\"Maximum Transmission Unit/Unidade Máxima de "
+"Transmissão\">MTU</abbr>"
+
+msgid "Override TOS"
+msgstr "Sobrescrever o TOS"
+
+msgid "Override TTL"
+msgstr "Sobrescrever o TTL"
msgid "Override default interface name"
-msgstr ""
+msgstr "Sobrescrever o nome da nova interface"
msgid "Override the gateway in DHCP responses"
msgstr "Sobrescrever o roteador padrão nas respostas do DHCP"
@@ -2211,6 +2428,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr "PMK R1 Push"
+
msgid "PPP"
msgstr "PPP"
@@ -2224,19 +2444,19 @@ msgid "PPPoE"
msgstr "PPPoE"
msgid "PPPoSSH"
-msgstr ""
+msgstr "PPPoSSH"
msgid "PPtP"
msgstr "PPtP"
msgid "PSID offset"
-msgstr ""
+msgstr "Deslocamento PSID"
msgid "PSID-bits length"
-msgstr ""
+msgstr "Comprimento dos bits PSID"
msgid "PTM/EFM (Packet Transfer Mode)"
-msgstr ""
+msgstr "PTM/EFM (Modo de Transferência de Pacotes)"
msgid "Package libiwinfo required!"
msgstr "O pacote libiwinfo é necessário!"
@@ -2263,7 +2483,7 @@ msgid "Password of Private Key"
msgstr "Senha da Chave Privada"
msgid "Password of inner Private Key"
-msgstr ""
+msgstr "Senha da Chave Privada interna"
msgid "Password successfully changed!"
msgstr "A senha foi alterada com sucesso!"
@@ -2281,22 +2501,25 @@ msgid "Path to executable which handles the button event"
msgstr "Caminho para o executável que trata o evento do botão"
msgid "Path to inner CA-Certificate"
-msgstr ""
+msgstr "Caminho para os certificados CA interno"
msgid "Path to inner Client-Certificate"
-msgstr ""
+msgstr "Caminho para o Certificado do Cliente interno"
msgid "Path to inner Private Key"
-msgstr ""
+msgstr "Caminho para a Chave Privada interna"
msgid "Peak:"
msgstr "Pico:"
msgid "Peer IP address to assign"
-msgstr ""
+msgstr "Endereço IP do parceiro para atribuir"
+
+msgid "Peers"
+msgstr "Parceiros"
msgid "Perfect Forward Secrecy"
-msgstr ""
+msgstr "Sigilo Encaminhado Perfeito"
msgid "Perform reboot"
msgstr "Reiniciar o sistema"
@@ -2304,6 +2527,9 @@ msgstr "Reiniciar o sistema"
msgid "Perform reset"
msgstr "Zerar configuração"
+msgid "Persistent Keep Alive"
+msgstr "Manutenção da Conexão Persistente"
+
msgid "Phy Rate:"
msgstr "Taxa física:"
@@ -2329,10 +2555,23 @@ msgid "Port status:"
msgstr "Status da porta"
msgid "Power Management Mode"
-msgstr ""
+msgstr "Modo de Gerenciamento de Energia"
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+"Erros CRC Preemptivos<abbr title=\"Pre-emptive CRC errors\">CRCP_P</abbr>"
+
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr "Prefixo Delegado"
+
+msgid "Preshared Key"
+msgstr "Chave Compartilhada"
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
@@ -2342,7 +2581,7 @@ msgstr ""
"echo do LCP. Use 0 para ignorar as falhas"
msgid "Prevent listening on these interfaces."
-msgstr ""
+msgstr "Evite escutar nestas Interfaces."
msgid "Prevents client-to-client communication"
msgstr "Impede a comunicação de cliente para cliente"
@@ -2350,6 +2589,9 @@ msgstr "Impede a comunicação de cliente para cliente"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b Wireless Controlador"
+msgid "Private Key"
+msgstr "Chave Privada"
+
msgid "Proceed"
msgstr "Proceder"
@@ -2357,7 +2599,7 @@ msgid "Processes"
msgstr "Processos"
msgid "Profile"
-msgstr ""
+msgstr "Perfil"
msgid "Prot."
msgstr "Protocolo"
@@ -2383,14 +2625,28 @@ msgstr "Prover nova rede"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Ad-Hoc falso (ahdemo)"
+msgid "Public Key"
+msgstr "Chave Pública"
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+"Prefixo público roteado para este dispositivo para distribuição a seus "
+"clientes."
+
+msgid "QMI Cellular"
+msgstr "Celular QMI"
msgid "Quality"
msgstr "Qualidade"
+msgid "R0 Key Lifetime"
+msgstr "Validade da Chave R0"
+
+msgid "R1 Key Holder"
+msgstr "Detentor da Chave R1"
+
msgid "RFC3947 NAT-T mode"
-msgstr ""
+msgstr "Modo NAT-T (RFC3947)"
msgid "RTS/CTS Threshold"
msgstr "Limiar RTS/CTS"
@@ -2449,7 +2705,6 @@ msgstr ""
msgid "Really reset all changes?"
msgstr "Realmente limpar todas as mudanças?"
-#, fuzzy
msgid ""
"Really shut down network?\\nYou might lose access to this device if you are "
"connected via this interface."
@@ -2484,6 +2739,9 @@ msgstr "Tráfego em Tempo Real"
msgid "Realtime Wireless"
msgstr "Rede sem fio em Tempo Real"
+msgid "Reassociation Deadline"
+msgstr "Limite para Reassociação"
+
msgid "Rebind protection"
msgstr "Proteção contra \"Rebind\""
@@ -2502,6 +2760,9 @@ msgstr "Receber"
msgid "Receiver Antenna"
msgstr "Antena de Recepção"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr "Recomendado. Endereços IP da interface do WireGuard."
+
msgid "Reconnect this interface"
msgstr "Reconectar esta interface"
@@ -2511,9 +2772,6 @@ msgstr "Reconectando interface"
msgid "References"
msgstr "Referências"
-msgid "Regulatory Domain"
-msgstr "Domínio Regulatório"
-
msgid "Relay"
msgstr "Retransmissor"
@@ -2529,6 +2787,9 @@ msgstr "Ponte por retransmissão"
msgid "Remote IPv4 address"
msgstr "Endereço IPv4 remoto"
+msgid "Remote IPv4 address or FQDN"
+msgstr "Endereço IPv4 remoto ou FQDN"
+
msgid "Remove"
msgstr "Remover"
@@ -2542,21 +2803,47 @@ msgid "Replace wireless configuration"
msgstr "Substituir a configuração da rede sem fio"
msgid "Request IPv6-address"
-msgstr ""
+msgstr "Solicita endereço IPv6"
msgid "Request IPv6-prefix of length"
-msgstr ""
+msgstr "Solicita prefixo IPv6 de tamanho"
msgid "Require TLS"
-msgstr ""
+msgstr "Requer TLS"
+
+msgid "Required"
+msgstr "Necessário"
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
-msgstr "Requerido para alguns provedores de internet, ex. Charter com DOCSIS 3"
+msgstr ""
+"Obrigatório para alguns provedores de internet, ex. Charter com DOCSIS 3"
+
+msgid "Required. Base64-encoded private key for this interface."
+msgstr "Obrigatório. Chave privada codificada em Base64 para esta interface."
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr "Necessário. Chave Pública do parceiro codificada como Base64."
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+"Obrigatório. Endereços IP e prefixos que este parceiro está autorizado a "
+"usar dentro do túnel. Normalmente é o endereço IP do parceiro no túnel e as "
+"redes que o parceiro roteia através do túnel."
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr "Obrigatório. Chave Pública do parceiro."
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
msgstr ""
+"Exige o suporte DNSSEC do servidor superior; verifica se resposta não "
+"assinadas realmente vẽm de domínios não assinados."
msgid "Reset"
msgstr "Limpar"
@@ -2595,13 +2882,19 @@ msgid "Root directory for files served via TFTP"
msgstr "Diretório raiz para arquivos disponibilizados pelo TFTP"
msgid "Root preparation"
-msgstr ""
+msgstr "Prepação da raiz (/)"
+
+msgid "Route Allowed IPs"
+msgstr "Roteie Andereços IP Autorizados"
+
+msgid "Route type"
+msgstr "Tipo de rota"
msgid "Routed IPv6 prefix for downstream interfaces"
-msgstr ""
+msgstr "Prefixo roteável IPv6 para interfaces internas"
msgid "Router Advertisement-Service"
-msgstr ""
+msgstr "Serviço de Anúncio de Roteador"
msgid "Router Password"
msgstr "Senha do Roteador"
@@ -2624,30 +2917,32 @@ msgid "Run filesystem check"
msgstr "Execute a verificação do sistema de arquivos "
msgid "SHA256"
-msgstr ""
+msgstr "SHA256"
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
msgstr ""
+"O SIXXS suporta somente TIC. Use o 6in4 para túneis estáticos usando o "
+"protocolo IP 41 (RFC4213)"
msgid "SIXXS-handle[/Tunnel-ID]"
-msgstr ""
+msgstr "Identificador do SIXXS[/Identificador do Túnel]"
msgid "SNR"
-msgstr ""
+msgstr "SNR"
msgid "SSH Access"
msgstr "Acesso SSH"
msgid "SSH server address"
-msgstr ""
+msgstr "Endereço do servidor SSH"
msgid "SSH server port"
-msgstr ""
+msgstr "Porta do servidor SSH"
msgid "SSH username"
-msgstr ""
+msgstr "Usuário do SSH"
msgid "SSH-Keys"
msgstr "Chaves SSH"
@@ -2689,22 +2984,21 @@ msgstr ""
msgid "Separate Clients"
msgstr "Isolar Clientes"
-msgid "Separate WDS"
-msgstr "Separar WDS"
-
msgid "Server Settings"
msgstr "Configurações do Servidor"
msgid "Server password"
-msgstr ""
+msgstr "Senha do servidor"
msgid ""
"Server password, enter the specific password of the tunnel when the username "
"contains the tunnel ID"
msgstr ""
+"Senha do servidor. Informe a senha para este túnel quando o nome do usuário "
+"contiver o identificador do túnel"
msgid "Server username"
-msgstr ""
+msgstr "Usuário do servidor"
msgid "Service Name"
msgstr "Nome do Serviço"
@@ -2715,7 +3009,11 @@ msgstr "Tipo do Serviço"
msgid "Services"
msgstr "Serviços"
-#, fuzzy
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr "Configurar a Sincronização do Horário"
@@ -2724,9 +3022,11 @@ msgstr "Configurar Servidor DHCP"
msgid "Severely Errored Seconds (SES)"
msgstr ""
+"Segundos com erro severos (<abbr title=\"Severely Errored Seconds\">SES</"
+"abbr>)"
msgid "Short GI"
-msgstr ""
+msgstr "Intervalo de guarda curto"
msgid "Show current backup file list"
msgstr "Mostra a lista atual de arquivos para a cópia de segurança"
@@ -2741,7 +3041,7 @@ msgid "Signal"
msgstr "Sinal"
msgid "Signal Attenuation (SATN)"
-msgstr ""
+msgstr "Atenuação do Sinal (<abbr title=\"Signal Attenuation\">SATN</abbr>)"
msgid "Signal:"
msgstr "Sinal:"
@@ -2750,7 +3050,7 @@ msgid "Size"
msgstr "Tamanho"
msgid "Size (.ipk)"
-msgstr ""
+msgstr "Tamanho (.ipk)"
msgid "Skip"
msgstr "Pular"
@@ -2768,7 +3068,7 @@ msgid "Software"
msgstr "Software"
msgid "Software VLAN"
-msgstr ""
+msgstr "VLAN em Software"
msgid "Some fields are invalid, cannot save values!"
msgstr "Alguns campos estão inválidos e os valores não podem ser salvos!"
@@ -2779,15 +3079,14 @@ msgstr "Desculpe o objeto solicitado não foi encontrado"
msgid "Sorry, the server encountered an unexpected error."
msgstr "Desculpe, o servidor encontrou um erro inesperado."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Sinto muito, não existe suporte para o sysupgrade. Uma nova imagem de "
-"firmware deve ser gravada manualmente. Por favor, consulte a wiki do OpenWrt "
-"para instruções específicas da instalação deste dispositivo."
+"firmware deve ser gravada manualmente. Por favor, consulte a wiki para "
+"instruções específicas da instalação deste dispositivo."
msgid "Sort"
msgstr "Ordenar"
@@ -2796,7 +3095,7 @@ msgid "Source"
msgstr "Origem"
msgid "Source routing"
-msgstr ""
+msgstr "Roteamento pela origem"
msgid "Specifies the button state to handle"
msgstr "Especifica o estado do botão para ser tratado"
@@ -2821,6 +3120,23 @@ msgstr ""
"Especifica a quantidade máxima de segundos antes de considerar que um "
"equipamento está morto"
+msgid "Specify a TOS (Type of Service)."
+msgstr "Especifique um Tipo de Serviço (TOS)"
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+"Especifica o tempo de vida (<abbr title=\"Time to Live\">TTL</abbr>) para os "
+"pacotes encapsulados ao invés do padrão (64)."
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+"Especifica a unidade máxima de transmissão (<abbr title=\"Maximum "
+"Transmission Unit\">MTU</abbr>) ao invés do valor padrão (1280 bytes)"
+
msgid "Specify the secret encryption key here."
msgstr "Especifique a chave de cifragem secreta aqui."
@@ -2845,9 +3161,6 @@ msgstr "Alocações Estáticas"
msgid "Static Routes"
msgstr "Rotas Estáticas"
-msgid "Static WDS"
-msgstr "WDS Estático"
-
msgid "Static address"
msgstr "Endereço Estático"
@@ -2874,13 +3187,13 @@ msgid "Submit"
msgstr "Enviar"
msgid "Suppress logging"
-msgstr ""
+msgstr "Suprimir registros (log)"
msgid "Suppress logging of the routine operation of these protocols"
-msgstr ""
+msgstr "Suprimir registros (log) de operações rotineiras destes protocolos"
msgid "Swap"
-msgstr ""
+msgstr "Espaço de Troca (swap)"
msgid "Swap Entry"
msgstr "Entrada do espaço de troca (Swap)"
@@ -2897,9 +3210,11 @@ msgstr "Switch %q (%s)"
msgid ""
"Switch %q has an unknown topology - the VLAN settings might not be accurate."
msgstr ""
+"O Switch %q tem uma topologia desconhecida - as configurações de VLAN podem "
+"não ser precisas."
msgid "Switch VLAN"
-msgstr ""
+msgstr "Switch VLAN"
msgid "Switch protocol"
msgstr "Trocar o protocolo"
@@ -2944,12 +3259,11 @@ msgid "Target"
msgstr "Destino"
msgid "Target network"
-msgstr ""
+msgstr "Rede de destino"
msgid "Terminate"
msgstr "Terminar"
-#, fuzzy
msgid ""
"The <em>Device Configuration</em> section covers physical settings of the "
"radio hardware such as channel, transmit power or antenna selection which "
@@ -2975,6 +3289,12 @@ msgid ""
"The HE.net endpoint update configuration changed, you must now use the plain "
"username instead of the user ID!"
msgstr ""
+"A configuração da atualização de pontas HE.net mudou. Você deve agora usar o "
+"nome do usuário ao invés do identificador do usuário!"
+
+msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr "O endereço IPv4 ou o nome completo (FQDN) da ponta remota do túnel."
msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
@@ -2990,13 +3310,14 @@ msgstr ""
msgid "The configuration file could not be loaded due to the following error:"
msgstr ""
+"O arquivo de configuração não pode ser carregado devido ao seguinte erro:"
msgid ""
"The device file of the memory or partition (<abbr title=\"for example\">e.g."
"</abbr> <code>/dev/sda1</code>)"
msgstr ""
-"O arquivo do dispositivo de armazenamento ou da partição (<abbr title=\"por "
-"exemplo\">ex.</abbr> <code>/dev/sda1</code>)"
+"O arquivo do dispositivo de armazenamento ou da partição (ex: <code>/dev/"
+"sda1</code>)"
msgid ""
"The filesystem that was used to format the memory (<abbr title=\"for example"
@@ -3029,7 +3350,6 @@ msgstr "As seguintes regras estão atualmente ativas neste sistema."
msgid "The given network name is not unique"
msgstr "O nome de rede informado não é único"
-#, fuzzy
msgid ""
"The hardware is not multi-SSID capable and the existing configuration will "
"be replaced if you proceed."
@@ -3046,6 +3366,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "O comprimento do prefixo IPv6 em bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr "O endereço IPv4 local sobre o qual o túnel será criado (opcional)."
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3066,7 +3389,7 @@ 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 ""
+msgstr "A chave eletrônica enviada é inválida ou já expirou!"
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
@@ -3075,7 +3398,6 @@ msgstr ""
"O sistema está apagando agora a partição da configuração e irá reiniciar "
"quando terminado."
-#, fuzzy
msgid ""
"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 "
@@ -3091,6 +3413,8 @@ msgid ""
"The tunnel end-point is behind NAT, defaults to disabled and only applies to "
"AYIYA"
msgstr ""
+"O final do túnel está atrás de um NAT. Por padrão será desabilitado e "
+"somente se aplica a AYIYA"
msgid ""
"The uploaded image file does not contain a supported format. Make sure that "
@@ -3133,6 +3457,9 @@ msgid ""
"'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain "
"Name System\">DNS</abbr> servers."
msgstr ""
+"Este arquivo deve conter linhas como 'server=/domain/1.2.3.4' ou "
+"'server=1.2.3.4' para servidores <abbr title=\"Domain Name System/Sistema de "
+"Nomes de Domínios\">DNS</abbr> por domínio ou completos."
msgid ""
"This is a list of shell glob patterns for matching files and directories to "
@@ -3148,6 +3475,8 @@ msgid ""
"This is either the \"Update Key\" configured for the tunnel or the account "
"password if no update key has been configured"
msgstr ""
+"Isto é a \"Update Key\" configurada para o túnel ou a senha da cpnta se não "
+"tem uma \"Update Keu\" configurada"
msgid ""
"This is the content of /etc/rc.local. Insert your own commands here (in "
@@ -3171,11 +3500,13 @@ msgstr ""
"\">DHCP</abbr> na rede local"
msgid "This is the plain username for logging into the account"
-msgstr ""
+msgstr "Este é o nome do usuário em para se autenticar na sua conta"
msgid ""
"This is the prefix routed to you by the tunnel broker for use by clients"
msgstr ""
+"Este é o prefixo roteado pelo agente do tunel para você usar com seus "
+"clientes"
msgid "This is the system crontab in which scheduled tasks can be defined."
msgstr "Este é o sistema de agendamento de tarefas."
@@ -3219,7 +3550,7 @@ msgstr ""
"de segurança anterior."
msgid "Tone"
-msgstr ""
+msgstr "Tom"
msgid "Total Available"
msgstr "Total Disponível"
@@ -3258,19 +3589,16 @@ msgid "Tunnel Interface"
msgstr "Interface de Tunelamento"
msgid "Tunnel Link"
-msgstr ""
+msgstr "Enlace do túnel"
msgid "Tunnel broker protocol"
-msgstr ""
+msgstr "Protocolo do agente do túnel"
msgid "Tunnel setup server"
-msgstr ""
+msgstr "Servidor de configuração do túnel"
msgid "Tunnel type"
-msgstr ""
-
-msgid "Turbo Mode"
-msgstr "Modo Turbo"
+msgstr "Tipo de túnel"
msgid "Tx-Power"
msgstr "Potência de transmissão"
@@ -3290,6 +3618,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "Dispositivo USB"
+msgid "USB Ports"
+msgstr "Portas USB"
+
msgid "UUID"
msgstr "UUID"
@@ -3298,6 +3629,8 @@ msgstr "Não é possível a expedição"
msgid "Unavailable Seconds (UAS)"
msgstr ""
+"Segundos de indisponibilidade (<abbr title=\"Unavailable Seconds\">UAS</"
+"abbr>)"
msgid "Unknown"
msgstr "Desconhecido"
@@ -3309,7 +3642,7 @@ msgid "Unmanaged"
msgstr "Não gerenciado"
msgid "Unmount"
-msgstr ""
+msgstr "Desmontar"
msgid "Unsaved Changes"
msgstr "Alterações Não Salvas"
@@ -3322,12 +3655,12 @@ msgstr "Atualizar listas"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Envia uma imagem compatível do sistema para substituir o firmware em "
"execução. Marque \"Manter configurações\" para manter as configurações "
-"atuais (requer uma imagem OpenWrt compatível)."
+"atuais (requer uma imagem compatível)."
msgid "Upload archive..."
msgstr "Enviar arquivo..."
@@ -3351,22 +3684,24 @@ msgid "Use ISO/IEC 3166 alpha2 country codes."
msgstr "Usar códigos de países ISO/IEC 3166 alpha2."
msgid "Use MTU on tunnel interface"
-msgstr "Use MTU na interface do túnel"
+msgstr ""
+"Use o <abbr title=\"Maximum Transmission Unit/Unidade Máxima de Transmissão"
+"\">MTU</abbr> na interface do túnel"
msgid "Use TTL on tunnel interface"
msgstr "Use TTL na interface do túnel"
msgid "Use as external overlay (/overlay)"
-msgstr ""
+msgstr "Use como uma sobreposição externa (/overlay)"
msgid "Use as root filesystem (/)"
-msgstr ""
+msgstr "Usar como o sistema de arquivos raiz (/)"
msgid "Use broadcast flag"
msgstr "Use a marcação de broadcast"
msgid "Use builtin IPv6-management"
-msgstr ""
+msgstr "Use o gerenciamento do IPv6 embarcado"
msgid "Use custom DNS servers"
msgstr "Use servidores DNS personalizados"
@@ -3399,11 +3734,18 @@ msgstr "Usado"
msgid "Used Key Slot"
msgstr "Posição da Chave Usada"
-msgid "User certificate (PEM encoded)"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
msgstr ""
+"Usado para dois diferentes propósitos: identificador do RADIUS NAS e do "
+"802.11r R0KH. Não necessário com o WPA(2)-PSK normal."
+
+msgid "User certificate (PEM encoded)"
+msgstr "Certificado do usuário (codificado em formato PEM)"
msgid "User key (PEM encoded)"
-msgstr ""
+msgstr "Chave do usuário (codificada em formato PEM)"
msgid "Username"
msgstr "Usuário"
@@ -3412,7 +3754,7 @@ msgid "VC-Mux"
msgstr "VC-Mux"
msgid "VDSL"
-msgstr ""
+msgstr "VDSL"
msgid "VLANs on %q"
msgstr "VLANs em %q"
@@ -3421,34 +3763,34 @@ msgid "VLANs on %q (%s)"
msgstr "VLANs em %q (%s)"
msgid "VPN Local address"
-msgstr ""
+msgstr "Endereço Local da VPN"
msgid "VPN Local port"
-msgstr ""
+msgstr "Porta Local da VPN"
msgid "VPN Server"
msgstr "Servidor VPN"
msgid "VPN Server port"
-msgstr ""
+msgstr "Porta do Servidor VPN"
msgid "VPN Server's certificate SHA1 hash"
-msgstr ""
+msgstr "Resumo digital SHA1 do certificado do servidor VPN"
msgid "VPNC (CISCO 3000 (and others) VPN)"
-msgstr ""
+msgstr "VPNC (VPN do CISCO 3000 (e outros))"
msgid "Vendor"
-msgstr ""
+msgstr "Fabricante"
msgid "Vendor Class to send when requesting DHCP"
msgstr "Classe do fabricante para enviar quando requisitar o DHCP"
msgid "Verbose"
-msgstr ""
+msgstr "Detalhado"
msgid "Verbose logging by aiccu daemon"
-msgstr ""
+msgstr "Habilite registros detalhados do serviço AICCU"
msgid "Verify"
msgstr "Verificar"
@@ -3484,6 +3826,8 @@ msgstr ""
msgid ""
"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)"
msgstr ""
+"Espere esta quantidade de segundos pela sincronia do NTP. Definindo como 0 "
+"desabilita a espera (opcional)"
msgid "Waiting for changes to be applied..."
msgstr "Esperando a aplicação das mudanças..."
@@ -3492,22 +3836,25 @@ msgid "Waiting for command to complete..."
msgstr "Esperando o término do comando..."
msgid "Waiting for device..."
-msgstr ""
+msgstr "Esperando pelo dispositivo..."
msgid "Warning"
msgstr "Atenção"
msgid "Warning: There are unsaved changes that will get lost on reboot!"
-msgstr ""
+msgstr "Atenção: Existem mudanças não salvas que serão perdidas ao reiniciar!"
msgid "Whether to create an IPv6 default route over the tunnel"
-msgstr ""
+msgstr "Se deve criar uma rota padrão IPv6 sobre o túnel"
msgid "Whether to route only packets from delegated prefixes"
-msgstr ""
+msgstr "Se deve rotear somente pacotes de prefixos delegados"
msgid "Width"
-msgstr ""
+msgstr "Largura"
+
+msgid "WireGuard VPN"
+msgstr "VPN WireGuard"
msgid "Wireless"
msgstr "Rede sem fio"
@@ -3546,10 +3893,7 @@ msgid "Write received DNS requests to syslog"
msgstr "Escreva as requisições DNS para o servidor de registro (syslog)"
msgid "Write system log to file"
-msgstr ""
-
-msgid "XR Support"
-msgstr "Suporte a XR"
+msgstr "Escrever registo do sistema (log) no arquivo"
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
@@ -3563,7 +3907,7 @@ msgstr ""
"inacessível!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
"Você precisa habilitar o JavaScript no seu navegador ou o LuCI não irá "
"funcionar corretamente."
@@ -3573,6 +3917,9 @@ msgid ""
"upgrade it to at least version 7 or use another browser like Firefox, Opera "
"or Safari."
msgstr ""
+"Seu Internet Explorer é muito velho para mostrar esta página corretamente. "
+"Por favor, atualiza para, ao menos, a versão 7 ou use outro navegador como o "
+"Firefox, Opera ou Safari."
msgid "any"
msgstr "qualquer"
@@ -3580,9 +3927,8 @@ msgstr "qualquer"
msgid "auto"
msgstr "automático"
-#, fuzzy
msgid "automatic"
-msgstr "estático"
+msgstr "automático"
msgid "baseT"
msgstr "baseT"
@@ -3606,7 +3952,7 @@ msgid "disable"
msgstr "desativar"
msgid "disabled"
-msgstr ""
+msgstr "desabilitado"
msgid "expired"
msgstr "expirado"
@@ -3634,7 +3980,7 @@ msgid "hidden"
msgstr "ocultar"
msgid "hybrid mode"
-msgstr ""
+msgstr "Modo Híbrido"
msgid "if target is a network"
msgstr "se o destino for uma rede"
@@ -3656,10 +4002,13 @@ msgstr ""
"Arquivo local de <abbr title=\"Sistema de Nomes de Domínios\">DNS</abbr>"
msgid "minimum 1280, maximum 1480"
-msgstr ""
+msgstr "mínimo 1280, máximo 1480"
+
+msgid "minutes"
+msgstr "minutos"
msgid "navigation Navigation"
-msgstr ""
+msgstr "navegação Navegação"
# Is this yes/no or no like in no one?
msgid "no"
@@ -3672,7 +4021,7 @@ msgid "none"
msgstr "nenhum"
msgid "not present"
-msgstr ""
+msgstr "não presente "
msgid "off"
msgstr "desligado"
@@ -3684,35 +4033,38 @@ msgid "open"
msgstr "aberto"
msgid "overlay"
-msgstr ""
+msgstr "sobreposição"
msgid "relay mode"
-msgstr ""
+msgstr "modo retransmissor"
msgid "routed"
msgstr "roteado"
msgid "server mode"
-msgstr ""
+msgstr "modo servidor"
msgid "skiplink1 Skip to navigation"
-msgstr ""
+msgstr "skiplink1 Pular para a navegação"
msgid "skiplink2 Skip to content"
-msgstr ""
+msgstr "skiplink2 Pular para o conteúdo"
msgid "stateful-only"
-msgstr ""
+msgstr "somente com estado"
msgid "stateless"
-msgstr ""
+msgstr "sem estado"
msgid "stateless + stateful"
-msgstr ""
+msgstr "sem estado + com estado"
msgid "tagged"
msgstr "etiquetado"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr "unidades de tempo (TUs / 1.024 ms) [1000-65535]"
+
msgid "unknown"
msgstr "desconhecido"
@@ -3734,6 +4086,54 @@ msgstr "sim"
msgid "« Back"
msgstr "« Voltar"
+#~ msgid "AR Support"
+#~ msgstr "Suporte AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Controlador Wireless Atheros 802.11%s"
+
+#~ msgid "Background Scan"
+#~ msgstr "Busca em Segundo Plano"
+
+#~ msgid "Compression"
+#~ msgstr "Compressão"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Desativar temporizador de Beacon de Hardware"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Não enviar respostas de exames"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Quadros Rápidos"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Taxa Máxima"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Taxa Mínima"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Taxa de Multicast"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Canais para externo"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Domínio Regulatório"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Separar WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS Estático"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Modo Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Suporte a XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Uma rede adicional será criada se você deixar isto desmarcado."
diff --git a/modules/luci-base/po/pt/base.po b/modules/luci-base/po/pt/base.po
index 126ce5372..8322e20fd 100644
--- a/modules/luci-base/po/pt/base.po
+++ b/modules/luci-base/po/pt/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Carga de 1 Minuto:"
msgid "15 Minute Load:"
msgstr "Carga de 15 minutos:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Carga 5 Minutos:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
"<abbr title=\"Identificador de Conjunto Básico de Serviços\">BSSID</abbr>"
@@ -148,9 +175,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Suporte AR"
-
msgid "ARP retry threshold"
msgstr "Limiar de tentativas ARP"
@@ -290,6 +314,9 @@ msgid ""
msgstr ""
"Permitir respostas a montante na gama 127.0.0.1/8, p.e. para serviços RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -298,9 +325,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -396,9 +420,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Estações Associadas"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Controlador Wireless Atheros 802.11%s"
-
msgid "Auth Group"
msgstr ""
@@ -408,6 +429,9 @@ msgstr ""
msgid "Authentication"
msgstr "Autenticação"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritário"
@@ -474,9 +498,6 @@ msgstr "Voltar à vista global"
msgid "Back to scan results"
msgstr "Voltar aos resultados do scan"
-msgid "Background Scan"
-msgstr "Procurar em Segundo Plano"
-
msgid "Backup / Flash Firmware"
msgstr "Backup / Flashar Firmware"
@@ -504,9 +525,15 @@ msgstr ""
"configuração alterados e marcados pelo opkg, ficheiros base essenciais e "
"padrões de backup definidos pelo utilizador."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Taxa de bits"
@@ -575,6 +602,9 @@ msgstr "Verificar"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -636,9 +666,6 @@ msgstr "Comando"
msgid "Common Configuration"
msgstr "Configuração comum"
-msgid "Compression"
-msgstr "Compressão"
-
msgid "Configuration"
msgstr "Configuração"
@@ -859,12 +886,12 @@ msgstr "Desativar configuração de DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Desativar temporizador de HW-Beacon"
-
msgid "Disabled"
msgstr "Desativado"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Descartar respostas RFC1918 a montante"
@@ -906,15 +933,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Não encaminhar lookups reversos para as redes locais"
-msgid "Do not send probe responses"
-msgstr "Não enviar respostas a sondas"
-
msgid "Domain required"
msgstr "Requerer domínio"
msgid "Domain whitelist"
msgstr "Lista Branca do Dominio"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -988,6 +1015,9 @@ msgstr "Ativar <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Ativar a atualização dinâmica de ponto final HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Ativar a negociação IPv6 no link PPP"
@@ -1018,6 +1048,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Ativar este mount"
@@ -1030,6 +1063,11 @@ msgstr "Ativar/Desativar"
msgid "Enabled"
msgstr "Ativado"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Ativa o Spanning Tree nesta bridge"
@@ -1039,6 +1077,12 @@ msgstr "Modo de encapsulamento"
msgid "Encryption"
msgstr "Encriptação"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "A apagar..."
@@ -1073,6 +1117,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Servidor externo de logs de sistema"
@@ -1085,9 +1135,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Frames Rápidas"
-
msgid "File"
msgstr "Ficheiro"
@@ -1123,6 +1170,9 @@ msgstr "Terminar"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Definições da Firewall"
@@ -1168,6 +1218,9 @@ msgstr "Forçar TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forçar TKIP e CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1198,6 +1251,11 @@ msgstr "Livre"
msgid "Free space"
msgstr "Espaço livre"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1256,6 +1314,9 @@ msgstr "Password HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Handler"
@@ -1318,6 +1379,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Endereço IP"
@@ -1360,6 +1424,9 @@ msgstr "Comprimento do prefixo IPv4"
msgid "IPv4-Address"
msgstr "Endereço-IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1408,6 +1475,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "Endereço-IPv6"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-em-IPv4 (RFC4213)"
@@ -1554,6 +1624,9 @@ msgstr "O ID de VLAN fornecido é inválido! Só os IDs únicos são permitidos.
msgid "Invalid username and/or password! Please try again."
msgstr "Username inválido e/ou a password! Por favor, tente novamente."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1562,8 +1635,8 @@ msgstr ""
"A imagem que está a tentar carregar aparenta não caber na flash do "
"equipamento. Por favor verifique o ficheiro de imagem."
-msgid "Java Script required!"
-msgstr "É necessário Javascript!"
+msgid "JavaScript required!"
+msgstr "É necessário JavaScript!"
msgid "Join Network"
msgstr "Associar Rede"
@@ -1677,6 +1750,22 @@ msgstr ""
"Lista de servidores <abbr title=\"Sistema Nomes de Domínio\">DNS</abbr> para "
"onde encaminhar os pedidos"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1689,6 +1778,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"Escutar apenas na interface fornecida ou, se não especificada, em todas"
@@ -1812,9 +1904,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Taxa Máxima"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "Número máximo permitido de concessões DHCP ativas"
@@ -1850,9 +1939,6 @@ msgstr "Uso de memória (%)"
msgid "Metric"
msgstr "Métrica"
-msgid "Minimum Rate"
-msgstr "Taxa Mínima"
-
msgid "Minimum hold time"
msgstr "Tempo de retenção mínimo"
@@ -1865,6 +1951,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "Falta a extensão de protocolo para o protocolo %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Modo"
@@ -1923,9 +2012,6 @@ msgstr "Subir"
msgid "Move up"
msgstr "Descer"
-msgid "Multicast Rate"
-msgstr "Taxa de Multicast"
-
msgid "Multicast address"
msgstr "Endereço de multicast"
@@ -1938,6 +2024,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2118,12 +2207,50 @@ msgstr "Opção alterada"
msgid "Option removed"
msgstr "Opção removida"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Opções"
@@ -2136,9 +2263,6 @@ msgstr "Saída"
msgid "Outbound:"
msgstr "Saída:"
-msgid "Outdoor Channels"
-msgstr "Canais de Outdoor"
-
msgid "Output Interface"
msgstr ""
@@ -2148,6 +2272,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2180,6 +2310,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2264,6 +2397,9 @@ msgstr "Pico:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2273,6 +2409,9 @@ msgstr "Executar reinicialização"
msgid "Perform reset"
msgstr "Executar reset"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2303,6 +2442,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2317,6 +2468,9 @@ msgstr "Impede a comunicação cliente-a-cliente"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Controlador Wireless Prism2/2.5/3 802.11b"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Proceder"
@@ -2350,12 +2504,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Qualidade"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2448,6 +2614,9 @@ msgstr "Tráfego em Tempo Real"
msgid "Realtime Wireless"
msgstr "Wireless em Tempo Real"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Religar protecção"
@@ -2466,6 +2635,9 @@ msgstr "Receber"
msgid "Receiver Antenna"
msgstr "Antena de Recepção"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Reconetar esta interface"
@@ -2475,9 +2647,6 @@ msgstr "A reconectar interface"
msgid "References"
msgstr "Referências"
-msgid "Regulatory Domain"
-msgstr "Domínio Regulatório"
-
msgid "Relay"
msgstr ""
@@ -2493,6 +2662,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr "Endereço IPv4 remoto"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Remover"
@@ -2514,9 +2686,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Necessário para certos ISPs, p.ex. Charter with DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2561,6 +2753,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2651,9 +2849,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Isolar Clientes"
-msgid "Separate WDS"
-msgstr "Separar WDS"
-
msgid "Server Settings"
msgstr ""
@@ -2677,6 +2872,11 @@ msgstr "Tipo de Serviço"
msgid "Services"
msgstr "Serviços"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Configurar Sincronização Horária"
@@ -2743,8 +2943,8 @@ msgstr "Lamento, o servidor encontrou um erro inesperado."
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2775,6 +2975,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2799,9 +3012,6 @@ msgstr "Atribuições Estáticas"
msgid "Static Routes"
msgstr "Rotas Estáticas"
-msgid "Static WDS"
-msgstr "WDS Estático"
-
msgid "Static address"
msgstr "Endereço estático"
@@ -2920,6 +3130,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"O prefixo IPv6 atribuído ao provider, habitualmente termina com <code>::</"
@@ -2989,6 +3203,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "O comprimento do prefixo IPv6 em bits"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3203,9 +3420,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Modo Turbo"
-
msgid "Tx-Power"
msgstr "Potência de Tx"
@@ -3224,6 +3438,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "Dispositivo USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3256,8 +3473,8 @@ msgstr "Actualizar listas"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3325,6 +3542,11 @@ msgstr "Usado"
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3435,6 +3657,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Rede Wireless"
@@ -3474,9 +3699,6 @@ msgstr "Escrever os pedidos de DNS para o syslog"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Suporte XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3489,9 +3711,9 @@ msgstr ""
"inacessível!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Tem de activar o Java Script no seu browser ou a LuCI não funcionará "
+"Tem de activar o JavaScript no seu browser ou a LuCI não funcionará "
"corretamente."
msgid ""
@@ -3584,6 +3806,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3638,6 +3863,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "desconhecido"
@@ -3659,6 +3887,54 @@ msgstr "sim"
msgid "« Back"
msgstr "« Voltar"
+#~ msgid "AR Support"
+#~ msgstr "Suporte AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Controlador Wireless Atheros 802.11%s"
+
+#~ msgid "Background Scan"
+#~ msgstr "Procurar em Segundo Plano"
+
+#~ msgid "Compression"
+#~ msgstr "Compressão"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Desativar temporizador de HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Não enviar respostas a sondas"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Frames Rápidas"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Taxa Máxima"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Taxa Mínima"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Taxa de Multicast"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Canais de Outdoor"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Domínio Regulatório"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Separar WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "WDS Estático"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Modo Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Suporte XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Uma rede adicional será criada se deixar isto desmarcado."
diff --git a/modules/luci-base/po/ro/base.po b/modules/luci-base/po/ro/base.po
index 58a22c0d3..ebcda351d 100644
--- a/modules/luci-base/po/ro/base.po
+++ b/modules/luci-base/po/ro/base.po
@@ -42,18 +42,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Incarcarea in ultimul minut"
msgid "15 Minute Load:"
msgstr "Incarcarea in ultimele 15 minute"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Incarcarea in ultimele 5 minute"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -139,9 +166,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Suport AR"
-
msgid "ARP retry threshold"
msgstr "ARP prag reincercare"
@@ -276,6 +300,9 @@ msgid ""
msgstr ""
"Permite raspuns upstream in plaja 127.0.0.0/8, e.g. pentru serviciile RBL"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -284,9 +311,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -382,9 +406,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Statiile asociate"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s Controler Fara Fir"
-
msgid "Auth Group"
msgstr ""
@@ -394,6 +415,9 @@ msgstr ""
msgid "Authentication"
msgstr "Autentificare"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Autoritare"
@@ -460,9 +484,6 @@ msgstr "Inapoi la vedere generala"
msgid "Back to scan results"
msgstr "Inapoi la rezultatele scanarii"
-msgid "Background Scan"
-msgstr "Scanare in fundal"
-
msgid "Backup / Flash Firmware"
msgstr "Salveaza / Scrie Firmware"
@@ -487,9 +508,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "Bitrate"
@@ -558,6 +585,9 @@ msgstr "Verificare"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Suma de verificare"
@@ -611,9 +641,6 @@ msgstr "Comanda"
msgid "Common Configuration"
msgstr "Configurarea obisnuita"
-msgid "Compression"
-msgstr "Comprimare"
-
msgid "Configuration"
msgstr "Configurare"
@@ -829,12 +856,12 @@ msgstr "Dezactiveaza configuratia DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr ""
-
msgid "Disabled"
msgstr "Dezactivat"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr ""
@@ -869,15 +896,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr ""
-
msgid "Domain required"
msgstr "Domeniul necesar"
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -943,6 +970,9 @@ msgstr "Activeaza <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -973,6 +1003,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -985,6 +1018,11 @@ msgstr "Activeaza/Dezactiveaza"
msgid "Enabled"
msgstr "Activat"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -994,6 +1032,12 @@ msgstr "Modul de incapsulare"
msgid "Encryption"
msgstr "Criptare"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Stergere..."
@@ -1025,6 +1069,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Server de log-uri extern"
@@ -1037,9 +1087,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr ""
-
msgid "File"
msgstr "Fisier"
@@ -1075,6 +1122,9 @@ msgstr "Termina"
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "Setarile firewall-ului"
@@ -1121,6 +1171,9 @@ msgstr "Forteaza TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "Forteaza TKIP si CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1151,6 +1204,11 @@ msgstr "Liber"
msgid "Free space"
msgstr "Spatiu liber"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1208,6 +1266,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1265,6 +1326,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Adresa IP"
@@ -1307,6 +1371,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr "Adresa IPv4"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1355,6 +1422,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1494,6 +1564,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Utilizator si/sau parola invalide! Incearcati din nou."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1502,8 +1575,8 @@ msgstr ""
"Se pare ca ai incercat sa rescrii o imagine care nu are loc in memoria "
"flash, verifica fisierul din nou!"
-msgid "Java Script required!"
-msgstr "Ai nevoie de Java Script !"
+msgid "JavaScript required!"
+msgstr "Ai nevoie de JavaScript !"
msgid "Join Network"
msgstr ""
@@ -1615,6 +1688,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1627,6 +1716,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1744,9 +1836,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Rata maxima"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1782,9 +1871,6 @@ msgstr "Utilizarea memoriei (%)"
msgid "Metric"
msgstr "Metrica"
-msgid "Minimum Rate"
-msgstr "Rata minima"
-
msgid "Minimum hold time"
msgstr ""
@@ -1797,6 +1883,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Mod"
@@ -1853,9 +1942,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr "Rata de multicast"
-
msgid "Multicast address"
msgstr ""
@@ -1868,6 +1954,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2042,12 +2131,50 @@ msgstr "Optiunea schimbata"
msgid "Option removed"
msgstr "Optiunea eliminata"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Optiuni"
@@ -2060,9 +2187,6 @@ msgstr "Iesire"
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2072,6 +2196,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2104,6 +2234,9 @@ msgstr "PID"
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2188,6 +2321,9 @@ msgstr "Maxim:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2197,6 +2333,9 @@ msgstr "Restarteaza"
msgid "Perform reset"
msgstr "Reseteaza"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Rata phy:"
@@ -2227,6 +2366,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2241,6 +2392,9 @@ msgstr ""
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Continua"
@@ -2274,12 +2428,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr ""
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "Calitate"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2361,6 +2527,9 @@ msgstr "Traficul in timp real"
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2379,6 +2548,9 @@ msgstr ""
msgid "Receiver Antenna"
msgstr "Antena receptorului"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Reconecteaza aceasta interfata"
@@ -2388,9 +2560,6 @@ msgstr "Interfata se reconecteaza chiar acum"
msgid "References"
msgstr "Referinte"
-msgid "Regulatory Domain"
-msgstr "Domeniu regulatoriu"
-
msgid "Relay"
msgstr ""
@@ -2406,6 +2575,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Elimina"
@@ -2427,9 +2599,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2474,6 +2666,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2561,9 +2759,6 @@ msgstr ""
msgid "Separate Clients"
msgstr ""
-msgid "Separate WDS"
-msgstr ""
-
msgid "Server Settings"
msgstr "Setarile serverului"
@@ -2587,6 +2782,11 @@ msgstr "Tip de serviciu"
msgid "Services"
msgstr "Servicii"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "Configurare sincronizare timp"
@@ -2653,8 +2853,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2685,6 +2885,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2709,9 +2922,6 @@ msgstr ""
msgid "Static Routes"
msgstr "Rute statice"
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2828,6 +3038,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2881,6 +3095,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3070,9 +3287,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Mod turbo"
-
msgid "Tx-Power"
msgstr "Puterea TX"
@@ -3091,6 +3305,9 @@ msgstr ""
msgid "USB Device"
msgstr "Dispozitiv USB"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3123,8 +3340,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3192,6 +3409,11 @@ msgstr "Folosit"
msgid "Used Key Slot"
msgstr "Slot de cheie folosit"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3302,6 +3524,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Wireless"
@@ -3341,9 +3566,6 @@ msgstr "Scrie cererile DNS primite in syslog"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Suport XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3351,7 +3573,7 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3440,6 +3662,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3494,6 +3719,9 @@ msgstr ""
msgid "tagged"
msgstr "etichetat"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "necunoscut"
@@ -3515,6 +3743,36 @@ msgstr "da"
msgid "« Back"
msgstr "« Inapoi"
+#~ msgid "AR Support"
+#~ msgstr "Suport AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s Controler Fara Fir"
+
+#~ msgid "Background Scan"
+#~ msgstr "Scanare in fundal"
+
+#~ msgid "Compression"
+#~ msgstr "Comprimare"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Rata maxima"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Rata minima"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Rata de multicast"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Domeniu regulatoriu"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Mod turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Suport XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr ""
#~ "Daca lasati aceasta optiune neselectata va fi creata o retea aditionala"
diff --git a/modules/luci-base/po/ru/base.po b/modules/luci-base/po/ru/base.po
index cb7bfc1ec..22e518355 100644
--- a/modules/luci-base/po/ru/base.po
+++ b/modules/luci-base/po/ru/base.po
@@ -45,18 +45,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Загрузка за 1 минуту:"
msgid "15 Minute Load:"
msgstr "Загрузка за 15 минут:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Загрузка за 5 минут:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Базовый идентификатор обÑлуживаниÑ\">BSSID</abbr>"
@@ -146,9 +173,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "Поддержка AR"
-
msgid "ARP retry threshold"
msgstr "Порог повтора ARP"
@@ -289,6 +313,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr "Разрешить ответы в диапазоне 127.0.0.0/8, например, Ð´Ð»Ñ RBL-ÑервиÑов"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -297,9 +324,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -395,9 +419,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Подключенные клиенты"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "БеÑпроводной 802.11%s контроллер Atheros"
-
msgid "Auth Group"
msgstr ""
@@ -407,6 +428,9 @@ msgstr ""
msgid "Authentication"
msgstr "ÐутентификациÑ"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Ðвторитетный"
@@ -473,9 +497,6 @@ msgstr "Ðазад к обзору"
msgid "Back to scan results"
msgstr "Ðазад к результатам ÑканированиÑ"
-msgid "Background Scan"
-msgstr "Фоновое Ñканирование"
-
msgid "Backup / Flash Firmware"
msgstr "Ð ÐµÐ·ÐµÑ€Ð²Ð½Ð°Ñ ÐºÐ¾Ð¿Ð¸Ñ / прошивка"
@@ -504,9 +525,15 @@ msgstr ""
"базовых файлов, а также шаблонов резервного копированиÑ, определённых "
"пользователем."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "СкороÑÑ‚ÑŒ"
@@ -575,6 +602,9 @@ msgstr "Проверить"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "ÐšÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð°Ñ Ñумма"
@@ -636,9 +666,6 @@ msgstr "Команда"
msgid "Common Configuration"
msgstr "ÐžÐ±Ñ‰Ð°Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ"
-msgid "Compression"
-msgstr "Сжатие"
-
msgid "Configuration"
msgstr "КонфигурациÑ"
@@ -858,12 +885,12 @@ msgstr "Отключить наÑтройку DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Отключить таймер HW-Beacon"
-
msgid "Disabled"
msgstr "Отключено"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "ОтбраÑывать ответы RFC1918"
@@ -904,15 +931,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Ðе перенаправлÑÑ‚ÑŒ обратные DNS-запроÑÑ‹ Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ñ‹Ñ… Ñетей"
-msgid "Do not send probe responses"
-msgstr "Ðе поÑылать теÑтовые ответы"
-
msgid "Domain required"
msgstr "ТребуетÑÑ Ð´Ð¾Ð¼ÐµÐ½"
msgid "Domain whitelist"
msgstr "Белый ÑпиÑок доменов"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -989,6 +1016,9 @@ msgstr "Включить <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Включить динамичеÑкое обновление оконечной точки HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Включить IPv6-ÑоглаÑование на PPP-Ñоединении"
@@ -1019,6 +1049,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Включить Ñту точку монтированиÑ"
@@ -1031,6 +1064,11 @@ msgstr "Включить/выключить"
msgid "Enabled"
msgstr "Включено"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Включает Spanning Tree Protocol на Ñтом моÑту"
@@ -1040,6 +1078,12 @@ msgstr "Режим инкапÑулÑции"
msgid "Encryption"
msgstr "Шифрование"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "Стирание..."
@@ -1074,6 +1118,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Сервер ÑиÑтемного журнала"
@@ -1086,9 +1136,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "БыÑтрые кадры"
-
msgid "File"
msgstr "Файл"
@@ -1124,6 +1171,9 @@ msgstr "Завершить"
msgid "Firewall"
msgstr "МежÑетевой Ñкран"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "ÐаÑтройки межÑетевого Ñкрана"
@@ -1170,6 +1220,9 @@ msgstr "Требовать TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "TKIP или CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1200,6 +1253,11 @@ msgstr "Свободно"
msgid "Free space"
msgstr "Свободное меÑто"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "ГГц"
@@ -1257,6 +1315,9 @@ msgstr "Пароль HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Обработчик"
@@ -1317,6 +1378,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP-адреÑ"
@@ -1359,6 +1423,9 @@ msgstr "Длина префикÑа IPv4"
msgid "IPv4-Address"
msgstr "IPv4-адреÑ"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1407,6 +1474,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-адреÑ"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6 в IPv4 (RFC4213)"
@@ -1558,6 +1628,9 @@ msgstr "Указан неверный VLAN ID! ДоÑтупны только уÐ
msgid "Invalid username and/or password! Please try again."
msgstr "Ðеверный логин и/или пароль! ПожалуйÑта попробуйте Ñнова."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1566,8 +1639,8 @@ msgstr ""
"Ð’Ñ‹ пытаетеÑÑŒ обновить прошивку файлом, который не помещаетÑÑ Ð² памÑÑ‚ÑŒ "
"уÑтройÑтва! ПожалуйÑта, проверьте файл образа."
-msgid "Java Script required!"
-msgstr "ТребуетÑÑ Java Script!"
+msgid "JavaScript required!"
+msgstr "ТребуетÑÑ JavaScript!"
msgid "Join Network"
msgstr "Подключение к Ñети"
@@ -1681,6 +1754,22 @@ msgstr ""
"СпиÑок <abbr title=\"Domain Name System\">DNS</abbr>-Ñерверов Ð´Ð»Ñ "
"Ð¿ÐµÑ€ÐµÐ½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñов"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1693,6 +1782,9 @@ msgstr "СпиÑок хоÑтов, поÑтавлÑющих поддельные
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr "Слушать только на данном интерфейÑе или, еÑли не определено, на вÑех"
@@ -1817,9 +1909,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑкороÑÑ‚ÑŒ"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "МакÑимальное количеÑтво активных арендованных DHCP-адреÑов"
@@ -1855,9 +1944,6 @@ msgstr "ИÑпользование памÑти (%)"
msgid "Metric"
msgstr "Метрика"
-msgid "Minimum Rate"
-msgstr "ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑкороÑÑ‚ÑŒ"
-
msgid "Minimum hold time"
msgstr "Минимальное Ð²Ñ€ÐµÐ¼Ñ ÑƒÐ´ÐµÑ€Ð¶Ð°Ð½Ð¸Ñ"
@@ -1870,6 +1956,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "ОтÑутÑтвует раÑширение протокола %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Режим"
@@ -1929,9 +2018,6 @@ msgstr "ПеремеÑтить вниз"
msgid "Move up"
msgstr "ПеремеÑтить вверх"
-msgid "Multicast Rate"
-msgstr "СкороÑÑ‚ÑŒ групповой передачи"
-
msgid "Multicast address"
msgstr "ÐÐ´Ñ€ÐµÑ Ð³Ñ€ÑƒÐ¿Ð¿Ð¾Ð²Ð¾Ð¹ передачи"
@@ -1944,6 +2030,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2124,12 +2213,50 @@ msgstr "ÐžÐ¿Ñ†Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð°"
msgid "Option removed"
msgstr "ÐžÐ¿Ñ†Ð¸Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð°"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Опции"
@@ -2142,9 +2269,6 @@ msgstr "Вне"
msgid "Outbound:"
msgstr "ИÑходÑщий:"
-msgid "Outdoor Channels"
-msgstr "Внешние каналы"
-
msgid "Output Interface"
msgstr ""
@@ -2154,6 +2278,12 @@ msgstr "Ðазначить MAC-адреÑ"
msgid "Override MTU"
msgstr "Ðазначить MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2188,6 +2318,9 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2272,6 +2405,9 @@ msgstr "ПиковаÑ:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2281,6 +2417,9 @@ msgstr "Выполнить перезагрузку"
msgid "Perform reset"
msgstr "Выполнить ÑброÑ"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "СкороÑÑ‚ÑŒ:"
@@ -2311,6 +2450,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2327,6 +2478,9 @@ msgstr "Ðе позволÑет клиентам обмениватьÑÑ Ð´Ñ€Ñƒ
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "БеÑпроводной 802.11b контроллер Prism2/2.5/3"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Продолжить"
@@ -2360,12 +2514,24 @@ msgstr "ПредоÑтавлÑÑ‚ÑŒ новую Ñеть"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "ПÑевдо Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "КачеÑтво"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2458,6 +2624,9 @@ msgstr "Трафик в реальном времени"
msgid "Realtime Wireless"
msgstr "БеÑÐ¿Ñ€Ð¾Ð²Ð¾Ð´Ð½Ð°Ñ Ñеть в реальном времени"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "Защита от DNS Rebinding"
@@ -2476,6 +2645,9 @@ msgstr "Приём"
msgid "Receiver Antenna"
msgstr "ÐŸÑ€Ð¸Ñ‘Ð¼Ð½Ð°Ñ Ð°Ð½Ñ‚ÐµÐ½Ð½Ð°"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Переподключить Ñтот интерфейÑ"
@@ -2486,9 +2658,6 @@ msgstr "Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð°ÐµÑ‚ÑÑ"
msgid "References"
msgstr "СÑылки"
-msgid "Regulatory Domain"
-msgstr "ÐÐ¾Ñ€Ð¼Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð·Ð¾Ð½Ð°"
-
msgid "Relay"
msgstr "РетранÑлÑтор"
@@ -2504,6 +2673,9 @@ msgstr "МоÑÑ‚-ретранÑлÑтор"
msgid "Remote IPv4 address"
msgstr "Удалённый IPv4-адреÑ"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Удалить"
@@ -2525,9 +2697,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "ТребуетÑÑ Ð´Ð»Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… интернет-провайдеров"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2572,6 +2764,12 @@ msgstr "ÐšÐ¾Ñ€Ð½ÐµÐ²Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð»Ñ TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2663,9 +2861,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "РазделÑÑ‚ÑŒ клиентов"
-msgid "Separate WDS"
-msgstr "Отдельный WDS"
-
msgid "Server Settings"
msgstr "ÐаÑтройки Ñервера"
@@ -2689,6 +2884,11 @@ msgstr "Тип Ñлужбы"
msgid "Services"
msgstr "СервиÑÑ‹"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "ÐаÑтроить Ñинхронизацию времени"
@@ -2753,15 +2953,14 @@ msgstr "Извините, запрошенный объект не был най
msgid "Sorry, the server encountered an unexpected error."
msgstr "Извините, Ñервер ÑтолкнулÑÑ Ñ Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð¾Ð¹ ошибкой."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"К Ñожалению, автоматичеÑкое обновление не поддерживаетÑÑ, Ð½Ð¾Ð²Ð°Ñ Ð¿Ñ€Ð¾ÑˆÐ¸Ð²ÐºÐ° "
-"должна быть уÑтановлена вручную. ОбратитеÑÑŒ к вики OpenWrt Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ "
-"конкретных инÑтрукций Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ уÑтройÑтва."
+"должна быть уÑтановлена вручную. ОбратитеÑÑŒ к вики Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÐºÑ€ÐµÑ‚Ð½Ñ‹Ñ… "
+"инÑтрукций Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ уÑтройÑтва."
msgid "Sort"
msgstr "Сортировка"
@@ -2794,6 +2993,19 @@ msgid ""
msgstr ""
"МакÑимальное количеÑтво Ñекунд, поÑле которого узлы ÑчитаютÑÑ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ‹Ð¼Ð¸"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Укажите закрытый ключ."
@@ -2818,9 +3030,6 @@ msgstr "ПоÑтоÑнные аренды"
msgid "Static Routes"
msgstr "СтатичеÑкие маршруты"
-msgid "Static WDS"
-msgstr "СтатичеÑкий WDS"
-
msgid "Static address"
msgstr "СтатичеÑкий адреÑ"
@@ -2949,6 +3158,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"Ðазначенный провайдеру Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ IPv6, обычно заканчиваетÑÑ Ð½Ð° <code>::</code>"
@@ -3016,6 +3229,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr "Длина префикÑа IPv6 в битах"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3238,9 +3454,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Турбо-режим"
-
msgid "Tx-Power"
msgstr "МощноÑÑ‚ÑŒ передатчика"
@@ -3259,6 +3472,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB-уÑтройÑтво"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3291,12 +3507,12 @@ msgstr "Обновить ÑпиÑки"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Загрузите sysupgrade-ÑовмеÑтимый образ, чтобы заменить текущую прошивку. "
"УÑтановите флажок \"Сохранить наÑтройки\", чтобы Ñохранить текущую "
-"конфигурацию (требуетÑÑ ÑовмеÑтимый Ñ OpenWrt образ прошивки)."
+"конфигурацию (требуетÑÑ ÑовмеÑтимый образ прошивки)."
msgid "Upload archive..."
msgstr "Загрузить архив..."
@@ -3367,6 +3583,11 @@ msgstr "ИÑпользовано"
msgid "Used Key Slot"
msgstr "ИÑпользуемый Ñлот ключа"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3478,6 +3699,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Wi-Fi"
@@ -3517,9 +3741,6 @@ msgstr "ЗапиÑывать полученные DNS-запроÑÑ‹ в ÑиÑÑ‚
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Поддержка XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3531,9 +3752,9 @@ msgstr ""
"(например \"network\"), ваше уÑтройÑтво может оказатьÑÑ Ð½ÐµÐ´Ð¾Ñтупным!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Вам необходимо включить Java Script в вашем браузере Ð´Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð¹ работы "
+"Вам необходимо включить JavaScript в вашем браузере Ð´Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð¹ работы "
"LuCI."
msgid ""
@@ -3626,6 +3847,9 @@ msgstr "локальный <abbr title=\"Служба доменных имён\
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3680,6 +3904,9 @@ msgstr ""
msgid "tagged"
msgstr "Ñ Ñ‚ÐµÐ³Ð¾Ð¼"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "неизвеÑтный"
@@ -3701,6 +3928,54 @@ msgstr "да"
msgid "« Back"
msgstr "« Ðазад"
+#~ msgid "AR Support"
+#~ msgstr "Поддержка AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "БеÑпроводной 802.11%s контроллер Atheros"
+
+#~ msgid "Background Scan"
+#~ msgstr "Фоновое Ñканирование"
+
+#~ msgid "Compression"
+#~ msgstr "Сжатие"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Отключить таймер HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Ðе поÑылать теÑтовые ответы"
+
+#~ msgid "Fast Frames"
+#~ msgstr "БыÑтрые кадры"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑкороÑÑ‚ÑŒ"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑкороÑÑ‚ÑŒ"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "СкороÑÑ‚ÑŒ групповой передачи"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Внешние каналы"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "ÐÐ¾Ñ€Ð¼Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð·Ð¾Ð½Ð°"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Отдельный WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "СтатичеÑкий WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Турбо-режим"
+
+#~ msgid "XR Support"
+#~ msgstr "Поддержка XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr ""
#~ "ЕÑли вы не выберите Ñту опцию, то будет Ñоздана Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ñеть."
diff --git a/modules/luci-base/po/sk/base.po b/modules/luci-base/po/sk/base.po
index a715a59e1..6c4711931 100644
--- a/modules/luci-base/po/sk/base.po
+++ b/modules/luci-base/po/sk/base.po
@@ -38,18 +38,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr ""
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
@@ -130,9 +157,6 @@ msgstr ""
msgid "APN"
msgstr ""
-msgid "AR Support"
-msgstr ""
-
msgid "ARP retry threshold"
msgstr ""
@@ -262,6 +286,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -270,9 +297,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -368,9 +392,6 @@ msgstr ""
msgid "Associated Stations"
msgstr ""
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -380,6 +401,9 @@ msgstr ""
msgid "Authentication"
msgstr ""
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr ""
@@ -446,9 +470,6 @@ msgstr ""
msgid "Back to scan results"
msgstr ""
-msgid "Background Scan"
-msgstr ""
-
msgid "Backup / Flash Firmware"
msgstr ""
@@ -473,9 +494,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -544,6 +571,9 @@ msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -594,9 +624,6 @@ msgstr ""
msgid "Common Configuration"
msgstr ""
-msgid "Compression"
-msgstr ""
-
msgid "Configuration"
msgstr ""
@@ -810,10 +837,10 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
+msgid "Disabled"
msgstr ""
-msgid "Disabled"
+msgid "Disabled (default)"
msgstr ""
msgid "Discard upstream RFC1918 responses"
@@ -850,15 +877,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr ""
-
msgid "Domain required"
msgstr ""
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -924,6 +951,9 @@ msgstr ""
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -954,6 +984,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -966,6 +999,11 @@ msgstr ""
msgid "Enabled"
msgstr ""
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -975,6 +1013,12 @@ msgstr ""
msgid "Encryption"
msgstr ""
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -1006,6 +1050,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1018,9 +1068,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr ""
-
msgid "File"
msgstr ""
@@ -1056,6 +1103,9 @@ msgstr ""
msgid "Firewall"
msgstr ""
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr ""
@@ -1101,6 +1151,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1131,6 +1184,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1188,6 +1246,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1243,6 +1304,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr ""
@@ -1285,6 +1349,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr ""
@@ -1333,6 +1400,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1472,12 +1542,15 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr ""
+msgid "Isolate Clients"
+msgstr ""
+
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr ""
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1590,6 +1663,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1602,6 +1691,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1719,9 +1811,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr ""
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1757,9 +1846,6 @@ msgstr ""
msgid "Metric"
msgstr ""
-msgid "Minimum Rate"
-msgstr ""
-
msgid "Minimum hold time"
msgstr ""
@@ -1772,6 +1858,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr ""
@@ -1828,9 +1917,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr ""
-
msgid "Multicast address"
msgstr ""
@@ -1843,6 +1929,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2017,12 +2106,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -2035,9 +2162,6 @@ msgstr ""
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2047,6 +2171,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2079,6 +2209,9 @@ msgstr ""
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2163,6 +2296,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2172,6 +2308,9 @@ msgstr ""
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2202,6 +2341,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2216,6 +2367,9 @@ msgstr ""
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr ""
@@ -2249,12 +2403,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr ""
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2334,6 +2500,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2352,6 +2521,9 @@ msgstr ""
msgid "Receiver Antenna"
msgstr ""
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2361,9 +2533,6 @@ msgstr ""
msgid "References"
msgstr ""
-msgid "Regulatory Domain"
-msgstr ""
-
msgid "Relay"
msgstr ""
@@ -2379,6 +2548,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr ""
@@ -2400,9 +2572,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2447,6 +2639,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2534,9 +2732,6 @@ msgstr ""
msgid "Separate Clients"
msgstr ""
-msgid "Separate WDS"
-msgstr ""
-
msgid "Server Settings"
msgstr ""
@@ -2560,6 +2755,11 @@ msgstr ""
msgid "Services"
msgstr ""
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2625,8 +2825,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2657,6 +2857,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2681,9 +2894,6 @@ msgstr ""
msgid "Static Routes"
msgstr ""
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2800,6 +3010,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2853,6 +3067,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3040,9 +3257,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr ""
-
msgid "Tx-Power"
msgstr ""
@@ -3061,6 +3275,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3093,8 +3310,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3162,6 +3379,11 @@ msgstr ""
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3270,6 +3492,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3309,9 +3534,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr ""
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3319,7 +3541,7 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3408,6 +3630,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3462,6 +3687,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
diff --git a/modules/luci-base/po/sv/base.po b/modules/luci-base/po/sv/base.po
index 4c08e4e1e..b2f6ecf52 100644
--- a/modules/luci-base/po/sv/base.po
+++ b/modules/luci-base/po/sv/base.po
@@ -41,18 +41,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "Belastning senaste minuten:"
msgid "15 Minute Load:"
msgstr "Belastning senaste 15 minutrarna:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "Belastning senaste 5 minutrarna:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -136,9 +163,6 @@ msgstr ""
msgid "APN"
msgstr ""
-msgid "AR Support"
-msgstr ""
-
msgid "ARP retry threshold"
msgstr ""
@@ -268,6 +292,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -276,9 +303,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -374,9 +398,6 @@ msgstr ""
msgid "Associated Stations"
msgstr ""
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -386,6 +407,9 @@ msgstr ""
msgid "Authentication"
msgstr ""
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr ""
@@ -452,9 +476,6 @@ msgstr ""
msgid "Back to scan results"
msgstr ""
-msgid "Background Scan"
-msgstr ""
-
msgid "Backup / Flash Firmware"
msgstr ""
@@ -479,9 +500,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -550,6 +577,9 @@ msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -600,9 +630,6 @@ msgstr ""
msgid "Common Configuration"
msgstr ""
-msgid "Compression"
-msgstr ""
-
msgid "Configuration"
msgstr ""
@@ -816,10 +843,10 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
+msgid "Disabled"
msgstr ""
-msgid "Disabled"
+msgid "Disabled (default)"
msgstr ""
msgid "Discard upstream RFC1918 responses"
@@ -856,15 +883,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr ""
-
msgid "Domain required"
msgstr ""
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -930,6 +957,9 @@ msgstr ""
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -960,6 +990,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -972,6 +1005,11 @@ msgstr ""
msgid "Enabled"
msgstr ""
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -981,6 +1019,12 @@ msgstr ""
msgid "Encryption"
msgstr ""
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -1012,6 +1056,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1024,9 +1074,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr ""
-
msgid "File"
msgstr ""
@@ -1062,6 +1109,9 @@ msgstr ""
msgid "Firewall"
msgstr ""
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr ""
@@ -1107,6 +1157,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1137,6 +1190,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1194,6 +1252,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1249,6 +1310,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr ""
@@ -1291,6 +1355,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr ""
@@ -1339,6 +1406,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1478,12 +1548,15 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr ""
+msgid "Isolate Clients"
+msgstr ""
+
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr ""
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1596,6 +1669,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1608,6 +1697,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1725,9 +1817,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr ""
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1763,9 +1852,6 @@ msgstr ""
msgid "Metric"
msgstr ""
-msgid "Minimum Rate"
-msgstr ""
-
msgid "Minimum hold time"
msgstr ""
@@ -1778,6 +1864,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr ""
@@ -1834,9 +1923,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr ""
-
msgid "Multicast address"
msgstr ""
@@ -1849,6 +1935,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2023,12 +2112,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -2041,9 +2168,6 @@ msgstr ""
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2053,6 +2177,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2085,6 +2215,9 @@ msgstr ""
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2169,6 +2302,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2178,6 +2314,9 @@ msgstr ""
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2208,6 +2347,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2222,6 +2373,9 @@ msgstr ""
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr ""
@@ -2255,12 +2409,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr ""
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2340,6 +2506,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2358,6 +2527,9 @@ msgstr ""
msgid "Receiver Antenna"
msgstr ""
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2367,9 +2539,6 @@ msgstr ""
msgid "References"
msgstr ""
-msgid "Regulatory Domain"
-msgstr ""
-
msgid "Relay"
msgstr ""
@@ -2385,6 +2554,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr ""
@@ -2406,9 +2578,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2453,6 +2645,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2540,9 +2738,6 @@ msgstr ""
msgid "Separate Clients"
msgstr ""
-msgid "Separate WDS"
-msgstr ""
-
msgid "Server Settings"
msgstr ""
@@ -2566,6 +2761,11 @@ msgstr ""
msgid "Services"
msgstr ""
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2631,8 +2831,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2663,6 +2863,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2687,9 +2900,6 @@ msgstr ""
msgid "Static Routes"
msgstr ""
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2806,6 +3016,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2859,6 +3073,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3046,9 +3263,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr ""
-
msgid "Tx-Power"
msgstr ""
@@ -3067,6 +3281,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3099,8 +3316,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3168,6 +3385,11 @@ msgstr ""
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3276,6 +3498,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3315,9 +3540,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr ""
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3325,7 +3547,7 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3414,6 +3636,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3468,6 +3693,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
diff --git a/modules/luci-base/po/templates/base.pot b/modules/luci-base/po/templates/base.pot
index a10dbea5c..7d49e7e82 100644
--- a/modules/luci-base/po/templates/base.pot
+++ b/modules/luci-base/po/templates/base.pot
@@ -31,18 +31,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr ""
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
@@ -123,9 +150,6 @@ msgstr ""
msgid "APN"
msgstr ""
-msgid "AR Support"
-msgstr ""
-
msgid "ARP retry threshold"
msgstr ""
@@ -255,6 +279,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -263,9 +290,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -361,9 +385,6 @@ msgstr ""
msgid "Associated Stations"
msgstr ""
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -373,6 +394,9 @@ msgstr ""
msgid "Authentication"
msgstr ""
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr ""
@@ -439,9 +463,6 @@ msgstr ""
msgid "Back to scan results"
msgstr ""
-msgid "Background Scan"
-msgstr ""
-
msgid "Backup / Flash Firmware"
msgstr ""
@@ -466,9 +487,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -537,6 +564,9 @@ msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -587,9 +617,6 @@ msgstr ""
msgid "Common Configuration"
msgstr ""
-msgid "Compression"
-msgstr ""
-
msgid "Configuration"
msgstr ""
@@ -803,10 +830,10 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
+msgid "Disabled"
msgstr ""
-msgid "Disabled"
+msgid "Disabled (default)"
msgstr ""
msgid "Discard upstream RFC1918 responses"
@@ -843,15 +870,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr ""
-
msgid "Domain required"
msgstr ""
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -917,6 +944,9 @@ msgstr ""
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -947,6 +977,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -959,6 +992,11 @@ msgstr ""
msgid "Enabled"
msgstr ""
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -968,6 +1006,12 @@ msgstr ""
msgid "Encryption"
msgstr ""
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -999,6 +1043,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1011,9 +1061,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr ""
-
msgid "File"
msgstr ""
@@ -1049,6 +1096,9 @@ msgstr ""
msgid "Firewall"
msgstr ""
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr ""
@@ -1094,6 +1144,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1124,6 +1177,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1181,6 +1239,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1236,6 +1297,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr ""
@@ -1278,6 +1342,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr ""
@@ -1326,6 +1393,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1465,12 +1535,15 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr ""
+msgid "Isolate Clients"
+msgstr ""
+
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr ""
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1583,6 +1656,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1595,6 +1684,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1712,9 +1804,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr ""
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1750,9 +1839,6 @@ msgstr ""
msgid "Metric"
msgstr ""
-msgid "Minimum Rate"
-msgstr ""
-
msgid "Minimum hold time"
msgstr ""
@@ -1765,6 +1851,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr ""
@@ -1821,9 +1910,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr ""
-
msgid "Multicast address"
msgstr ""
@@ -1836,6 +1922,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2010,12 +2099,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -2028,9 +2155,6 @@ msgstr ""
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2040,6 +2164,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2072,6 +2202,9 @@ msgstr ""
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2156,6 +2289,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2165,6 +2301,9 @@ msgstr ""
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2195,6 +2334,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2209,6 +2360,9 @@ msgstr ""
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr ""
@@ -2242,12 +2396,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr ""
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2327,6 +2493,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2345,6 +2514,9 @@ msgstr ""
msgid "Receiver Antenna"
msgstr ""
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2354,9 +2526,6 @@ msgstr ""
msgid "References"
msgstr ""
-msgid "Regulatory Domain"
-msgstr ""
-
msgid "Relay"
msgstr ""
@@ -2372,6 +2541,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr ""
@@ -2393,9 +2565,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2440,6 +2632,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2527,9 +2725,6 @@ msgstr ""
msgid "Separate Clients"
msgstr ""
-msgid "Separate WDS"
-msgstr ""
-
msgid "Server Settings"
msgstr ""
@@ -2553,6 +2748,11 @@ msgstr ""
msgid "Services"
msgstr ""
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2618,8 +2818,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2650,6 +2850,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2674,9 +2887,6 @@ msgstr ""
msgid "Static Routes"
msgstr ""
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2793,6 +3003,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2846,6 +3060,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3033,9 +3250,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr ""
-
msgid "Tx-Power"
msgstr ""
@@ -3054,6 +3268,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3086,8 +3303,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3155,6 +3372,11 @@ msgstr ""
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3263,6 +3485,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3302,9 +3527,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr ""
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3312,7 +3534,7 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3401,6 +3623,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3455,6 +3680,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
diff --git a/modules/luci-base/po/tr/base.po b/modules/luci-base/po/tr/base.po
index d674f5154..4d1db54c4 100644
--- a/modules/luci-base/po/tr/base.po
+++ b/modules/luci-base/po/tr/base.po
@@ -41,18 +41,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "1 Dakikalık Yük:"
msgid "15 Minute Load:"
msgstr "15 Dakikalık Yük:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "5 Dakikalık Yük:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\\\"Temel Servis Ayar Tanımlayıcısı\\\"> BSSID </abbr>"
@@ -139,9 +166,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "AR DesteÄŸi"
-
msgid "ARP retry threshold"
msgstr "ARP yenileme aralığı"
@@ -275,6 +299,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -283,9 +310,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -381,9 +405,6 @@ msgstr ""
msgid "Associated Stations"
msgstr ""
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s Kablosuz Denetleyicisi"
-
msgid "Auth Group"
msgstr ""
@@ -393,6 +414,9 @@ msgstr ""
msgid "Authentication"
msgstr "Kimlik doÄŸrulama"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Yetkilendirme"
@@ -459,9 +483,6 @@ msgstr "Genel Bakışa dön"
msgid "Back to scan results"
msgstr "Tarama sonuçlarına dön"
-msgid "Background Scan"
-msgstr "Arka Planda Tarama"
-
msgid "Backup / Flash Firmware"
msgstr ""
@@ -486,9 +507,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -557,6 +584,9 @@ msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr ""
@@ -607,9 +637,6 @@ msgstr ""
msgid "Common Configuration"
msgstr ""
-msgid "Compression"
-msgstr ""
-
msgid "Configuration"
msgstr ""
@@ -823,10 +850,10 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
+msgid "Disabled"
msgstr ""
-msgid "Disabled"
+msgid "Disabled (default)"
msgstr ""
msgid "Discard upstream RFC1918 responses"
@@ -863,15 +890,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr ""
-
msgid "Domain required"
msgstr ""
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -937,6 +964,9 @@ msgstr ""
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -967,6 +997,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -979,6 +1012,11 @@ msgstr ""
msgid "Enabled"
msgstr ""
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
@@ -988,6 +1026,12 @@ msgstr ""
msgid "Encryption"
msgstr ""
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -1019,6 +1063,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1031,9 +1081,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr ""
-
msgid "File"
msgstr ""
@@ -1069,6 +1116,9 @@ msgstr ""
msgid "Firewall"
msgstr ""
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr ""
@@ -1114,6 +1164,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1144,6 +1197,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1201,6 +1259,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1256,6 +1317,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr ""
@@ -1298,6 +1362,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr ""
@@ -1346,6 +1413,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1485,12 +1555,15 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr ""
+msgid "Isolate Clients"
+msgstr ""
+
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr ""
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1603,6 +1676,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1615,6 +1704,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1732,9 +1824,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr ""
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1770,9 +1859,6 @@ msgstr ""
msgid "Metric"
msgstr ""
-msgid "Minimum Rate"
-msgstr ""
-
msgid "Minimum hold time"
msgstr ""
@@ -1785,6 +1871,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr ""
@@ -1841,9 +1930,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr ""
-
msgid "Multicast address"
msgstr ""
@@ -1856,6 +1942,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2030,12 +2119,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr ""
@@ -2048,9 +2175,6 @@ msgstr ""
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr ""
-
msgid "Output Interface"
msgstr ""
@@ -2060,6 +2184,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2092,6 +2222,9 @@ msgstr ""
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2176,6 +2309,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2185,6 +2321,9 @@ msgstr ""
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2215,6 +2354,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2229,6 +2380,9 @@ msgstr ""
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr ""
@@ -2262,12 +2416,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr ""
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2347,6 +2513,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2365,6 +2534,9 @@ msgstr ""
msgid "Receiver Antenna"
msgstr ""
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2374,9 +2546,6 @@ msgstr ""
msgid "References"
msgstr ""
-msgid "Regulatory Domain"
-msgstr ""
-
msgid "Relay"
msgstr ""
@@ -2392,6 +2561,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr ""
@@ -2413,9 +2585,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2460,6 +2652,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2547,9 +2745,6 @@ msgstr ""
msgid "Separate Clients"
msgstr ""
-msgid "Separate WDS"
-msgstr ""
-
msgid "Server Settings"
msgstr ""
@@ -2573,6 +2768,11 @@ msgstr ""
msgid "Services"
msgstr ""
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2638,8 +2838,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2670,6 +2870,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2694,9 +2907,6 @@ msgstr ""
msgid "Static Routes"
msgstr ""
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2813,6 +3023,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2866,6 +3080,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3053,9 +3270,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr ""
-
msgid "Tx-Power"
msgstr ""
@@ -3074,6 +3288,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3106,8 +3323,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3175,6 +3392,11 @@ msgstr ""
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3283,6 +3505,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3322,9 +3547,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr ""
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3332,7 +3554,7 @@ msgid ""
msgstr ""
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
"LuCI'nin düzgün çalışması için tarayıcınızda Java Scripti "
"etkinleÅŸtirmelisiniz."
@@ -3423,6 +3645,9 @@ msgstr "yerel <abbr title=\"Domain Name System\">DNS</abbr> dosyası"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3477,6 +3702,9 @@ msgstr ""
msgid "tagged"
msgstr "etiketlendi"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
@@ -3497,3 +3725,12 @@ msgstr "evet"
msgid "« Back"
msgstr "« Geri"
+
+#~ msgid "AR Support"
+#~ msgstr "AR DesteÄŸi"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s Kablosuz Denetleyicisi"
+
+#~ msgid "Background Scan"
+#~ msgstr "Arka Planda Tarama"
diff --git a/modules/luci-base/po/uk/base.po b/modules/luci-base/po/uk/base.po
index b1fe0e793..0d33636a5 100644
--- a/modules/luci-base/po/uk/base.po
+++ b/modules/luci-base/po/uk/base.po
@@ -42,18 +42,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð° 1 хвилину:"
msgid "15 Minute Load:"
msgstr "ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð° 15 хвилин:"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "ÐÐ°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð° 5 хвилин:"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr ""
"<abbr title=\"Basic Service Set Identifier — ідентифікатор оÑновної Ñлужби "
@@ -155,9 +182,6 @@ msgid "APN"
msgstr ""
"<abbr title=\"Access Point Name — Ñимволічна назва точки доÑтупу\">APN</abbr>"
-msgid "AR Support"
-msgstr "Підтримка AR"
-
msgid "ARP retry threshold"
msgstr "Поріг повтору ARP"
@@ -299,6 +323,9 @@ msgstr ""
"Дозволити відповіді від клієнта на Ñервер у діапазоні 127.0.0.0/8, "
"наприклад, Ð´Ð»Ñ RBL-поÑлуг"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -307,9 +334,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -405,9 +429,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "Приєднані Ñтанції"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Бездротовий 802.11%s контролер Atheros"
-
msgid "Auth Group"
msgstr ""
@@ -417,6 +438,9 @@ msgstr ""
msgid "Authentication"
msgstr "ÐвтентифікаціÑ"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Ðадійний"
@@ -483,9 +507,6 @@ msgstr "ПовернутиÑÑ Ð´Ð¾ переліку"
msgid "Back to scan results"
msgstr "ПовернутиÑÑ Ð´Ð¾ результатів ÑкануваннÑ"
-msgid "Background Scan"
-msgstr "Ð¡ÐºÐ°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ фоновому режимі"
-
msgid "Backup / Flash Firmware"
msgstr "Резервне ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ / ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ÑˆÐ¸Ð²ÐºÐ¸"
@@ -513,9 +534,15 @@ msgstr ""
"ÑкладаєтьÑÑ Ñ–Ð· позначених opkg змінених файлів конфігурації, невідокремних "
"базових файлів, та файлів за кориÑтувацькими шаблонами резервного копіюваннÑ."
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "ШвидкіÑÑ‚ÑŒ передачі даних"
@@ -584,6 +611,9 @@ msgstr "Перевірити"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Контрольна Ñума"
@@ -645,9 +675,6 @@ msgstr "Команда"
msgid "Common Configuration"
msgstr "Загальна конфігураціÑ"
-msgid "Compression"
-msgstr "СтиÑненнÑ"
-
msgid "Configuration"
msgstr "КонфігураціÑ"
@@ -868,12 +895,12 @@ msgstr "Вимкнути наÑÑ‚Ñ€Ð¾ÑŽÐ²Ð°Ð½Ð½Ñ DNS"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Вимкнути таймер HW-Beacon"
-
msgid "Disabled"
msgstr "Вимкнено"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "Відкидати RFC1918-відповіді від клієнта на Ñервер"
@@ -915,15 +942,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr "Ðе ÑпрÑмовувати зворотний переглÑд Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¸Ñ… мереж"
-msgid "Do not send probe responses"
-msgstr "Ðе надÑилати відповіді на зондуваннÑ"
-
msgid "Domain required"
msgstr "Потрібен домен"
msgid "Domain whitelist"
msgstr "\"Білий ÑпиÑок\" доменів"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -998,6 +1025,9 @@ msgstr "Увімкнути <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "Увімкнути динамічне Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÑ–Ð½Ñ†ÐµÐ²Ð¾Ñ— точки HE.net"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "Увімкнути ÑƒÐ·Ð³Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ IPv6 Ð´Ð»Ñ PPP-з'єднань"
@@ -1028,6 +1058,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "Увімкнути це монтуваннÑ"
@@ -1040,6 +1073,11 @@ msgstr "Увімкнено/Вимкнено"
msgid "Enabled"
msgstr "Увімкнено"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr ""
"Увімкнути <abbr title=\"Spanning Tree Protocol\">STP</abbr> на цьому моÑту"
@@ -1050,6 +1088,12 @@ msgstr "Режим інкапÑулÑції"
msgid "Encryption"
msgstr "ШифруваннÑ"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "ВидаленнÑ..."
@@ -1082,6 +1126,12 @@ msgstr "Термін оренди адреÑ, мінімум 2 хвилини (<
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "Зовнішній Ñервер ÑиÑтемного журналу"
@@ -1094,9 +1144,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Швидкі фрейми"
-
msgid "File"
msgstr "Файл"
@@ -1132,6 +1179,9 @@ msgstr "Готово"
msgid "Firewall"
msgstr "Брандмауер"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "ÐаÑтройки брандмауера"
@@ -1177,6 +1227,9 @@ msgstr "ПримуÑово TKIP"
msgid "Force TKIP and CCMP (AES)"
msgstr "ПримуÑово TKIP та CCMP (AES)"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1207,6 +1260,11 @@ msgstr "Вільно"
msgid "Free space"
msgstr "Вільне міÑце"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "ГГц"
@@ -1264,6 +1322,9 @@ msgstr "Пароль HE.net"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "Обробник"
@@ -1325,6 +1386,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IP-адреÑа"
@@ -1367,6 +1431,9 @@ msgstr "Довжина префікÑа IPv4"
msgid "IPv4-Address"
msgstr "IPv4-адреÑа"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1415,6 +1482,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-адреÑа"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6 у IPv4 (RFC4213)"
@@ -1565,6 +1635,9 @@ msgstr "Задано невірний VLAN ID! ДоÑтупні тільки уÐ
msgid "Invalid username and/or password! Please try again."
msgstr "ÐеприпуÑтиме Ñ–Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача та/або пароль! Спробуйте ще раз."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1573,8 +1646,8 @@ msgstr ""
"Схоже, що ви намагаєтеÑÑ Ð·Ð°Ð»Ð¸Ñ‚Ð¸ образ, Ñкий не вміщаєтьÑÑ Ñƒ флеш-пам'ÑÑ‚ÑŒ! "
"Перевірте файл образу!"
-msgid "Java Script required!"
-msgstr "Потрібен Java Script!"
+msgid "JavaScript required!"
+msgstr "Потрібен JavaScript!"
msgid "Join Network"
msgstr "ÐŸÑ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ мережі"
@@ -1688,6 +1761,22 @@ msgstr ""
"СпиÑок <abbr title=\"Domain Name System\">DNS</abbr>-Ñерверів, до Ñких "
"переÑилати запити"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1700,6 +1789,9 @@ msgstr "СпиÑок доменів, Ñкі підтримують резульÑ
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
"ПроÑлуховувати тільки на цьому інтерфейÑÑ–, або на вÑÑ–Ñ… (Ñкщо <em>не "
@@ -1826,9 +1918,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "МакÑимальна швидкіÑÑ‚ÑŒ"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "МакÑимально допуÑтима кількіÑÑ‚ÑŒ активних оренд DHCP"
@@ -1864,9 +1953,6 @@ msgstr "ВикориÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼'ÑÑ‚Ñ–, %"
msgid "Metric"
msgstr "Метрика"
-msgid "Minimum Rate"
-msgstr "Мінімальна швидкіÑÑ‚ÑŒ"
-
msgid "Minimum hold time"
msgstr "Мінімальний Ñ‡Ð°Ñ ÑƒÑ‚Ñ€Ð¸Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ"
@@ -1879,6 +1965,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "ВідÑутні Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ñƒ %q"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Режим"
@@ -1937,9 +2026,6 @@ msgstr "Вниз"
msgid "Move up"
msgstr "Вгору"
-msgid "Multicast Rate"
-msgstr "ШвидкіÑÑ‚ÑŒ багатоадреÑного потоку"
-
msgid "Multicast address"
msgstr "ÐдреÑа багатоадреÑного потоку"
@@ -1952,6 +2038,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2132,12 +2221,50 @@ msgstr "ÐžÐ¿Ñ†Ñ–Ñ Ð·Ð¼Ñ–Ð½ÐµÐ½Ð°"
msgid "Option removed"
msgstr "ÐžÐ¿Ñ†Ñ–Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð°"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Опції"
@@ -2150,9 +2277,6 @@ msgstr "Вих."
msgid "Outbound:"
msgstr "Вихідний:"
-msgid "Outdoor Channels"
-msgstr "Зовнішні канали"
-
msgid "Output Interface"
msgstr ""
@@ -2162,6 +2286,12 @@ msgstr "Перевизначити MAC-адреÑу"
msgid "Override MTU"
msgstr "Перевизначити MTU"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2199,6 +2329,9 @@ msgstr ""
"<abbr title=\"Personal Identification Number — ПерÑональний ідентифікаційний "
"номер\">>PIN</abbr>"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPP"
@@ -2283,6 +2416,9 @@ msgstr "Пік:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2292,6 +2428,9 @@ msgstr "Виконати перезавантаженнÑ"
msgid "Perform reset"
msgstr "Відновити"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "Фізична швидкіÑÑ‚ÑŒ:"
@@ -2322,6 +2461,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2338,6 +2489,9 @@ msgstr "Запобігає зв'Ñзкам клієнт-клієнт"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Бездротовий 802.11b контролер Prism2/2.5/3"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Продовжити"
@@ -2371,12 +2525,24 @@ msgstr "ПоÑтачити нову мережу"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "ПÑевдо Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "ЯкіÑÑ‚ÑŒ"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2472,6 +2638,9 @@ msgstr "Трафік у реальному чаÑÑ–"
msgid "Realtime Wireless"
msgstr "Бездротові мережі у реальному чаÑÑ–"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "ЗахиÑÑ‚ від переприв'Ñзки"
@@ -2490,6 +2659,9 @@ msgstr "Прийом"
msgid "Receiver Antenna"
msgstr "Ðнтена приймача"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "Перепідключити цей інтерфейÑ"
@@ -2499,9 +2671,6 @@ msgstr "ÐŸÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñу"
msgid "References"
msgstr "ПоÑиланнÑ"
-msgid "Regulatory Domain"
-msgstr "РегулÑтивний домен"
-
msgid "Relay"
msgstr "РетранÑлÑтор"
@@ -2517,6 +2686,9 @@ msgstr "МіÑÑ‚-ретранÑлÑтор"
msgid "Remote IPv4 address"
msgstr "Віддалена адреÑа IPv4"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Видалити"
@@ -2538,9 +2710,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "Потрібно Ð´Ð»Ñ Ð´ÐµÑких провайдерів, наприклад, Charter із DOCSIS 3"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2585,6 +2777,12 @@ msgstr "Кореневий каталог Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² TFTP"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2676,9 +2874,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "РозділÑти клієнтів"
-msgid "Separate WDS"
-msgstr "РозділÑти WDS"
-
msgid "Server Settings"
msgstr "ÐаÑтройки Ñервера"
@@ -2702,6 +2897,11 @@ msgstr "Тип ÑервіÑу"
msgid "Services"
msgstr "СервіÑи"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "ÐаÑтройки Ñинхронізації чаÑу"
@@ -2766,15 +2966,14 @@ msgstr "Ðа жаль, об'єкт, Ñкий ви проÑили, не знайÐ
msgid "Sorry, the server encountered an unexpected error."
msgstr "Ðа жаль, на Ñервері ÑталаÑÑ Ð½ÐµÐ¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð° помилка."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
"Ðа жаль, автоматичне Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÑиÑтеми не підтримуєтьÑÑ. Ðовий образ "
-"прошивки повинен бути залитий вручну. ЗвернітьÑÑ Ð´Ð¾ OpenWrt Wiki за "
-"інÑтрукцією з інÑталÑції Ð´Ð»Ñ ÐºÐ¾Ð½ÐºÑ€ÐµÑ‚Ð½Ð¾Ð³Ð¾ приÑтрою."
+"прошивки повинен бути залитий вручну. ЗвернітьÑÑ Ð´Ð¾ Wiki за інÑтрукцією з "
+"інÑталÑції Ð´Ð»Ñ ÐºÐ¾Ð½ÐºÑ€ÐµÑ‚Ð½Ð¾Ð³Ð¾ приÑтрою."
msgid "Sort"
msgstr "СортуваннÑ"
@@ -2808,6 +3007,19 @@ msgstr ""
"Визначає макÑимальний Ñ‡Ð°Ñ (Ñекунди), піÑÐ»Ñ Ñкого вважаєтьÑÑ, що вузли "
"\"мертві\""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "Вкажіть тут Ñекретний ключ шифруваннÑ."
@@ -2832,9 +3044,6 @@ msgstr "Статичні оренди"
msgid "Static Routes"
msgstr "Статичні маршрути"
-msgid "Static WDS"
-msgstr "Статичний WDS"
-
msgid "Static address"
msgstr "Статичні адреÑи"
@@ -2964,6 +3173,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
"Призначений провайдеру IPv6-префікÑ, зазвичай закінчуєтьÑÑ Ð½Ð° <code>::</code>"
@@ -3029,6 +3242,9 @@ msgstr "Довжина IPv4-префікÑа в бітах, решта викоÑ
msgid "The length of the IPv6 prefix in bits"
msgstr "Довжина IPv6-префікÑа в бітах"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3254,9 +3470,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Режим Turbo"
-
msgid "Tx-Power"
msgstr "ПотужніÑÑ‚ÑŒ передавача"
@@ -3275,6 +3488,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB-приÑтрій"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "UUID"
@@ -3307,12 +3523,12 @@ msgstr "Оновити ÑпиÑки..."
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"Відвантажити sysupgrade-ÑуміÑний образ, щоб замінити поточну прошивку. Ð”Ð»Ñ "
"Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ñ— конфігурації вÑтановіть прапорець \"Зберегти наÑтройки"
-"\" (потрібен OpenWrt-ÑуміÑний образ прошивки)."
+"\" (потрібен ÑуміÑний образ прошивки)."
msgid "Upload archive..."
msgstr "Відвантажити архів..."
@@ -3383,6 +3599,11 @@ msgstr "ВикориÑтано"
msgid "Used Key Slot"
msgstr "ВикориÑтовуєтьÑÑ Ñлот ключа"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3493,6 +3714,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "Бездротові мережі"
@@ -3532,9 +3756,6 @@ msgstr "ЗапиÑувати отримані DNS-запити до ÑиÑтем
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Підтримка XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3546,9 +3767,9 @@ msgstr ""
"приÑтрій може Ñтати недоÑтупним!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
-"Ви повинні увімкнути Java Script у вашому браузері, або LuCI не буде "
+"Ви повинні увімкнути JavaScript у вашому браузері, або LuCI не буде "
"працювати належним чином."
msgid ""
@@ -3641,6 +3862,9 @@ msgstr ""
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3695,6 +3919,9 @@ msgstr ""
msgid "tagged"
msgstr "з позначкою"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "невідомий"
@@ -3716,6 +3943,54 @@ msgstr "так"
msgid "« Back"
msgstr "« Ðазад"
+#~ msgid "AR Support"
+#~ msgstr "Підтримка AR"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Бездротовий 802.11%s контролер Atheros"
+
+#~ msgid "Background Scan"
+#~ msgstr "Ð¡ÐºÐ°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ фоновому режимі"
+
+#~ msgid "Compression"
+#~ msgstr "СтиÑненнÑ"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Вимкнути таймер HW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Ðе надÑилати відповіді на зондуваннÑ"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Швидкі фрейми"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "МакÑимальна швидкіÑÑ‚ÑŒ"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Мінімальна швидкіÑÑ‚ÑŒ"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "ШвидкіÑÑ‚ÑŒ багатоадреÑного потоку"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Зовнішні канали"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "РегулÑтивний домен"
+
+#~ msgid "Separate WDS"
+#~ msgstr "РозділÑти WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "Статичний WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Режим Turbo"
+
+#~ msgid "XR Support"
+#~ msgstr "Підтримка XR"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "Якщо ви залишите це невибраним, буде Ñтворена додаткова мережа."
diff --git a/modules/luci-base/po/vi/base.po b/modules/luci-base/po/vi/base.po
index 0160c97f3..8964c8e29 100644
--- a/modules/luci-base/po/vi/base.po
+++ b/modules/luci-base/po/vi/base.po
@@ -43,18 +43,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr ""
msgid "15 Minute Load:"
msgstr ""
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr ""
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Dịch vụ căn bản đặt Identifier\">BSSID</abbr>"
@@ -137,9 +164,6 @@ msgstr ""
msgid "APN"
msgstr ""
-msgid "AR Support"
-msgstr "Hỗ trợ AR"
-
msgid "ARP retry threshold"
msgstr ""
@@ -269,6 +293,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr ""
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -277,9 +304,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -375,9 +399,6 @@ msgstr ""
msgid "Associated Stations"
msgstr ""
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr ""
-
msgid "Auth Group"
msgstr ""
@@ -387,6 +408,9 @@ msgstr ""
msgid "Authentication"
msgstr "Xác thực"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "Authoritative"
@@ -453,9 +477,6 @@ msgstr ""
msgid "Back to scan results"
msgstr ""
-msgid "Background Scan"
-msgstr "Background Scan"
-
msgid "Backup / Flash Firmware"
msgstr ""
@@ -480,9 +501,15 @@ msgid ""
"defined backup patterns."
msgstr ""
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr ""
@@ -551,6 +578,9 @@ msgstr ""
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "Checksum"
@@ -601,9 +631,6 @@ msgstr "Lệnh"
msgid "Common Configuration"
msgstr ""
-msgid "Compression"
-msgstr "Sức nén"
-
msgid "Configuration"
msgstr "Cấu hình"
@@ -819,12 +846,12 @@ msgstr ""
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "Vô hiệu hóa bộ chỉnh giỠHW-Beacon"
-
msgid "Disabled"
msgstr ""
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr ""
@@ -863,15 +890,15 @@ msgstr ""
msgid "Do not forward reverse lookups for local networks"
msgstr ""
-msgid "Do not send probe responses"
-msgstr "Không gửi nhắc hồi đáp"
-
msgid "Domain required"
msgstr "Domain yêu cầu"
msgid "Domain whitelist"
msgstr ""
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -942,6 +969,9 @@ msgstr "Kích hoạt <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr ""
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr ""
@@ -972,6 +1002,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr ""
@@ -984,6 +1017,11 @@ msgstr "Cho kích hoạt/ Vô hiệu hóa"
msgid "Enabled"
msgstr ""
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "Kích hoạt Spanning Tree Protocol trên cầu nối này"
@@ -993,6 +1031,12 @@ msgstr ""
msgid "Encryption"
msgstr "Encryption"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr ""
@@ -1024,6 +1068,12 @@ msgstr ""
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr ""
@@ -1036,9 +1086,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "Khung nhanh"
-
msgid "File"
msgstr ""
@@ -1074,6 +1121,9 @@ msgstr ""
msgid "Firewall"
msgstr "Firewall"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr ""
@@ -1119,6 +1169,9 @@ msgstr ""
msgid "Force TKIP and CCMP (AES)"
msgstr ""
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1149,6 +1202,11 @@ msgstr ""
msgid "Free space"
msgstr ""
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr ""
@@ -1206,6 +1264,9 @@ msgstr ""
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr ""
@@ -1263,6 +1324,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "Äịa chỉ IP"
@@ -1305,6 +1369,9 @@ msgstr ""
msgid "IPv4-Address"
msgstr ""
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6"
@@ -1353,6 +1420,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr ""
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr ""
@@ -1497,6 +1567,9 @@ msgstr ""
msgid "Invalid username and/or password! Please try again."
msgstr "Tên và mật mã không đúng. Xin thử lại "
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
@@ -1505,7 +1578,7 @@ msgstr ""
"DÆ°á»ng nhÆ° bạn cố gắng flash má»™t hình ảnh không phù hợp vá»›i bá»™ nhá»› flash, xin "
"vui lòng xác minh các tập tin hình ảnh!"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr ""
msgid "Join Network"
@@ -1618,6 +1691,22 @@ msgid ""
"requests to"
msgstr ""
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1630,6 +1719,9 @@ msgstr ""
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr ""
@@ -1747,9 +1839,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "Mức cao nhất"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr ""
@@ -1785,9 +1874,6 @@ msgstr "Memory usage (%)"
msgid "Metric"
msgstr "Metric"
-msgid "Minimum Rate"
-msgstr "Mức thấp nhất"
-
msgid "Minimum hold time"
msgstr "Mức thấp nhất"
@@ -1800,6 +1886,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr ""
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "Chế độ"
@@ -1858,9 +1947,6 @@ msgstr ""
msgid "Move up"
msgstr ""
-msgid "Multicast Rate"
-msgstr "Multicast Rate"
-
msgid "Multicast address"
msgstr ""
@@ -1873,6 +1959,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2053,12 +2142,50 @@ msgstr ""
msgid "Option removed"
msgstr ""
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "Lá»±a chá»n "
@@ -2071,9 +2198,6 @@ msgstr "Ra khá»i"
msgid "Outbound:"
msgstr ""
-msgid "Outdoor Channels"
-msgstr "Kênh ngoại mạng"
-
msgid "Output Interface"
msgstr ""
@@ -2083,6 +2207,12 @@ msgstr ""
msgid "Override MTU"
msgstr ""
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2115,6 +2245,9 @@ msgstr "PID"
msgid "PIN"
msgstr ""
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr ""
@@ -2199,6 +2332,9 @@ msgstr ""
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2208,6 +2344,9 @@ msgstr "Tiến hành reboot"
msgid "Perform reset"
msgstr ""
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr ""
@@ -2238,6 +2377,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2252,6 +2403,9 @@ msgstr "Ngăn chặn giao tiếp giữa client-và-client"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr ""
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "Proceed"
@@ -2285,12 +2439,24 @@ msgstr ""
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "Pseudo Ad-Hoc (ahdemo)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr ""
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2372,6 +2538,9 @@ msgstr ""
msgid "Realtime Wireless"
msgstr ""
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr ""
@@ -2390,6 +2559,9 @@ msgstr "Receive"
msgid "Receiver Antenna"
msgstr "Máy thu Antenna"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr ""
@@ -2399,9 +2571,6 @@ msgstr ""
msgid "References"
msgstr "Tham chiếu"
-msgid "Regulatory Domain"
-msgstr "Miá»n Ä‘iá»u chỉnh"
-
msgid "Relay"
msgstr ""
@@ -2417,6 +2586,9 @@ msgstr ""
msgid "Remote IPv4 address"
msgstr ""
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "Loại bá»"
@@ -2438,9 +2610,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr ""
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2485,6 +2677,12 @@ msgstr ""
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2574,9 +2772,6 @@ msgstr ""
msgid "Separate Clients"
msgstr "Cô lập đối tượng"
-msgid "Separate WDS"
-msgstr "Phân tách WDS"
-
msgid "Server Settings"
msgstr ""
@@ -2600,6 +2795,11 @@ msgstr ""
msgid "Services"
msgstr "Dịch vụ "
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
msgid "Set up Time Synchronization"
msgstr ""
@@ -2665,8 +2865,8 @@ msgstr ""
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
msgid "Sort"
@@ -2697,6 +2897,19 @@ msgid ""
"dead"
msgstr ""
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr ""
@@ -2721,9 +2934,6 @@ msgstr "Thống kê leases"
msgid "Static Routes"
msgstr "Static Routes"
-msgid "Static WDS"
-msgstr ""
-
msgid "Static address"
msgstr ""
@@ -2840,6 +3050,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr ""
@@ -2897,6 +3111,9 @@ msgstr ""
msgid "The length of the IPv6 prefix in bits"
msgstr ""
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3095,9 +3312,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "Turbo Mode"
-
msgid "Tx-Power"
msgstr ""
@@ -3116,6 +3330,9 @@ msgstr ""
msgid "USB Device"
msgstr ""
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr ""
@@ -3148,8 +3365,8 @@ msgstr ""
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
msgid "Upload archive..."
@@ -3217,6 +3434,11 @@ msgstr "Äã sá»­ dụng"
msgid "Used Key Slot"
msgstr ""
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3325,6 +3547,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr ""
@@ -3364,9 +3589,6 @@ msgstr ""
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "Hỗ trợ XR"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3378,7 +3600,7 @@ msgstr ""
"bạn chó thể trở nên không truy cập được</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
+"You must enable JavaScript in your browser or LuCI will not work properly."
msgstr ""
msgid ""
@@ -3470,6 +3692,9 @@ msgstr "Tập tin <abbr title=\"Domain Name System\">DNS</abbr> địa phương"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3524,6 +3749,9 @@ msgstr ""
msgid "tagged"
msgstr ""
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr ""
@@ -3544,3 +3772,45 @@ msgstr ""
msgid "« Back"
msgstr ""
+
+#~ msgid "AR Support"
+#~ msgstr "Hỗ trợ AR"
+
+#~ msgid "Background Scan"
+#~ msgstr "Background Scan"
+
+#~ msgid "Compression"
+#~ msgstr "Sức nén"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "Vô hiệu hóa bộ chỉnh giỠHW-Beacon"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "Không gửi nhắc hồi đáp"
+
+#~ msgid "Fast Frames"
+#~ msgstr "Khung nhanh"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "Mức cao nhất"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "Mức thấp nhất"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "Multicast Rate"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "Kênh ngoại mạng"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "Miá»n Ä‘iá»u chỉnh"
+
+#~ msgid "Separate WDS"
+#~ msgstr "Phân tách WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbo Mode"
+
+#~ msgid "XR Support"
+#~ msgstr "Hỗ trợ XR"
diff --git a/modules/luci-base/po/zh-cn/base.po b/modules/luci-base/po/zh-cn/base.po
index a2d1e4713..72c446b0e 100644
--- a/modules/luci-base/po/zh-cn/base.po
+++ b/modules/luci-base/po/zh-cn/base.po
@@ -3,21 +3,21 @@ msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-12-21 23:08+0200\n"
-"PO-Revision-Date: 2015-12-20 13:14+0800\n"
-"Last-Translator: GuoGuo <gch981213@gmail.com>\n"
+"PO-Revision-Date: 2017-04-09 15:04+0800\n"
+"Last-Translator: Hsing-Wang Liao <kuoruan@gmail.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 1.8.5\n"
+"X-Generator: Poedit 2.0\n"
"Language-Team: \n"
msgid "%s is untagged in multiple VLANs!"
-msgstr ""
+msgstr "%s 在多个 VLAN 中未标记"
msgid "(%d minute window, %d second interval)"
-msgstr "(%d分钟信æ¯ï¼Œ%d秒刷新)"
+msgstr "(%d 分钟信æ¯ï¼Œ%d 秒刷新)"
msgid "(%s available)"
msgstr "(%s å¯ç”¨)"
@@ -43,142 +43,164 @@ msgstr "-- æ ¹æ®è®¾å¤‡åŒ¹é… --"
msgid "-- match by label --"
msgstr "-- æ ¹æ®æ ‡ç­¾åŒ¹é… --"
+msgid "-- match by uuid --"
+msgstr "-- æ ¹æ® UUID åŒ¹é… --"
+
msgid "1 Minute Load:"
-msgstr "1分钟负载:"
+msgstr "1 分钟负载:"
msgid "15 Minute Load:"
-msgstr "15分钟负载:"
+msgstr "15 分钟负载:"
+
+msgid "4-character hexadecimal ID"
+msgstr "4 字符的å六进制 ID"
msgid "464XLAT (CLAT)"
-msgstr ""
+msgstr "464XLAT (CLAT)"
msgid "5 Minute Load:"
-msgstr "5分钟负载:"
+msgstr "5 分钟负载:"
+
+msgid "6-octet identifier as a hex string - no colons"
+msgstr "6 个八ä½å­—节的标识符 (å六进制字符串) - 无冒å·"
+
+msgid "802.11r Fast Transition"
+msgstr "802.11r 快速转æ¢"
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr "802.11w å…³è” SA 查询最大超时"
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr "802.11w å…³è” SA 查询é‡è¯•è¶…æ—¶"
+
+msgid "802.11w Management Frame Protection"
+msgstr "802.11w 管ç†å¸§ä¿æŠ¤"
+
+msgid "802.11w maximum timeout"
+msgstr "802.11w 最大超时"
+
+msgid "802.11w retry timeout"
+msgstr "802.11w é‡è¯•è¶…æ—¶"
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
-msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
+msgstr "<abbr title=\"基本æœåŠ¡é›†æ ‡è¯†ç¬¦\">BSSID</abbr>"
msgid "<abbr title=\"Domain Name System\">DNS</abbr> query port"
-msgstr "<abbr title=\"Domain Name System\">DNS</abbr> 查询端å£"
+msgstr "<abbr title=\"域åæœåŠ¡ç³»ç»Ÿ\">DNS</abbr> 查询端å£"
msgid "<abbr title=\"Domain Name System\">DNS</abbr> server port"
-msgstr "<abbr title=\"Domain Name System\">DNS</abbr> æœåŠ¡å™¨ç«¯å£"
+msgstr "<abbr title=\"域åæœåŠ¡ç³»ç»Ÿ\">DNS</abbr> æœåŠ¡å™¨ç«¯å£"
msgid ""
"<abbr title=\"Domain Name System\">DNS</abbr> servers will be queried in the "
"order of the resolvfile"
-msgstr "将会按照指定的顺åºæŸ¥è¯¢<abbr title=\"Domain Name System\">DNS</abbr>"
+msgstr "将会按照指定的顺åºæŸ¥è¯¢ <abbr title=\"域åæœåŠ¡ç³»ç»Ÿ\">DNS</abbr>"
msgid "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
-msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
+msgstr "<abbr title=\"扩展æœåŠ¡é›†æ ‡è¯†ç¬¦\">ESSID</abbr>"
msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Address"
-msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-地å€"
+msgstr "<abbr title=\"互è”网å议第4版\">IPv4</abbr>-地å€"
msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Gateway"
-msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-网关"
+msgstr "<abbr title=\"互è”网å议第4版\">IPv4</abbr>-网关"
msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Netmask"
-msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-å­ç½‘掩ç "
+msgstr "<abbr title=\"互è”网å议第4版\">IPv4</abbr>-å­ç½‘掩ç "
msgid ""
"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Address or Network "
"(CIDR)"
msgstr ""
-"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-地å€æˆ–超网() (<abbr "
-"title=\"无类别域间路由\">CIDR</abbr>)"
+"<abbr title=\"互è”网å议第6版\">IPv6</abbr>-地å€æˆ–超网 (<abbr title=\"无类别"
+"域间路由\">CIDR</abbr>)"
msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Gateway"
-msgstr "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-网关"
+msgstr "<abbr title=\"互è”网å议第6版\">IPv6</abbr>-网关"
msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)"
-msgstr ""
-"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-åŽç¼€ï¼ˆå六进制)"
+msgstr "<abbr title=\"互è”网å议第6版\">IPv6</abbr>-åŽç¼€ (å六进制)"
msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Configuration"
-msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr>é…ç½®"
+msgstr "<abbr title=\"å‘光二æžç®¡\">LED</abbr> é…ç½®"
msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Name"
-msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr>å称"
+msgstr "<abbr title=\"å‘光二æžç®¡\">LED</abbr> å称"
msgid "<abbr title=\"Media Access Control\">MAC</abbr>-Address"
-msgstr "<abbr title=\"Media Access Control\">MAC</abbr>-地å€"
+msgstr "<abbr title=\"介质访问控制\">MAC</abbr>-地å€"
msgid ""
"<abbr title=\"maximal\">Max.</abbr> <abbr title=\"Dynamic Host Configuration "
"Protocol\">DHCP</abbr> leases"
-msgstr ""
-"最大<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>分é…æ•°é‡"
+msgstr "最大 <abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</abbr> 分é…æ•°é‡"
msgid ""
"<abbr title=\"maximal\">Max.</abbr> <abbr title=\"Extension Mechanisms for "
"Domain Name System\">EDNS0</abbr> packet size"
-msgstr "最大<abbr title=\"DNS扩展å\">EDNS0</abbr>æ•°æ®åŒ…大å°"
+msgstr "最大 <abbr title=\"DNS扩展å机制\">EDNS0</abbr> æ•°æ®åŒ…大å°"
msgid "<abbr title=\"maximal\">Max.</abbr> concurrent queries"
-msgstr "<abbr title=\"maximal\">最大</abbr>并å‘查询数"
+msgstr "最大并å‘查询数"
msgid "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>"
msgstr "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>"
msgid "A43C + J43 + A43"
-msgstr ""
+msgstr "A43C + J43 + A43"
msgid "A43C + J43 + A43 + V43"
-msgstr ""
+msgstr "A43C + J43 + A43 + V43"
msgid "ADSL"
msgstr "ADSL"
msgid "AICCU (SIXXS)"
-msgstr ""
+msgstr "AICCU (SIXXS)"
msgid "ANSI T1.413"
-msgstr ""
+msgstr "ANSI T1.413"
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "AR支æŒ"
-
msgid "ARP retry threshold"
-msgstr "ARPé‡è¯•é˜ˆå€¼"
+msgstr "ARP é‡è¯•é˜ˆå€¼"
msgid "ATM (Asynchronous Transfer Mode)"
-msgstr ""
+msgstr "ATM (异步传输模å¼)"
msgid "ATM Bridges"
-msgstr "ATM桥接"
+msgstr "ATM 桥接"
msgid "ATM Virtual Channel Identifier (VCI)"
-msgstr "ATM虚拟通é“标识(VCI)"
+msgstr "ATM 虚拟通é“标识 (VCI)"
msgid "ATM Virtual Path Identifier (VPI)"
-msgstr "ATM虚拟路径标识(VPI)"
+msgstr "ATM 虚拟路径标识 (VPI)"
msgid ""
"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual "
"Linux network interfaces which can be used in conjunction with DHCP or PPP "
"to dial into the provider network."
msgstr ""
-"ATM桥是以AAL5åè®®å°è£…以太网的虚拟Linux网桥,用于ååŒDHCP或PPPæ¥æ‹¨å·è¿žæŽ¥åˆ°ç½‘络"
-"è¿è¥å•†ã€‚"
+"ATM 桥是以 AAL5 åè®®å°è£…以太网的虚拟 Linux 网桥,用于ååŒ DHCP 或 PPP æ¥æ‹¨å·"
+"连接到网络è¿è¥å•†ã€‚"
msgid "ATM device number"
-msgstr "ATM设备å·ç "
+msgstr "ATM 设备å·ç "
msgid "ATU-C System Vendor ID"
-msgstr ""
+msgstr "ATU-C 系统供应商 ID"
msgid "AYIYA"
-msgstr ""
+msgstr "AYIYA"
msgid "Access Concentrator"
msgstr "接入集中器"
msgid "Access Point"
-msgstr "接入点AP"
+msgstr "接入点 AP"
msgid "Action"
msgstr "动作"
@@ -190,37 +212,37 @@ msgid "Activate this network"
msgstr "激活此网络"
msgid "Active <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Routes"
-msgstr "活动的<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-链路"
+msgstr "活动的 <abbr title=\"互è”网å议第4版\">IPv4</abbr>-链路"
msgid "Active <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Routes"
-msgstr "活动的<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-链路"
+msgstr "活动的 <abbr title=\"互è”网å议第6版\">IPv6</abbr>-链路"
msgid "Active Connections"
msgstr "活动连接"
msgid "Active DHCP Leases"
-msgstr "已分é…çš„DHCP租约"
+msgstr "已分é…çš„ DHCP 租约"
msgid "Active DHCPv6 Leases"
-msgstr "已分é…çš„DHCPv6租约"
+msgstr "已分é…çš„ DHCPv6 租约"
msgid "Ad-Hoc"
-msgstr "点对点Ad-Hoc"
+msgstr "点对点 Ad-Hoc"
msgid "Add"
msgstr "添加"
msgid "Add local domain suffix to names served from hosts files"
-msgstr "添加本地域ååŽç¼€åˆ°HOSTS文件中的域å"
+msgstr "添加本地域ååŽç¼€åˆ° HOSTS 文件中的域å"
msgid "Add new interface..."
msgstr "添加新接å£..."
msgid "Additional Hosts files"
-msgstr "é¢å¤–çš„HOSTS文件"
+msgstr "é¢å¤–çš„ HOSTS 文件"
msgid "Additional servers file"
-msgstr ""
+msgstr "é¢å¤–çš„ SERVERS 文件"
msgid "Address"
msgstr "地å€"
@@ -235,7 +257,7 @@ msgid "Advanced Settings"
msgstr "高级设置"
msgid "Aggregate Transmit Power(ACTATP)"
-msgstr ""
+msgstr "总å‘射功率 (ACTATP)"
msgid "Alert"
msgstr "警戒"
@@ -243,13 +265,13 @@ msgstr "警戒"
msgid ""
"Allocate IP addresses sequentially, starting from the lowest available "
"address"
-msgstr ""
+msgstr "从最低å¯ç”¨åœ°å€å¼€å§‹é¡ºåºåˆ†é… IP 地å€"
msgid "Allocate IP sequentially"
-msgstr ""
+msgstr "顺åºåˆ†é… IP"
msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication"
-msgstr "å…许<abbr title=\"Secure Shell\">SSH</abbr>密ç éªŒè¯"
+msgstr "å…许 <abbr title=\"安全外壳åè®®\">SSH</abbr> 密ç éªŒè¯"
msgid "Allow all except listed"
msgstr "ä»…å…许列表外"
@@ -261,93 +283,93 @@ msgid "Allow localhost"
msgstr "å…许本机"
msgid "Allow remote hosts to connect to local SSH forwarded ports"
-msgstr "å…许远程主机连接到本地SSH转å‘端å£"
+msgstr "å…许远程主机连接到本地 SSH 转å‘端å£"
msgid "Allow root logins with password"
-msgstr "rootæƒé™ç™»å½•"
+msgstr "å…许 Root 用户凭密ç ç™»å½•"
msgid "Allow the <em>root</em> user to login with password"
-msgstr "å…许<em>root</em>用户凭密ç ç™»å½•"
+msgstr "å…许 <em>root</em> 用户凭密ç ç™»å½•"
msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
-msgstr "å…许127.0.0.0/8回环范围内的上行å“应,例如:RBLæœåŠ¡"
+msgstr "å…许 127.0.0.0/8 回环范围内的上行å“应,例如: RBL æœåŠ¡"
+
+msgid "Allowed IPs"
+msgstr "å…许的 IP"
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
msgstr ""
-"也请查看SIXXS上的<a href=\"https://www.sixxs.net/faq/connectivity/?"
-"faq=comparison\">Tunneling Comparison</a> "
+"也请查看 SIXXS 上的<a href=\"https://www.sixxs.net/faq/connectivity/?"
+"faq=comparison\">隧é“对比</a>"
msgid "Always announce default router"
msgstr "总是广播默认路由"
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
-msgstr ""
+msgstr "Annex"
msgid "Annex A + L + M (all)"
-msgstr ""
+msgstr "Annex A + L + M (全部)"
msgid "Annex A G.992.1"
-msgstr ""
+msgstr "Annex A G.992.1"
msgid "Annex A G.992.2"
-msgstr ""
+msgstr "Annex A G.992.2"
msgid "Annex A G.992.3"
-msgstr ""
+msgstr "Annex A G.992.3"
msgid "Annex A G.992.5"
-msgstr ""
+msgstr "Annex A G.992.5"
msgid "Annex B (all)"
-msgstr ""
+msgstr "Annex B (全部)"
msgid "Annex B G.992.1"
-msgstr ""
+msgstr "Annex B G.992.1"
msgid "Annex B G.992.3"
-msgstr ""
+msgstr "Annex B G.992.3"
msgid "Annex B G.992.5"
-msgstr ""
+msgstr "Annex B G.992.5"
msgid "Annex J (all)"
-msgstr ""
+msgstr "Annex J (全部)"
msgid "Annex L G.992.3 POTS 1"
-msgstr ""
+msgstr "Annex L G.992.3 POTS 1"
msgid "Annex M (all)"
-msgstr ""
+msgstr "Annex M (全部)"
msgid "Annex M G.992.3"
-msgstr ""
+msgstr "Annex M G.992.3"
msgid "Annex M G.992.5"
-msgstr ""
+msgstr "Annex M G.992.5"
msgid "Announce as default router even if no public prefix is available."
-msgstr "å³ä½¿æ²¡æœ‰å¯ç”¨çš„公共å‰ç¼€ä¹Ÿå¹¿æ’­é»˜è®¤è·¯ç”±"
+msgstr "å³ä½¿æ²¡æœ‰å¯ç”¨çš„公共å‰ç¼€ä¹Ÿå¹¿æ’­é»˜è®¤è·¯ç”±ã€‚"
msgid "Announced DNS domains"
-msgstr "广播的DNS域å"
+msgstr "广播的 DNS 域å"
msgid "Announced DNS servers"
-msgstr "广播的DNSæœåŠ¡å™¨"
+msgstr "广播的 DNS æœåŠ¡å™¨"
msgid "Anonymous Identity"
-msgstr ""
+msgstr "匿å身份"
msgid "Anonymous Mount"
msgstr "自动挂载未é…置的ç£ç›˜åˆ†åŒº"
msgid "Anonymous Swap"
-msgstr "自动挂载未é…置的Swap分区"
+msgstr "自动挂载未é…置的 Swap 分区"
msgid "Antenna 1"
msgstr "天线 1"
@@ -369,23 +391,20 @@ msgstr "正在应用更改"
msgid ""
"Assign a part of given length of every public IPv6-prefix to this interface"
-msgstr "ç»™æ¯ä¸ªå…¬å…±IPv6å‰ç¼€åˆ†é…指定长度的固定部分"
+msgstr "ç»™æ¯ä¸ªå…¬å…± IPv6 å‰ç¼€åˆ†é…指定长度的固定部分"
msgid "Assign interfaces..."
msgstr "分é…接å£..."
msgid ""
"Assign prefix parts using this hexadecimal subprefix ID for this interface."
-msgstr ""
+msgstr "指定此接å£ä½¿ç”¨çš„åå…­è¿›åˆ¶å­ ID å‰ç¼€éƒ¨åˆ†ã€‚"
msgid "Associated Stations"
msgstr "已连接站点"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Qualcomm/Atheros 802.11%s 无线网å¡"
-
msgid "Auth Group"
-msgstr ""
+msgstr "认è¯ç»„"
msgid "AuthGroup"
msgstr "认è¯ç»„"
@@ -393,8 +412,11 @@ msgstr "认è¯ç»„"
msgid "Authentication"
msgstr "认è¯"
+msgid "Authentication Type"
+msgstr "认è¯ç±»åž‹"
+
msgid "Authoritative"
-msgstr "授æƒçš„唯一DHCPæœåŠ¡å™¨"
+msgstr "唯一授æƒ"
msgid "Authorization Required"
msgstr "需è¦æŽˆæƒ"
@@ -406,22 +428,22 @@ msgid "Automatic"
msgstr "自动"
msgid "Automatic Homenet (HNCP)"
-msgstr "自动家庭网络(HNCP)"
+msgstr "自动家庭网络 (HNCP)"
msgid "Automatically check filesystem for errors before mounting"
msgstr "在挂载å‰è‡ªåŠ¨æ£€æŸ¥æ–‡ä»¶ç³»ç»Ÿé”™è¯¯"
msgid "Automatically mount filesystems on hotplug"
-msgstr "通过hotplug自动挂载ç£ç›˜"
+msgstr "通过 Hotplug 自动挂载ç£ç›˜"
msgid "Automatically mount swap on hotplug"
-msgstr "通过hotplug自动挂载Swap分区"
+msgstr "通过 Hotplug 自动挂载 Swap 分区"
msgid "Automount Filesystem"
msgstr "自动挂载ç£ç›˜"
msgid "Automount Swap"
-msgstr "自动挂载Swap"
+msgstr "自动挂载 Swap"
msgid "Available"
msgstr "å¯ç”¨"
@@ -433,13 +455,13 @@ msgid "Average:"
msgstr "å¹³å‡:"
msgid "B43 + B43C"
-msgstr ""
+msgstr "B43 + B43C"
msgid "B43 + B43C + V43"
-msgstr ""
+msgstr "B43 + B43C + V43"
msgid "BR / DMR / AFTR"
-msgstr ""
+msgstr "BR / DMR / AFTR"
msgid "BSSID"
msgstr "BSSID"
@@ -459,9 +481,6 @@ msgstr "返回至概况"
msgid "Back to scan results"
msgstr "返回至扫æ结果"
-msgid "Background Scan"
-msgstr "åŽå°æœç´¢"
-
msgid "Backup / Flash Firmware"
msgstr "备份/å‡çº§"
@@ -478,7 +497,7 @@ msgid "Band"
msgstr "频宽"
msgid "Behind NAT"
-msgstr "在NAT网络内"
+msgstr "在 NAT 网络内"
msgid ""
"Below is the determined list of files to backup. It consists of changed "
@@ -488,8 +507,14 @@ msgstr ""
"下é¢æ˜¯å¾…备份的文件清å•ã€‚包å«äº†æ›´æ”¹çš„é…置文件ã€å¿…è¦çš„基础文件和用户自定义的需"
"备份文件。"
+msgid "Bind interface"
+msgstr "绑定接å£"
+
msgid "Bind only to specific interfaces rather than wildcard address."
-msgstr ""
+msgstr "仅绑定到特定接å£ï¼Œè€Œä¸æ˜¯å…¨éƒ¨åœ°å€ã€‚"
+
+msgid "Bind the tunnel to this interface (optional)."
+msgstr "将隧é“ç»‘å®šåˆ°æ­¤æŽ¥å£ (å¯é€‰)。"
msgid "Bitrate"
msgstr "传输速率"
@@ -527,10 +552,10 @@ msgid "Buttons"
msgstr "按键"
msgid "CA certificate; if empty it will be saved after the first connection."
-msgstr "CAè¯ä¹¦.如果留空的è¯è¯ä¹¦å°†åœ¨ç¬¬ä¸€æ¬¡è¿žæŽ¥æ—¶è¢«ä¿å­˜."
+msgstr "CA è¯ä¹¦ï¼Œå¦‚果留空的è¯è¯ä¹¦å°†åœ¨ç¬¬ä¸€æ¬¡è¿žæŽ¥æ—¶è¢«ä¿å­˜ã€‚"
msgid "CPU usage (%)"
-msgstr "CPU使用率(%)"
+msgstr "CPU 使用率 (%)"
msgid "Cancel"
msgstr "å–消"
@@ -559,6 +584,9 @@ msgstr "检查"
msgid "Check fileystems before mount"
msgstr "在挂载å‰æ£€æŸ¥æ–‡ä»¶ç³»ç»Ÿ"
+msgid "Check this option to delete the existing networks from this radio."
+msgstr "选中此选项以从无线中删除现有网络。"
+
msgid "Checksum"
msgstr "校验值"
@@ -578,24 +606,26 @@ msgid "Cipher"
msgstr "算法"
msgid "Cisco UDP encapsulation"
-msgstr ""
+msgstr "Cisco UDP å°è£…"
msgid ""
"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)."
-msgstr "备份/æ¢å¤å½“å‰ç³»ç»Ÿé…置文件或é‡ç½®OpenWrt(ä»…squashfs固件有效)。"
+msgstr ""
+"点击“生æˆå¤‡ä»½â€ä¸‹è½½å½“å‰é…置文件的 tar 存档。è¦å°†å›ºä»¶æ¢å¤åˆ°åˆå§‹çŠ¶æ€ï¼Œè¯·å•å‡»â€œæ‰§"
+"è¡Œé‡ç½®â€ (ä»… Squashfs 固件有效)。"
msgid "Client"
-msgstr "客户端Client"
+msgstr "客户端 Client"
msgid "Client ID to send when requesting DHCP"
-msgstr "请求DHCPæ—¶å‘é€çš„客户ID"
+msgstr "请求 DHCP æ—¶å‘é€çš„客户 ID"
msgid ""
"Close inactive connection after the given amount of seconds, use 0 to "
"persist connection"
-msgstr "定时关闭éžæ´»åŠ¨é“¾æŽ¥(秒),0为æŒç»­è¿žæŽ¥"
+msgstr "定时关闭éžæ´»åŠ¨é“¾æŽ¥ (秒),0 为æŒç»­è¿žæŽ¥"
msgid "Close list..."
msgstr "关闭列表..."
@@ -609,14 +639,11 @@ msgstr "进程命令"
msgid "Common Configuration"
msgstr "一般设置"
-msgid "Compression"
-msgstr "压缩"
-
msgid "Configuration"
msgstr "é…ç½®"
msgid "Configuration applied."
-msgstr "é…置已应用"
+msgstr "é…置已应用。"
msgid "Configuration files will be kept."
msgstr "é…置文件将被ä¿ç•™ã€‚"
@@ -634,7 +661,7 @@ msgid "Connection Limit"
msgstr "连接数é™åˆ¶"
msgid "Connection to server fails when TLS cannot be used"
-msgstr "当TLSä¸å¯ç”¨æ—¶è¿žæŽ¥åˆ°æœåŠ¡å™¨å¤±è´¥"
+msgstr "当 TLS ä¸å¯ç”¨æ—¶ï¼Œä¸ŽæœåŠ¡å™¨è¿žæŽ¥å¤±è´¥"
msgid "Connections"
msgstr "链接"
@@ -652,7 +679,7 @@ msgid "Cover the following interfaces"
msgstr "包括以下接å£"
msgid "Create / Assign firewall-zone"
-msgstr "创建/åˆ†é… é˜²ç«å¢™åŒºåŸŸ"
+msgstr "创建/分é…防ç«å¢™åŒºåŸŸ"
msgid "Create Interface"
msgstr "创建新接å£"
@@ -664,19 +691,19 @@ msgid "Critical"
msgstr "致命错误"
msgid "Cron Log Level"
-msgstr "Cron日志级别"
+msgstr "Cron 日志级别"
msgid "Custom Interface"
msgstr "自定义接å£"
msgid "Custom delegated IPv6-prefix"
-msgstr "自定义分é…çš„IPv6å‰ç¼€"
+msgstr "自定义分é…çš„ IPv6 å‰ç¼€"
msgid ""
"Custom feed definitions, e.g. private feeds. This file can be preserved in a "
"sysupgrade."
msgstr ""
-"自定义的软件æºåœ°å€ï¼ˆä¾‹å¦‚ç§æœ‰çš„软件æºï¼‰ã€‚此处设定的æºåœ°å€åœ¨ç³»ç»Ÿå‡çº§æ—¶å°†è¢«ä¿ç•™"
+"自定义的软件æºåœ°å€ (例如ç§æœ‰çš„软件æº)。此处设定的æºåœ°å€åœ¨ç³»ç»Ÿå‡çº§æ—¶å°†è¢«ä¿ç•™"
msgid "Custom feeds"
msgstr "自定义的软件æº"
@@ -684,82 +711,82 @@ 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>的活动状æ€ã€‚"
+msgstr "自定义 <abbr title=\"å‘光二æžç®¡\">LED</abbr> 的活动状æ€ã€‚"
msgid "DHCP Leases"
-msgstr "DHCP分é…"
+msgstr "DHCP 分é…"
msgid "DHCP Server"
-msgstr "DHCPæœåŠ¡å™¨"
+msgstr "DHCP æœåŠ¡å™¨"
msgid "DHCP and DNS"
msgstr "DHCP/DNS"
msgid "DHCP client"
-msgstr "DHCP客户端"
+msgstr "DHCP 客户端"
msgid "DHCP-Options"
msgstr "DHCP-选项"
msgid "DHCPv6 Leases"
-msgstr "DHCPv6分é…"
+msgstr "DHCPv6 分é…"
msgid "DHCPv6 client"
-msgstr "DHCPv6客户端"
+msgstr "DHCPv6 客户端"
msgid "DHCPv6-Mode"
-msgstr "DHCPv6模å¼"
+msgstr "DHCPv6 模å¼"
msgid "DHCPv6-Service"
-msgstr "DHCPv6æœåŠ¡"
+msgstr "DHCPv6 æœåŠ¡"
msgid "DNS"
msgstr "DNS"
msgid "DNS forwardings"
-msgstr "DNS转å‘"
+msgstr "DNS 转å‘"
msgid "DNS-Label / FQDN"
-msgstr ""
+msgstr "DNS-Label / FQDN"
msgid "DNSSEC"
-msgstr ""
+msgstr "DNSSEC"
msgid "DNSSEC check unsigned"
-msgstr ""
+msgstr "DNSSEC 未签å检查"
msgid "DPD Idle Timeout"
-msgstr ""
+msgstr "DPD 空闲超时"
msgid "DS-Lite AFTR address"
-msgstr ""
+msgstr "DS-Lite AFTR 地å€"
msgid "DSL"
-msgstr ""
+msgstr "DSL"
msgid "DSL Status"
-msgstr ""
+msgstr "DSL 状æ€"
msgid "DSL line mode"
-msgstr ""
+msgstr "DSL 线路模å¼"
msgid "DUID"
-msgstr "DUID(DHCP唯一标识符)"
+msgstr "DUID"
msgid "Data Rate"
-msgstr ""
+msgstr "æ•°æ®é€ŸçŽ‡"
msgid "Debug"
msgstr "调试"
msgid "Default %d"
-msgstr "默认%d"
+msgstr "默认 %d"
msgid "Default gateway"
msgstr "默认网关"
msgid "Default is stateless + stateful"
-msgstr ""
+msgstr "é»˜è®¤æ˜¯æ— çŠ¶æ€ + 有状æ€"
msgid "Default route"
msgstr "默认路由"
@@ -768,15 +795,15 @@ msgid "Default state"
msgstr "默认状æ€"
msgid "Define a name for this network."
-msgstr "为网络定义å称"
+msgstr "为网络定义å称。"
msgid ""
"Define additional DHCP options, for example "
"\"<code>6,192.168.2.1,192.168.2.2</code>\" which advertises different DNS "
"servers to clients."
msgstr ""
-"设置DHCP的附加选项,例如设定\"<code>6,192.168.2.1,192.168.2.2</code>\"表示通"
-"å‘Šä¸åŒçš„DNSæœåŠ¡å™¨ç»™å®¢æˆ·ç«¯ã€‚"
+"设置 DHCP 的附加选项,例如设定 \"<code>6,192.168.2.1,192.168.2.2</code>\" 表"
+"示通告ä¸åŒçš„ DNS æœåŠ¡å™¨ç»™å®¢æˆ·ç«¯ã€‚"
msgid "Delete"
msgstr "删除"
@@ -820,23 +847,22 @@ msgstr "ç¦ç”¨"
msgid ""
"Disable <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr> for "
"this interface."
-msgstr ""
-"ç¦ç”¨æœ¬æŽ¥å£çš„<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>。"
+msgstr "ç¦ç”¨æœ¬æŽ¥å£çš„ <abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</abbr>。"
msgid "Disable DNS setup"
-msgstr "åœç”¨DNS设定"
+msgstr "åœç”¨ DNS 设定"
msgid "Disable Encryption"
-msgstr ""
-
-msgid "Disable HW-Beacon timer"
-msgstr "åœç”¨ HW-Beacon 计时器"
+msgstr "ç¦ç”¨åŠ å¯†"
msgid "Disabled"
msgstr "ç¦ç”¨"
+msgid "Disabled (default)"
+msgstr "ç¦ç”¨ (默认)"
+
msgid "Discard upstream RFC1918 responses"
-msgstr "丢弃RFC1918上行å“应数æ®"
+msgstr "丢弃 RFC1918 上行å“应数æ®"
msgid "Displaying only packages containing"
msgstr "åªæ˜¾ç¤ºæœ‰å†…容的软件包"
@@ -845,32 +871,32 @@ msgid "Distance Optimization"
msgstr "è·ç¦»ä¼˜åŒ–"
msgid "Distance to farthest network member in meters."
-msgstr "最远客户端的è·ç¦»(ç±³)。"
+msgstr "最远网络用户的è·ç¦» (ç±³)。"
msgid "Distribution feeds"
msgstr "å‘行版软件æº"
msgid "Diversity"
-msgstr "分集"
+msgstr "差异"
msgid ""
"Dnsmasq is a combined <abbr title=\"Dynamic Host Configuration Protocol"
"\">DHCP</abbr>-Server and <abbr title=\"Domain Name System\">DNS</abbr>-"
"Forwarder for <abbr title=\"Network Address Translation\">NAT</abbr> "
"firewalls"
-msgstr "Dnsmasq为NAT防ç«å¢™æ供了一个集æˆçš„DHCPæœåŠ¡å™¨å’ŒDNS转å‘器"
+msgstr ""
+"Dnsmasq 为 <abbr title=\"网络地å€è½¬æ¢\">NAT</abbr> 防ç«å¢™æ供了一个集æˆçš„ "
+"<abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</abbr> æœåŠ¡å™¨å’Œ <abbr title=\"域å系统"
+"\">DNS</abbr> 转å‘器"
msgid "Do not cache negative replies, e.g. for not existing domains"
-msgstr "ä¸ç¼“存无用的回应, 比如:ä¸å­˜åœ¨çš„域。"
+msgstr "ä¸ç¼“存无用的回应, 比如: ä¸å­˜åœ¨çš„域。"
msgid "Do not forward requests that cannot be answered by public name servers"
msgstr "ä¸è½¬å‘公共域åæœåŠ¡å™¨æ— æ³•å›žåº”的请求"
msgid "Do not forward reverse lookups for local networks"
-msgstr "ä¸è½¬å‘åå‘查询本地网络的Lookups命令"
-
-msgid "Do not send probe responses"
-msgstr "ä¸å›žé€æŽ¢æµ‹å“应"
+msgstr "ä¸è½¬å‘åå‘查询本地网络的 Lookups 命令"
msgid "Domain required"
msgstr "忽略空域å解æž"
@@ -878,10 +904,13 @@ msgstr "忽略空域å解æž"
msgid "Domain whitelist"
msgstr "域å白åå•"
+msgid "Don't Fragment"
+msgstr "ç¦æ­¢ç¢Žç‰‡"
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
-msgstr "ä¸è½¬å‘没有DNSå称的解æžè¯·æ±‚"
+msgstr "ä¸è½¬å‘没有 <abbr title=\"域å系统\">DNS</abbr> å称的解æžè¯·æ±‚"
msgid "Download and install package"
msgstr "下载并安装软件包"
@@ -890,20 +919,20 @@ msgid "Download backup"
msgstr "下载备份"
msgid "Dropbear Instance"
-msgstr "Dropbear设置"
+msgstr "Dropbear 实例"
msgid ""
"Dropbear offers <abbr title=\"Secure Shell\">SSH</abbr> network shell access "
"and an integrated <abbr title=\"Secure Copy\">SCP</abbr> server"
msgstr ""
-"Dropbearæ供了集æˆçš„<abbr title=\"Secure Copy\">SCP</abbr>æœåŠ¡å™¨å’ŒåŸºäºŽ<abbr "
-"title=\"Secure Shell\">SSH</abbr>的shell访问"
+"Dropbear æ供了集æˆçš„ <abbr title=\"安全å¤åˆ¶\">SCP</abbr> æœåŠ¡å™¨å’ŒåŸºäºŽ <abbr "
+"title=\"安全外壳åè®®\">SSH</abbr> çš„ Shell 访问"
msgid "Dual-Stack Lite (RFC6333)"
-msgstr ""
+msgstr "Dual-Stack Lite (RFC6333)"
msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
-msgstr "动æ€<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
+msgstr "åŠ¨æ€ <abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</abbr>"
msgid "Dynamic tunnel"
msgstr "动æ€éš§é“"
@@ -911,13 +940,14 @@ msgstr "动æ€éš§é“"
msgid ""
"Dynamically allocate DHCP addresses for clients. If disabled, only clients "
"having static leases will be served."
-msgstr "动æ€åˆ†é…DHCP地å€ã€‚如果ç¦ç”¨ï¼Œåˆ™åªèƒ½ä¸ºé™æ€ç§Ÿç”¨è¡¨ä¸­çš„客户端æ供网络æœåŠ¡ã€‚"
+msgstr ""
+"动æ€åˆ†é… DHCP 地å€ã€‚如果ç¦ç”¨ï¼Œåˆ™åªèƒ½ä¸ºé™æ€ç§Ÿç”¨è¡¨ä¸­çš„客户端æ供网络æœåŠ¡ã€‚"
msgid "EA-bits length"
-msgstr ""
+msgstr "EA-bits 长度"
msgid "EAP-Method"
-msgstr "EAP-Method"
+msgstr "EAP 类型"
msgid "Edit"
msgstr "修改"
@@ -940,31 +970,34 @@ msgid "Enable"
msgstr "å¯ç”¨"
msgid "Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
-msgstr "å¼€å¯<abbr title=\"Spanning Tree Protocol\">STP</abbr>"
+msgstr "å¼€å¯ <abbr title=\"生æˆæ ‘åè®®\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
-msgstr "å¯ç”¨HE.net动æ€ç»ˆç«¯æ›´æ–°"
+msgstr "å¯ç”¨ HE.net 动æ€ç»ˆç«¯æ›´æ–°"
+
+msgid "Enable IPv6 negotiation"
+msgstr "å¯ç”¨ IPv6 å商"
msgid "Enable IPv6 negotiation on the PPP link"
-msgstr "在PPP链路上å¯ç”¨IPv6å商"
+msgstr "在 PPP 链路上å¯ç”¨ IPv6 å商"
msgid "Enable Jumbo Frame passthrough"
msgstr "å¯ç”¨å·¨åž‹å¸§é€ä¼ "
msgid "Enable NTP client"
-msgstr "å¯ç”¨NTP客户端"
+msgstr "å¯ç”¨ NTP 客户端"
msgid "Enable Single DES"
-msgstr ""
+msgstr "å¯ç”¨å•ä¸ª DES"
msgid "Enable TFTP server"
-msgstr "å¯ç”¨TFTPæœåŠ¡å™¨"
+msgstr "å¯ç”¨ TFTP æœåŠ¡å™¨"
msgid "Enable VLAN functionality"
-msgstr "å¯ç”¨VLAN"
+msgstr "å¯ç”¨ VLAN"
msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
-msgstr "å¯ç”¨WPS按键é…ç½®.è¦æ±‚使用WPA(2)-PSK"
+msgstr "å¯ç”¨ WPS 按键é…置,è¦æ±‚使用 WPA(2)-PSK"
msgid "Enable learning and aging"
msgstr "å¯ç”¨æ™ºèƒ½äº¤æ¢å­¦ä¹ "
@@ -975,6 +1008,9 @@ msgstr "å¯ç”¨æµå…¥æ•°æ®åŒ…é•œåƒ"
msgid "Enable mirroring of outgoing packets"
msgstr "å¯ç”¨æµå‡ºæ•°æ®åŒ…é•œåƒ"
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr "å¯ç”¨å°è£…æ•°æ®åŒ…çš„ DF (ç¦æ­¢ç¢Žç‰‡) 标志。"
+
msgid "Enable this mount"
msgstr "å¯ç”¨æŒ‚载点"
@@ -987,6 +1023,11 @@ msgstr "å¯ç”¨/ç¦ç”¨"
msgid "Enabled"
msgstr "å¯ç”¨"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr "å¯ç”¨å±žäºŽåŒä¸€ç§»åŠ¨åŸŸçš„接入点之间的快速漫游"
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "在此桥接上å¯ç”¨ç”Ÿæˆå议树"
@@ -996,6 +1037,12 @@ msgstr "å°è£…模å¼"
msgid "Encryption"
msgstr "加密"
+msgid "Endpoint Host"
+msgstr "端点主机"
+
+msgid "Endpoint Port"
+msgstr "端点端å£"
+
msgid "Erasing..."
msgstr "擦除中..."
@@ -1003,7 +1050,7 @@ msgid "Error"
msgstr "错误"
msgid "Errored seconds (ES)"
-msgstr ""
+msgstr "错误秒数 (ES)"
msgid "Ethernet Adapter"
msgstr "以太网适é…器"
@@ -1012,36 +1059,38 @@ msgid "Ethernet Switch"
msgstr "以太网交æ¢æœº"
msgid "Exclude interfaces"
-msgstr ""
+msgstr "排除接å£"
msgid "Expand hosts"
-msgstr "扩展HOSTS文件中的主机åŽç¼€"
+msgstr "扩展 HOSTS 文件中的主机åŽç¼€"
msgid "Expires"
msgstr "到期时间"
-#, fuzzy
msgid ""
"Expiry time of leased addresses, minimum is 2 minutes (<code>2m</code>)."
-msgstr "地å€ç§ŸæœŸï¼Œæœ€å°2分钟(<code>2m</code>)。"
+msgstr "租用地å€çš„到期时间,最短 2 分钟 (<code>2m</code>)。"
msgid "External"
-msgstr ""
+msgstr "外部"
+
+msgid "External R0 Key Holder List"
+msgstr "外部 R0KH (R0 Key Holder) 列表"
+
+msgid "External R1 Key Holder List"
+msgstr "外部 R1KH (R1 Key Holder) 列表"
msgid "External system log server"
-msgstr "远程logæœåŠ¡å™¨"
+msgstr "外部日志æœåŠ¡å™¨"
msgid "External system log server port"
-msgstr "远程logæœåŠ¡å™¨ç«¯å£"
+msgstr "外部日志æœåŠ¡å™¨ç«¯å£"
msgid "External system log server protocol"
-msgstr ""
+msgstr "外部日志æœåŠ¡å™¨åè®®"
msgid "Extra SSH command options"
-msgstr "é¢å¤–çš„SSH命令选项"
-
-msgid "Fast Frames"
-msgstr "快速帧"
+msgstr "é¢å¤–çš„ SSH 命令选项"
msgid "File"
msgstr "文件"
@@ -1065,8 +1114,8 @@ msgid ""
"Find all currently attached filesystems and swap and replace configuration "
"with defaults based on what was detected"
msgstr ""
-"查找所有当å‰ç³»ç»Ÿä¸Šçš„分区和Swap并使用基于所找到的分区生æˆçš„é…置文件替æ¢é»˜è®¤é…"
-"置。"
+"查找所有当å‰ç³»ç»Ÿä¸Šçš„分区和 Swap 并使用基于所找到的分区生æˆçš„é…置文件替æ¢é»˜è®¤"
+"é…ç½®"
msgid "Find and join network"
msgstr "æœç´¢å¹¶åŠ å…¥ç½‘络"
@@ -1080,6 +1129,9 @@ msgstr "完æˆ"
msgid "Firewall"
msgstr "防ç«å¢™"
+msgid "Firewall Mark"
+msgstr "防ç«å¢™æ ‡è¯†"
+
msgid "Firewall Settings"
msgstr "防ç«å¢™è®¾ç½®"
@@ -1087,13 +1139,13 @@ msgid "Firewall Status"
msgstr "防ç«å¢™çŠ¶æ€"
msgid "Firmware File"
-msgstr ""
+msgstr "固件文件"
msgid "Firmware Version"
msgstr "固件版本"
msgid "Fixed source port for outbound DNS queries"
-msgstr "指定的DNS查询æºç«¯å£"
+msgstr "指定的 DNS 查询æºç«¯å£"
msgid "Flash Firmware"
msgstr "刷新固件"
@@ -1111,31 +1163,34 @@ msgid "Flashing..."
msgstr "刷写中..."
msgid "Force"
-msgstr "强制开å¯DHCP"
+msgstr "强制"
msgid "Force CCMP (AES)"
-msgstr "强制使用CCMP(AES)加密"
+msgstr "强制 CCMP (AES)"
msgid "Force DHCP on this network even if another server is detected."
-msgstr "强制开å¯DHCP。"
+msgstr "å³ä½¿æ£€æµ‹åˆ°å¦ä¸€å°æœåŠ¡å™¨ï¼Œä¹Ÿè¦å¼ºåˆ¶ä½¿ç”¨æ­¤ç½‘络上的 DHCP。"
msgid "Force TKIP"
-msgstr "强制使用TKIP加密"
+msgstr "强制 TKIP"
msgid "Force TKIP and CCMP (AES)"
-msgstr "TKIPå’ŒCCMP(AES)æ··åˆåŠ å¯†"
+msgstr "强制 TKIP 和 CCMP (AES)"
+
+msgid "Force link"
+msgstr "强制链路"
msgid "Force use of NAT-T"
-msgstr ""
+msgstr "强制使用 NAT-T"
msgid "Form token mismatch"
-msgstr ""
+msgstr "表å•ä»¤ç‰Œä¸åŒ¹é…"
msgid "Forward DHCP traffic"
-msgstr "转å‘DHCPæ•°æ®åŒ…"
+msgstr "è½¬å‘ DHCP æ•°æ®åŒ…"
msgid "Forward Error Correction Seconds (FECS)"
-msgstr ""
+msgstr "å‰å‘纠错秒数 (FECS)"
msgid "Forward broadcast traffic"
msgstr "转å‘广播数æ®åŒ…"
@@ -1155,11 +1210,18 @@ msgstr "空闲数"
msgid "Free space"
msgstr "空闲空间"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+"有关 WireGuard 接å£å’Œ Peer 的更多信æ¯: <a href=\"http://wireguard.io"
+"\">wireguard.io</a>。"
+
msgid "GHz"
msgstr "GHz"
msgid "GPRS only"
-msgstr "ä»…GPRS"
+msgstr "ä»… GPRS"
msgid "Gateway"
msgstr "网关"
@@ -1174,7 +1236,7 @@ msgid "General Setup"
msgstr "基本设置"
msgid "General options for opkg"
-msgstr "opkg基础é…ç½®"
+msgstr "OPKG 基础é…ç½®"
msgid "Generate Config"
msgstr "生æˆé…ç½®"
@@ -1183,7 +1245,7 @@ msgid "Generate archive"
msgstr "生æˆå¤‡ä»½"
msgid "Generic 802.11%s Wireless Controller"
-msgstr "Generic 802.11%s 无线网å¡"
+msgstr "通用 802.11%s 无线网å¡"
msgid "Given password confirmation did not match, password not changed!"
msgstr "由于密ç éªŒè¯ä¸åŒ¹é…,密ç æ²¡æœ‰æ›´æ”¹ï¼"
@@ -1201,16 +1263,19 @@ msgid "Go to relevant configuration page"
msgstr "跳转到相关的é…置页é¢"
msgid "Group Password"
-msgstr ""
+msgstr "组密ç "
msgid "Guest"
msgstr "访客"
msgid "HE.net password"
-msgstr "HE.net密ç "
+msgstr "HE.net 密ç "
msgid "HE.net username"
-msgstr "HE.net用户å"
+msgstr "HE.net 用户å"
+
+msgid "HT mode (802.11n)"
+msgstr "HT æ¨¡å¼ (802.11n)"
msgid "Handler"
msgstr "处ç†ç¨‹åº"
@@ -1219,7 +1284,7 @@ msgid "Hang Up"
msgstr "挂起"
msgid "Header Error Code Errors (HEC)"
-msgstr ""
+msgstr "请求头的错误代ç é”™è¯¯ (HEC)"
msgid "Heartbeat"
msgstr "心跳"
@@ -1232,16 +1297,16 @@ msgstr "é…置路由器的部分基础信æ¯ã€‚"
msgid ""
"Here you can paste public SSH-Keys (one per line) for SSH public-key "
"authentication."
-msgstr "SSH公共密钥认è¯(æ¯è¡Œä¸€ä¸ªå¯†é’¥)。"
+msgstr "请在这里粘贴公共 SSH 密钥用于 SSH å…¬é’¥è®¤è¯ (æ¯è¡Œä¸€ä¸ª)。"
msgid "Hermes 802.11b Wireless Controller"
msgstr "Hermes 802.11b 无线网å¡"
msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
-msgstr "éšè—<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
+msgstr "éšè— <abbr title=\"扩展æœåŠ¡é›†æ ‡è¯†ç¬¦\">ESSID</abbr>"
msgid "Host"
-msgstr ""
+msgstr "主机"
msgid "Host entries"
msgstr "主机目录"
@@ -1250,13 +1315,13 @@ msgid "Host expiry timeout"
msgstr "主机到期超时"
msgid "Host-<abbr title=\"Internet Protocol Address\">IP</abbr> or Network"
-msgstr "主机IP或网络"
+msgstr "主机 IP 或网络"
msgid "Hostname"
msgstr "主机å"
msgid "Hostname to send when requesting DHCP"
-msgstr "请求DHCPæ—¶å‘é€çš„主机å"
+msgstr "请求 DHCP æ—¶å‘é€çš„主机å"
msgid "Hostnames"
msgstr "主机å"
@@ -1265,98 +1330,107 @@ msgid "Hybrid"
msgstr "æ··åˆ"
msgid "IKE DH Group"
-msgstr ""
+msgstr "IKE DH 组"
+
+msgid "IP Addresses"
+msgstr "IP 地å€"
msgid "IP address"
-msgstr "IP地å€"
+msgstr "IP 地å€"
msgid "IPv4"
msgstr "IPv4"
msgid "IPv4 Firewall"
-msgstr "IPv4防ç«å¢™"
+msgstr "IPv4 防ç«å¢™"
msgid "IPv4 WAN Status"
-msgstr "IPv4 WAN状æ€"
+msgstr "IPv4 WAN 状æ€"
msgid "IPv4 address"
-msgstr "IPv4地å€"
+msgstr "IPv4 地å€"
msgid "IPv4 and IPv6"
-msgstr "IPv4å’ŒIPv6"
+msgstr "IPv4 和 IPv6"
msgid "IPv4 assignment length"
-msgstr "分é…IPv4长度"
+msgstr "åˆ†é… IPv4 长度"
msgid "IPv4 broadcast"
-msgstr "IPv4广播"
+msgstr "IPv4 广播"
msgid "IPv4 gateway"
-msgstr "IPv4网关"
+msgstr "IPv4 网关"
msgid "IPv4 netmask"
-msgstr "IPv4å­ç½‘掩ç "
+msgstr "IPv4 å­ç½‘掩ç "
msgid "IPv4 only"
-msgstr "ä»…IPv4"
+msgstr "ä»… IPv4"
msgid "IPv4 prefix"
-msgstr "IPv4地å€å‰ç¼€"
+msgstr "IPv4 地å€å‰ç¼€"
msgid "IPv4 prefix length"
-msgstr "IPv4地å€å‰ç¼€é•¿åº¦"
+msgstr "IPv4 地å€å‰ç¼€é•¿åº¦"
msgid "IPv4-Address"
msgstr "IPv4-地å€"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr "IPv4-in-IPv4 (RFC2003)"
+
msgid "IPv6"
msgstr "IPv6"
msgid "IPv6 Firewall"
-msgstr "IPv6防ç«å¢™"
+msgstr "IPv6 防ç«å¢™"
msgid "IPv6 Neighbours"
-msgstr "IPv6邻居"
+msgstr "IPv6 网上邻居"
msgid "IPv6 Settings"
-msgstr "IPv6设置"
+msgstr "IPv6 设置"
msgid "IPv6 ULA-Prefix"
-msgstr "IPv6 ULAå‰ç¼€"
+msgstr "IPv6 ULA å‰ç¼€"
msgid "IPv6 WAN Status"
-msgstr "IPv6 WAN状æ€"
+msgstr "IPv6 WAN 状æ€"
msgid "IPv6 address"
-msgstr "IPv6地å€"
+msgstr "IPv6 地å€"
msgid "IPv6 address delegated to the local tunnel endpoint (optional)"
-msgstr "绑定到本地隧é“终点的IPv6地å€(å¯é€‰)"
+msgstr "绑定到本地隧é“终点的 IPv6 åœ°å€ (å¯é€‰)"
msgid "IPv6 assignment hint"
-msgstr ""
+msgstr "IPv6 分é…æ示"
msgid "IPv6 assignment length"
-msgstr "IPv6分é…长度"
+msgstr "IPv6 分é…长度"
msgid "IPv6 gateway"
-msgstr "IPv6网关"
+msgstr "IPv6 网关"
msgid "IPv6 only"
-msgstr "ä»…IPv6"
+msgstr "ä»… IPv6"
msgid "IPv6 prefix"
-msgstr "IPv6地å€å‰ç¼€"
+msgstr "IPv6 地å€å‰ç¼€"
msgid "IPv6 prefix length"
-msgstr "IPv6地å€å‰ç¼€é•¿åº¦"
+msgstr "IPv6 地å€å‰ç¼€é•¿åº¦"
msgid "IPv6 routed prefix"
-msgstr "IPv6路由å‰ç¼€"
+msgstr "IPv6 路由å‰ç¼€"
msgid "IPv6-Address"
msgstr "IPv6-地å€"
+msgid "IPv6-PD"
+msgstr "IPv6-PD"
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6-in-IPv4 (RFC4213)"
@@ -1370,14 +1444,14 @@ msgid "Identity"
msgstr "鉴æƒ"
msgid "If checked, 1DES is enaled"
-msgstr ""
+msgstr "选中以å¯ç”¨ 1DES"
msgid "If checked, encryption is disabled"
-msgstr ""
+msgstr "选中以ç¦ç”¨åŠ å¯†"
msgid ""
"If specified, mount the device by its UUID instead of a fixed device node"
-msgstr "用UUIDæ¥æŒ‚载设备"
+msgstr "用 UUID æ¥æŒ‚载设备"
msgid ""
"If specified, mount the device by the partition label instead of a fixed "
@@ -1388,7 +1462,7 @@ msgid "If unchecked, no default route is configured"
msgstr "留空则ä¸é…置默认路由"
msgid "If unchecked, the advertised DNS server addresses are ignored"
-msgstr "留空则忽略所通告的DNSæœåŠ¡å™¨åœ°å€"
+msgstr "留空则忽略所通告的 DNS æœåŠ¡å™¨åœ°å€"
msgid ""
"If your physical memory is insufficient unused data can be temporarily "
@@ -1402,7 +1476,7 @@ msgid "Ignore <code>/etc/hosts</code>"
msgstr "忽略 <code>/etc/hosts</code>"
msgid "Ignore interface"
-msgstr "关闭DHCP"
+msgstr "忽略此接å£"
msgid "Ignore resolve file"
msgstr "忽略解æžæ–‡ä»¶"
@@ -1417,6 +1491,8 @@ 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 "活动超时"
@@ -1437,10 +1513,10 @@ msgid "Install"
msgstr "安装"
msgid "Install iputils-traceroute6 for IPv6 traceroute"
-msgstr "安装iputils-traceroute6以进行IPv6 traceroute"
+msgstr "安装 iputils-traceroute6 以进行 IPv6 路由追踪"
msgid "Install package %q"
-msgstr "安装软件包%q"
+msgstr "安装软件包 %q"
msgid "Install protocol extensions..."
msgstr "安装扩展åè®®..."
@@ -1464,10 +1540,10 @@ msgid "Interface is shutting down..."
msgstr "正在关闭接å£..."
msgid "Interface name"
-msgstr ""
+msgstr "接å£å称"
msgid "Interface not present or not connected yet."
-msgstr "接å£ä¸å­˜åœ¨æˆ–未连接"
+msgstr "接å£ä¸å­˜åœ¨æˆ–未连接。"
msgid "Interface reconnected"
msgstr "接å£å·²é‡æ–°è¿žæŽ¥"
@@ -1479,7 +1555,7 @@ msgid "Interfaces"
msgstr "接å£"
msgid "Internal"
-msgstr ""
+msgstr "内部"
msgid "Internal Server Error"
msgstr "内部æœåŠ¡å™¨é”™è¯¯"
@@ -1488,31 +1564,33 @@ msgid "Invalid"
msgstr "无效"
msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed."
-msgstr "无效的VLAN ID! åªæœ‰ %d å’Œ %d 之间的ID有效。"
+msgstr "无效的 VLAN IDï¼åªæœ‰ %d å’Œ %d 之间的 ID 有效。"
msgid "Invalid VLAN ID given! Only unique IDs are allowed"
-msgstr "无效的VLAN ID! åªå…许唯一的ID。"
+msgstr "无效的 VLAN IDï¼åªå…许唯一的 ID。"
msgid "Invalid username and/or password! Please try again."
-msgstr "无效的用户åå’Œ/或密ç ! 请é‡è¯•ã€‚"
+msgstr "无效的用户åå’Œ/或密ç ï¼è¯·é‡è¯•ã€‚"
+
+msgid "Isolate Clients"
+msgstr ""
-#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
-msgstr "å°†è¦åˆ·æ–°çš„固件与本路由器ä¸å…¼å®¹ï¼Œè¯·é‡æ–°éªŒè¯å›ºä»¶æ–‡ä»¶ã€‚"
+msgstr "ä½ å°è¯•åˆ·å†™çš„固件与本路由器ä¸å…¼å®¹ï¼Œè¯·é‡æ–°éªŒè¯å›ºä»¶æ–‡ä»¶ã€‚"
-msgid "Java Script required!"
-msgstr "需è¦Java Scriptï¼"
+msgid "JavaScript required!"
+msgstr "éœ€è¦ JavaScriptï¼"
msgid "Join Network"
msgstr "加入网络"
msgid "Join Network: Wireless Scan"
-msgstr "加入网络:æœç´¢æ— çº¿"
+msgstr "加入网络: æœç´¢æ— çº¿"
msgid "Joining Network: %q"
-msgstr ""
+msgstr "加入网络: %q"
msgid "Keep settings"
msgstr "ä¿ç•™é…ç½®"
@@ -1536,13 +1614,13 @@ msgid "L2TP"
msgstr "L2TP"
msgid "L2TP Server"
-msgstr "L2TPæœåŠ¡å™¨"
+msgstr "L2TP æœåŠ¡å™¨"
msgid "LCP echo failure threshold"
-msgstr "LCPå“应故障阈值"
+msgstr "LCP å“应故障阈值"
msgid "LCP echo interval"
-msgstr "LCPå“应间隔"
+msgstr "LCP å“应间隔"
msgid "LLC"
msgstr "LLC"
@@ -1557,13 +1635,13 @@ msgid "Language and Style"
msgstr "语言和界é¢"
msgid "Latency"
-msgstr ""
+msgstr "延迟"
msgid "Leaf"
-msgstr "å¶å­"
+msgstr "å¶èŠ‚点"
msgid "Lease time"
-msgstr ""
+msgstr "租期"
msgid "Lease validity time"
msgstr "有效租期"
@@ -1581,31 +1659,31 @@ msgid "Leave empty to autodetect"
msgstr "留空则自动探测"
msgid "Leave empty to use the current WAN address"
-msgstr "留空则使用当å‰WAN地å€"
+msgstr "ç•™ç©ºåˆ™ä½¿ç”¨å½“å‰ WAN 地å€"
msgid "Legend:"
-msgstr "图例:"
+msgstr "图例:"
msgid "Limit"
msgstr "客户数"
msgid "Limit DNS service to subnets interfaces on which we are serving DNS."
-msgstr ""
+msgstr "å°†DNSæœåŠ¡é™åˆ¶åˆ°æˆ‘们æä¾›DNSçš„å­ç½‘接å£ã€‚"
msgid "Limit listening to these interfaces, and loopback."
-msgstr ""
+msgstr "仅监å¬è¿™äº›æŽ¥å£å’ŒçŽ¯å›žæŽ¥å£ã€‚"
msgid "Line Attenuation (LATN)"
-msgstr ""
+msgstr "çº¿è·¯è¡°å‡ (LATN)"
msgid "Line Mode"
-msgstr ""
+msgstr "线路模å¼"
msgid "Line State"
msgstr "线路状æ€"
msgid "Line Uptime"
-msgstr ""
+msgstr "线路è¿è¡Œæ—¶é—´"
msgid "Link On"
msgstr "活动链接"
@@ -1613,25 +1691,53 @@ msgstr "活动链接"
msgid ""
"List of <abbr title=\"Domain Name System\">DNS</abbr> servers to forward "
"requests to"
-msgstr "将指定的域åDNS解æžè½¬å‘到指定的DNSæœåŠ¡å™¨ï¼ˆæŒ‰ç…§ç¤ºä¾‹å¡«å†™ï¼‰"
+msgstr ""
+"将指定域å的解æžè¯·æ±‚转å‘到指定的 <abbr title=\"域å系统\">DNS</abbr> æœåŠ¡å™¨ "
+"(按照示例填写)"
-msgid "List of SSH key files for auth"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+"åŒä¸€ç§»åŠ¨åŸŸä¸­çš„ R0KH 列表。<br />æ ¼å¼: MAC 地å€,NAS标识符,128ä½å¯†é’¥ (å六进制"
+"字符串)。<br />在从åˆå§‹ç§»åŠ¨åŸŸå…³è”期间使用的 R0KH 中请求 PMK-R1 密钥时,该列表"
+"用于将 R0KH-ID (NAS标识符)映射到目标 MAC 地å€ã€‚"
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
msgstr ""
+"åŒä¸€ç§»åŠ¨åŸŸä¸­çš„ R1KH 列表。<br />æ ¼å¼: MAC地å€,R1KH-ID (包å«å†’å·çš„6个八ä½å­—"
+"节),128ä½å¯†é’¥ (å六进制字符串)。<br />当从 R0KH å‘é€ PMK-R1 键时,此列表用于"
+"å°† R1KH-ID 映射到目标 MAC 地å€ã€‚这也是å¯ä»¥è¯·æ±‚ PMK-R1 键的 MD 中授æƒçš„ R1KH "
+"的列表。"
+
+msgid "List of SSH key files for auth"
+msgstr "用于认è¯çš„ SSH 密钥文件列表"
msgid "List of domains to allow RFC1918 responses for"
-msgstr "å…许RFC1918å“应的域å列表"
+msgstr "å…许 RFC1918 å“应的域å列表"
msgid "List of hosts that supply bogus NX domain results"
msgstr "å…许虚å‡ç©ºåŸŸåå“应的æœåŠ¡å™¨åˆ—表"
msgid "Listen Interfaces"
-msgstr ""
+msgstr "监å¬æŽ¥å£"
+
+msgid "Listen Port"
+msgstr "监å¬ç«¯å£"
msgid "Listen only on the given interface or, if unspecified, on all"
-msgstr "监å¬æŒ‡å®šçš„接å£ï¼›æœªæŒ‡å®šåˆ™ç›‘å¬å…¨éƒ¨"
+msgstr "仅监å¬æŒ‡å®šçš„接å£ï¼ŒæœªæŒ‡å®šåˆ™ç›‘å¬å…¨éƒ¨"
msgid "Listening port for inbound DNS queries"
-msgstr "入站DNS查询端å£"
+msgstr "入站 DNS 查询端å£"
msgid "Load"
msgstr "è´Ÿè½½"
@@ -1643,16 +1749,16 @@ msgid "Loading"
msgstr "加载中"
msgid "Local IP address to assign"
-msgstr ""
+msgstr "è¦åˆ†é…的本地 IP 地å€"
msgid "Local IPv4 address"
-msgstr "本地IPv4地å€"
+msgstr "本地 IPv4 地å€"
msgid "Local IPv6 address"
-msgstr "本地IPv6地å€"
+msgstr "本地 IPv6 地å€"
msgid "Local Service Only"
-msgstr ""
+msgstr "仅本地æœåŠ¡"
msgid "Local Startup"
msgstr "本地å¯åŠ¨è„šæœ¬"
@@ -1663,14 +1769,13 @@ msgstr "本地时间"
msgid "Local domain"
msgstr "本地域å"
-#, fuzzy
msgid ""
"Local domain specification. Names matching this domain are never forwarded "
"and are resolved from DHCP or hosts files only"
-msgstr "本地域å规则。从ä¸è½¬å‘和处ç†åªæºè‡ªDHCP或HOSTS文件的本地域åæ•°æ®"
+msgstr "本地域å规则。与此域匹é…çš„å称从ä¸è½¬å‘,仅从 DHCP 或 HOSTS 文件解æž"
msgid "Local domain suffix appended to DHCP names and hosts file entries"
-msgstr "本地域ååŽç¼€å°†æ·»åŠ åˆ°DHCPå’ŒHOSTS文件æ¡ç›®"
+msgstr "本地域ååŽç¼€å°†æ·»åŠ åˆ° DHCP å’Œ HOSTS 文件æ¡ç›®"
msgid "Local server"
msgstr "本地æœåŠ¡å™¨"
@@ -1678,19 +1783,19 @@ msgstr "本地æœåŠ¡å™¨"
msgid ""
"Localise hostname depending on the requesting subnet if multiple IPs are "
"available"
-msgstr "如果有多个IPå¯ç”¨ï¼Œåˆ™æ ¹æ®è¯·æ±‚æ¥æºçš„å­ç½‘æ¥æœ¬åœ°åŒ–主机å"
+msgstr "如果有多个 IP å¯ç”¨ï¼Œåˆ™æ ¹æ®è¯·æ±‚æ¥æºçš„å­ç½‘æ¥æœ¬åœ°åŒ–主机å"
msgid "Localise queries"
msgstr "本地化查询"
msgid "Locked to channel %s used by: %s"
-msgstr "ä¿¡é“é“已被é”定为 %s,因为该信é“被 %s 使用"
+msgstr "ä¿¡é“é“已被é”定为 %s,因为该信é“被 %s 使用"
msgid "Log output level"
msgstr "日志记录等级"
msgid "Log queries"
-msgstr "日志查询"
+msgstr "记录查询日志"
msgid "Logging"
msgstr "日志"
@@ -1702,7 +1807,7 @@ msgid "Logout"
msgstr "退出"
msgid "Loss of Signal Seconds (LOSS)"
-msgstr ""
+msgstr "ä¿¡å·ä¸¢å¤±ç§’æ•° (LOSS)"
msgid "Lowest leased address as offset from the network address."
msgstr "网络地å€çš„起始分é…基å€ã€‚"
@@ -1720,13 +1825,13 @@ msgid "MAC-List"
msgstr "MAC-列表"
msgid "MAP / LW4over6"
-msgstr ""
+msgstr "MAP / LW4over6"
msgid "MB/s"
msgstr "MB/s"
msgid "MD5"
-msgstr ""
+msgstr "MD5"
msgid "MHz"
msgstr "MHz"
@@ -1737,28 +1842,25 @@ msgstr "MTU"
msgid ""
"Make sure to clone the root filesystem using something like the commands "
"below:"
-msgstr "请确认你已ç»å¤åˆ¶è¿‡æ•´ä¸ªæ ¹æ–‡ä»¶ç³»ç»Ÿ,例如使用以下命令:"
+msgstr "请确认你已ç»å¤åˆ¶è¿‡æ•´ä¸ªæ ¹æ–‡ä»¶ç³»ç»Ÿï¼Œä¾‹å¦‚使用以下命令:"
msgid "Manual"
-msgstr ""
+msgstr "手动"
msgid "Max. Attainable Data Rate (ATTNDR)"
-msgstr ""
-
-msgid "Maximum Rate"
-msgstr "最高速率"
+msgstr "最大å¯è¾¾æ•°æ®é€ŸçŽ‡ (ATTNDR)"
msgid "Maximum allowed number of active DHCP leases"
-msgstr "å…许的最大DHCP租用数"
+msgstr "å…许的最大 DHCP 租用数"
msgid "Maximum allowed number of concurrent DNS queries"
-msgstr "å…许的最大并å‘DNS查询数"
+msgstr "å…è®¸çš„æœ€å¤§å¹¶å‘ DNS 查询数"
msgid "Maximum allowed size of EDNS.0 UDP packets"
-msgstr "å…许的最大EDNS.0 UDP报文大å°"
+msgstr "å…许的最大 EDNS.0 UDP æ•°æ®åŒ…大å°"
msgid "Maximum amount of seconds to wait for the modem to become ready"
-msgstr "调制解调器就绪的最大等待时间(秒)"
+msgstr "调制解调器就绪的最大等待时间 (秒)"
msgid "Maximum hold time"
msgstr "最大æŒç»­æ—¶é—´"
@@ -1767,6 +1869,7 @@ msgid ""
"Maximum length of the name is 15 characters including the automatic protocol/"
"bridge prefix (br-, 6in4-, pppoe- etc.)"
msgstr ""
+"å称的最大长度为 15 个字符,包括自动åè®®/网桥å‰ç¼€ (br-, 6in4-, pppoe- 等等)"
msgid "Maximum number of leased addresses."
msgstr "最大地å€åˆ†é…æ•°é‡ã€‚"
@@ -1778,14 +1881,11 @@ msgid "Memory"
msgstr "内存"
msgid "Memory usage (%)"
-msgstr "内存使用率(%)"
+msgstr "内存使用率 (%)"
msgid "Metric"
msgstr "跃点数"
-msgid "Minimum Rate"
-msgstr "最低速率"
-
msgid "Minimum hold time"
msgstr "最低æŒç»­æ—¶é—´"
@@ -1796,7 +1896,10 @@ msgid "Mirror source port"
msgstr "æ•°æ®åŒ…é•œåƒæºç«¯å£"
msgid "Missing protocol extension for proto %q"
-msgstr "缺少åè®®%qçš„å议扩展"
+msgstr "缺少åè®® %q çš„å议扩展"
+
+msgid "Mobility Domain"
+msgstr "移动域"
msgid "Mode"
msgstr "模å¼"
@@ -1811,7 +1914,7 @@ msgid "Modem init timeout"
msgstr "调制解调器åˆå§‹åŒ–超时"
msgid "Monitor"
-msgstr "监å¬Monitor"
+msgstr "监å¬"
msgid "Mount Entry"
msgstr "挂载项目"
@@ -1823,15 +1926,15 @@ msgid "Mount Points"
msgstr "挂载点"
msgid "Mount Points - Mount Entry"
-msgstr "挂载点-存储区"
+msgstr "挂载点 - 存储区"
msgid "Mount Points - Swap Entry"
-msgstr "挂载点-交æ¢åŒº"
+msgstr "挂载点 - 交æ¢åŒº"
msgid ""
"Mount Points define at which point a memory device will be attached to the "
"filesystem"
-msgstr "é…置存储设备挂载到文件系统中的ä½ç½®å’Œå‚数。"
+msgstr "é…置存储设备挂载到文件系统中的ä½ç½®å’Œå‚æ•°"
msgid "Mount filesystems not specifically configured"
msgstr "自动挂载未专门é…置挂载点的分区"
@@ -1843,7 +1946,7 @@ msgid "Mount point"
msgstr "挂载点"
msgid "Mount swap not specifically configured"
-msgstr "自动挂载未专门é…置的Swap分区"
+msgstr "自动挂载未专门é…置的 Swap 分区"
msgid "Mounted file systems"
msgstr "已挂载的文件系统"
@@ -1854,9 +1957,6 @@ msgstr "下移"
msgid "Move up"
msgstr "上移"
-msgid "Multicast Rate"
-msgstr "多播速率"
-
msgid "Multicast address"
msgstr "多播地å€"
@@ -1864,22 +1964,25 @@ msgid "NAS ID"
msgstr "NAS ID"
msgid "NAT-T Mode"
-msgstr ""
+msgstr "NAT-T 模å¼"
msgid "NAT64 Prefix"
+msgstr "NAT64 å‰ç¼€"
+
+msgid "NCM"
msgstr ""
msgid "NDP-Proxy"
msgstr "NDP-代ç†"
msgid "NT Domain"
-msgstr ""
+msgstr "NT 域"
msgid "NTP server candidates"
-msgstr "候选NTPæœåŠ¡å™¨"
+msgstr "候选 NTP æœåŠ¡å™¨"
msgid "NTP sync time-out"
-msgstr "NTPåŒæ­¥è¶…æ—¶"
+msgstr "NTP åŒæ­¥è¶…æ—¶"
msgid "Name"
msgstr "å称"
@@ -1912,10 +2015,10 @@ msgid "Next »"
msgstr "下一步 »"
msgid "No DHCP Server configured for this interface"
-msgstr "本接å£æœªé…ç½®DHCPæœåŠ¡å™¨"
+msgstr "本接å£æœªé…ç½® DHCP æœåŠ¡å™¨"
msgid "No NAT-T"
-msgstr ""
+msgstr "æ—  NAT-T"
msgid "No chains in this table"
msgstr "本表中没有链"
@@ -1951,16 +2054,16 @@ msgid "Noise"
msgstr "噪声"
msgid "Noise Margin (SNR)"
-msgstr ""
+msgstr "å™ªå£°å®¹é™ (SNR)"
msgid "Noise:"
msgstr "噪声:"
msgid "Non Pre-emtive CRC errors (CRC_P)"
-msgstr ""
+msgstr "éžæŠ¢å  CRC 错误 (CRC_P)"
msgid "Non-wildcard"
-msgstr ""
+msgstr "éžå…¨éƒ¨åœ°å€"
msgid "None"
msgstr "æ— "
@@ -1978,10 +2081,10 @@ msgid "Not connected"
msgstr "未连接"
msgid "Note: Configuration files will be erased."
-msgstr "注æ„:é…置文件将被删除。"
+msgstr "注æ„: é…置文件将被删除。"
msgid "Note: interface name length"
-msgstr ""
+msgstr "注æ„: 接å£å称长度"
msgid "Notice"
msgstr "注æ„"
@@ -1990,16 +2093,16 @@ msgid "Nslookup"
msgstr "Nslookup"
msgid "OK"
-msgstr "OK"
+msgstr "确认"
msgid "OPKG-Configuration"
msgstr "OPKG-é…ç½®"
msgid "Obfuscated Group Password"
-msgstr ""
+msgstr "混淆组密ç "
msgid "Obfuscated Password"
-msgstr ""
+msgstr "混淆密ç "
msgid "Off-State Delay"
msgstr "关闭时间"
@@ -2011,7 +2114,10 @@ msgid ""
"<abbr title=\"Virtual Local Area Network\">VLAN</abbr> notation "
"<samp>INTERFACE.VLANNR</samp> (<abbr title=\"for example\">e.g.</abbr>: "
"<samp>eth0.1</samp>)."
-msgstr "é…置网络接å£ä¿¡æ¯ã€‚"
+msgstr ""
+"在此页é¢ï¼Œä½ å¯ä»¥é…置网络接å£ã€‚ä½ å¯ä»¥å‹¾é€‰â€œæ¡¥æŽ¥æŽ¥å£â€ï¼Œå¹¶è¾“入由空格分隔的多个网"
+"络接å£çš„å称æ¥æ¡¥æŽ¥å¤šä¸ªæŽ¥å£ã€‚还å¯ä»¥ä½¿ç”¨ <abbr title=\"虚拟局域网\">VLAN</"
+"abbr> ç¬¦å· <samp>INTERFACE.VLANNR</samp> (例如: <samp>eth0.1</samp>)。"
msgid "On-State Delay"
msgstr "通电时间"
@@ -2023,7 +2129,7 @@ msgid "One or more fields contain invalid values!"
msgstr "一个或多个选项值有误ï¼"
msgid "One or more invalid/required values on tab"
-msgstr ""
+msgstr "选项å¡ä¸Šå­˜åœ¨ä¸€ä¸ªæˆ–多个无效/必需值"
msgid "One or more required fields have no value!"
msgstr "一个或多个必选项值为空ï¼"
@@ -2032,7 +2138,7 @@ msgid "Open list..."
msgstr "打开列表..."
msgid "OpenConnect (CISCO AnyConnect)"
-msgstr ""
+msgstr "开放连接 (CISCO AnyConnect)"
msgid "Operating frequency"
msgstr "工作频率"
@@ -2043,11 +2149,52 @@ msgstr "修改的选项"
msgid "Option removed"
msgstr "移除的选项"
+msgid "Optional"
+msgstr "å¯é€‰"
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
-msgstr "å¯é€‰,设置这个选项会覆盖默认设定的æœåŠ¡å™¨(tic.sixxs.net)"
+msgstr "å¯é€‰ï¼Œè®¾ç½®è¿™ä¸ªé€‰é¡¹ä¼šè¦†ç›–默认设定的æœåŠ¡å™¨ (tic.sixxs.net)"
msgid "Optional, use when the SIXXS account has more than one tunnel"
-msgstr "å¯é€‰,如果你的SIXXSè´¦å·æ‹¥æœ‰ä¸€ä¸ªä»¥ä¸Šçš„隧é“请设置此项."
+msgstr "å¯é€‰ï¼Œå¦‚果你的 SIXXS è´¦å·æ‹¥æœ‰ä¸€ä¸ªä»¥ä¸Šçš„隧é“请设置此项."
+
+msgid "Optional."
+msgstr "å¯é€‰ã€‚"
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+"å¯é€‰ï¼Œä¼ å‡ºåŠ å¯†æ•°æ®åŒ…çš„ 32 ä½æ ‡è®°ã€‚请输入å六进制值,以 <code>0x</code> 开头。"
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr "å¯é€‰ï¼ŒBase64 ç¼–ç çš„预共享密钥。"
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr "å¯é€‰ï¼Œä¸ºæ­¤ Peer 创建å…许 IP 的路由。"
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr "å¯é€‰ï¼ŒPeer 的主机。"
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr "å¯é€‰ï¼Œéš§é“接å£çš„最大传输å•å…ƒã€‚"
+
+msgid "Optional. Port of peer."
+msgstr "å¯é€‰ï¼ŒPeer的端å£ã€‚"
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+"å¯é€‰ï¼ŒKeep-Alive 消æ¯ä¹‹é—´çš„秒数,默认为 0 (ç¦ç”¨)。如果此设备ä½äºŽ NAT 之åŽï¼Œå»º"
+"议使用的值为 25。"
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr "å¯é€‰ï¼Œç”¨äºŽä¼ å‡ºå’Œä¼ å…¥æ•°æ®åŒ…çš„ UDP 端å£ã€‚"
msgid "Options"
msgstr "选项"
@@ -2061,31 +2208,34 @@ msgstr "出å£"
msgid "Outbound:"
msgstr "出站:"
-msgid "Outdoor Channels"
-msgstr "户外频é“"
-
msgid "Output Interface"
msgstr "网络出å£"
msgid "Override MAC address"
-msgstr "克隆MAC地å€"
+msgstr "é‡è®¾ MAC 地å€"
msgid "Override MTU"
-msgstr "设置MTU"
+msgstr "é‡è®¾ MTU"
+
+msgid "Override TOS"
+msgstr "é‡è®¾ TOS"
+
+msgid "Override TTL"
+msgstr "é‡è®¾ TTL"
msgid "Override default interface name"
-msgstr ""
+msgstr "é‡è®¾é»˜è®¤æŽ¥å£å称"
msgid "Override the gateway in DHCP responses"
-msgstr "更新网关"
+msgstr "é‡è®¾ DHCP å“应网关"
msgid ""
"Override the netmask sent to clients. Normally it is calculated from the "
"subnet that is served."
-msgstr "æ›´æ–°å­ç½‘掩ç ã€‚"
+msgstr "é‡è®¾å‘é€åˆ°å®¢æˆ·ç«¯çš„å­ç½‘掩ç ã€‚"
msgid "Override the table used for internal routes"
-msgstr "更新内部路由表"
+msgstr "é‡è®¾å†…部路由表"
msgid "Overview"
msgstr "总览"
@@ -2094,10 +2244,10 @@ msgid "Owner"
msgstr "用户å"
msgid "PAP/CHAP password"
-msgstr "PAP/CHAP密ç "
+msgstr "PAP/CHAP 密ç "
msgid "PAP/CHAP username"
-msgstr "PAP/CHAP用户å"
+msgstr "PAP/CHAP 用户å"
msgid "PID"
msgstr "PID"
@@ -2105,11 +2255,14 @@ msgstr "PID"
msgid "PIN"
msgstr "PIN"
+msgid "PMK R1 Push"
+msgstr "PMK R1 Push"
+
msgid "PPP"
msgstr "PPP"
msgid "PPPoA Encapsulation"
-msgstr "PPPoAå°åŒ…"
+msgstr "PPPoA å°åŒ…"
msgid "PPPoATM"
msgstr "PPPoATM"
@@ -2118,25 +2271,25 @@ msgid "PPPoE"
msgstr "PPPoE"
msgid "PPPoSSH"
-msgstr ""
+msgstr "PPPoSSH"
msgid "PPtP"
msgstr "PPtP"
msgid "PSID offset"
-msgstr ""
+msgstr "PSID å移"
msgid "PSID-bits length"
-msgstr ""
+msgstr "PSID-bits 长度"
msgid "PTM/EFM (Packet Transfer Mode)"
-msgstr ""
+msgstr "PTM/EFM (分组传输模å¼)"
msgid "Package libiwinfo required!"
-msgstr "需è¦libiwinfo软件包ï¼"
+msgstr "éœ€è¦ libiwinfo 软件包ï¼"
msgid "Package lists are older than 24 hours"
-msgstr "软件包列表已超过24å°æ—¶æœªæ›´æ–°"
+msgstr "软件包列表已超过 24 å°æ—¶æœªæ›´æ–°"
msgid "Package name"
msgstr "软件包å称"
@@ -2157,13 +2310,13 @@ msgid "Password of Private Key"
msgstr "ç§æœ‰å¯†é’¥"
msgid "Password of inner Private Key"
-msgstr ""
+msgstr "内部ç§é’¥çš„密ç "
msgid "Password successfully changed!"
msgstr "密ç ä¿®æ”¹æˆåŠŸï¼"
msgid "Path to CA-Certificate"
-msgstr "CAè¯ä¹¦è·¯å¾„"
+msgstr "CA è¯ä¹¦è·¯å¾„"
msgid "Path to Client-Certificate"
msgstr "客户端è¯ä¹¦è·¯å¾„"
@@ -2175,28 +2328,34 @@ msgid "Path to executable which handles the button event"
msgstr "处ç†æŒ‰é”®åŠ¨ä½œçš„å¯æ‰§è¡Œæ–‡ä»¶è·¯å¾„"
msgid "Path to inner CA-Certificate"
-msgstr ""
+msgstr "内部CAè¯ä¹¦çš„路径"
msgid "Path to inner Client-Certificate"
-msgstr ""
+msgstr "内部客户端è¯ä¹¦çš„路径"
msgid "Path to inner Private Key"
-msgstr ""
+msgstr "内部ç§é’¥çš„路径"
msgid "Peak:"
msgstr "峰值:"
msgid "Peer IP address to assign"
-msgstr ""
+msgstr "è¦åˆ†é…çš„ Peer IP 地å€"
+
+msgid "Peers"
+msgstr "Peers"
msgid "Perfect Forward Secrecy"
-msgstr ""
+msgstr "完全正å‘ä¿å¯†"
msgid "Perform reboot"
msgstr "执行é‡å¯"
msgid "Perform reset"
-msgstr "执行å¤ä½"
+msgstr "执行é‡ç½®"
+
+msgid "Persistent Keep Alive"
+msgstr "æŒç»­ Keep-Alive"
msgid "Phy Rate:"
msgstr "物ç†é€ŸçŽ‡:"
@@ -2220,21 +2379,33 @@ msgid "Port"
msgstr "端å£"
msgid "Port status:"
-msgstr "端å£çŠ¶æ€ï¼š"
+msgstr "端å£çŠ¶æ€:"
msgid "Power Management Mode"
-msgstr ""
+msgstr "电æºç®¡ç†æ¨¡å¼"
msgid "Pre-emtive CRC errors (CRCP_P)"
-msgstr ""
+msgstr "抢å å¼ CRC 错误 (CRCP_P)"
+
+msgid "Prefer LTE"
+msgstr "首选 LTE"
+
+msgid "Prefer UMTS"
+msgstr "首选 UMTS"
+
+msgid "Prefix Delegated"
+msgstr "分å‘å‰ç¼€"
+
+msgid "Preshared Key"
+msgstr "预共享密钥"
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
-msgstr "在指定数é‡çš„LCPå“应故障åŽå‡å®šé“¾è·¯å·²æ–­å¼€ï¼Œ0为忽略故障"
+msgstr "在指定数é‡çš„ LCP å“应故障åŽå‡å®šé“¾è·¯å·²æ–­å¼€ï¼Œ0 为忽略故障"
msgid "Prevent listening on these interfaces."
-msgstr ""
+msgstr "ä¸ç›‘å¬è¿™äº›æŽ¥å£ã€‚"
msgid "Prevents client-to-client communication"
msgstr "ç¦æ­¢å®¢æˆ·ç«¯é—´é€šä¿¡"
@@ -2242,6 +2413,9 @@ msgstr "ç¦æ­¢å®¢æˆ·ç«¯é—´é€šä¿¡"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b 无线网å¡"
+msgid "Private Key"
+msgstr "ç§é’¥"
+
msgid "Proceed"
msgstr "执行"
@@ -2249,7 +2423,7 @@ msgid "Processes"
msgstr "系统进程"
msgid "Profile"
-msgstr ""
+msgstr "é…置文件"
msgid "Prot."
msgstr "åè®®"
@@ -2273,19 +2447,31 @@ msgid "Provide new network"
msgstr "添加新网络"
msgid "Pseudo Ad-Hoc (ahdemo)"
-msgstr "伪装Ad-Hoc(ahdemo)"
+msgstr "伪装 Ad-Hoc (ahdemo)"
+
+msgid "Public Key"
+msgstr "公钥"
msgid "Public prefix routed to this device for distribution to clients."
-msgstr ""
+msgstr "分é…到此设备的公共å‰ç¼€ï¼Œç”¨ä»¥åˆ†å‘到客户端。"
+
+msgid "QMI Cellular"
+msgstr "QMI 蜂çª"
msgid "Quality"
msgstr "è´¨é‡"
+msgid "R0 Key Lifetime"
+msgstr "R0 Key Lifetime"
+
+msgid "R1 Key Holder"
+msgstr "R1 Key Holder"
+
msgid "RFC3947 NAT-T mode"
-msgstr ""
+msgstr "RFC3947 NAT-T 模å¼"
msgid "RTS/CTS Threshold"
-msgstr "RTS/CTS阈值"
+msgstr "RTS/CTS 阈值"
msgid "RX"
msgstr "接收"
@@ -2294,7 +2480,7 @@ msgid "RX Rate"
msgstr "接收速率"
msgid "RaLink 802.11%s Wireless Controller"
-msgstr "MediaTek/RaLink 802.11%s 无线网å¡"
+msgstr "RaLink 802.11%s 无线网å¡"
msgid "Radius-Accounting-Port"
msgstr "Radius 计费端å£"
@@ -2318,40 +2504,38 @@ msgid ""
"Read <code>/etc/ethers</code> to configure the <abbr title=\"Dynamic Host "
"Configuration Protocol\">DHCP</abbr>-Server"
msgstr ""
-"æ ¹æ®<code>/etc/ethers</code>æ¥é…ç½®<abbr title=\"Dynamic Host Configuration "
-"Protocol\">DHCP</abbr>-æœåŠ¡å™¨"
+"æ ¹æ® <code>/etc/ethers</code> æ¥é…ç½® <abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</"
+"abbr>-æœåŠ¡å™¨"
msgid ""
"Really delete this interface? The deletion cannot be undone!\\nYou might "
"lose access to this device if you are connected via this interface."
msgstr ""
-"确定è¦åˆ é™¤æ­¤æŽ¥å£ï¼Ÿåˆ é™¤æ“作无法撤销ï¼\\\n"
-"删除此接å£ï¼Œå¯èƒ½å¯¼è‡´æ— æ³•å†è®¿é—®è·¯ç”±å™¨ï¼"
+"确定è¦åˆ é™¤æ­¤æŽ¥å£ï¼Ÿåˆ é™¤æ“作无法撤销ï¼\\n删除此接å£ï¼Œå¯èƒ½å¯¼è‡´æ— æ³•å†è®¿é—®è·¯ç”±å™¨ï¼"
msgid ""
"Really delete this wireless network? The deletion cannot be undone!\\nYou "
"might lose access to this device if you are connected via this network."
msgstr ""
-"确定è¦åˆ é™¤æ­¤æ— çº¿ç½‘络?删除æ“作无法撤销ï¼\\\n"
-"删除此无线网络,å¯èƒ½å¯¼è‡´æ— æ³•å†è®¿é—®è·¯ç”±å™¨ï¼"
+"确定è¦åˆ é™¤æ­¤æ— çº¿ç½‘络?删除æ“作无法撤销ï¼\\n删除此无线网络,å¯èƒ½å¯¼è‡´æ— æ³•å†è®¿é—®"
+"路由器ï¼"
msgid "Really reset all changes?"
msgstr "确定è¦æ”¾å¼ƒæ‰€æœ‰æ›´æ”¹ï¼Ÿ"
-#, fuzzy
msgid ""
"Really shut down network?\\nYou might lose access to this device if you are "
"connected via this interface."
msgstr ""
-"确定è¦å…³é—­æ­¤ç½‘络?\\\n"
-"关闭此网络,å¯èƒ½å¯¼è‡´æ— æ³•å†è®¿é—®è·¯ç”±å™¨ï¼"
+"确定è¦å…³é—­æ­¤ç½‘络?\\n如果你正在使用此接å£è¿žæŽ¥è·¯ç”±å™¨ï¼Œå…³é—­æ­¤ç½‘络å¯èƒ½å¯¼è‡´è¿žæŽ¥æ–­"
+"å¼€ï¼"
msgid ""
"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if "
"you are connected via this interface."
msgstr ""
-"确定è¦å…³é—­æŽ¥å£\"%s\" ?\\\n"
-"删除此网络,å¯èƒ½å¯¼è‡´æ— æ³•å†è®¿é—®è·¯ç”±å™¨ï¼"
+"确定è¦å…³é—­æŽ¥å£ \"%s\"?\\n如果你正在使用此接å£è¿žæŽ¥è·¯ç”±å™¨ï¼Œå…³é—­æ­¤ç½‘络å¯èƒ½å¯¼è‡´"
+"连接断开ï¼"
msgid "Really switch protocol?"
msgstr "确定è¦åˆ‡æ¢å议?"
@@ -2371,6 +2555,9 @@ msgstr "实时æµé‡"
msgid "Realtime Wireless"
msgstr "实时无线"
+msgid "Reassociation Deadline"
+msgstr "é‡å…³è”截止时间"
+
msgid "Rebind protection"
msgstr "é‡ç»‘定ä¿æŠ¤"
@@ -2389,6 +2576,9 @@ msgstr "接收"
msgid "Receiver Antenna"
msgstr "接收天线"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr "推è,Wire Guard 接å£çš„ IP 地å€ã€‚"
+
msgid "Reconnect this interface"
msgstr "é‡è¿žæ­¤æŽ¥å£"
@@ -2398,9 +2588,6 @@ msgstr "é‡è¿žæŽ¥å£ä¸­..."
msgid "References"
msgstr "引用"
-msgid "Regulatory Domain"
-msgstr "无线网络国家区域"
-
msgid "Relay"
msgstr "中继"
@@ -2414,7 +2601,10 @@ msgid "Relay bridge"
msgstr "中继桥"
msgid "Remote IPv4 address"
-msgstr "远程IPv4地å€"
+msgstr "远程 IPv4 地å€"
+
+msgid "Remote IPv4 address or FQDN"
+msgstr "远程 IPv4 地å€æˆ– FQDN"
msgid "Remove"
msgstr "移除"
@@ -2429,21 +2619,45 @@ msgid "Replace wireless configuration"
msgstr "é‡ç½®æ— çº¿é…ç½®"
msgid "Request IPv6-address"
-msgstr "请求IPv6地å€"
+msgstr "请求 IPv6 地å€"
msgid "Request IPv6-prefix of length"
-msgstr "请求指定长度的IPv6å‰ç¼€"
+msgstr "请求指定长度的 IPv6 å‰ç¼€"
msgid "Require TLS"
-msgstr "必须使用TLS"
+msgstr "必须使用 TLS"
+
+msgid "Required"
+msgstr "å¿…é¡»"
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
-msgstr "æŸäº›ISP需è¦ï¼Œä¾‹å¦‚:åŒè½´çº¿ç½‘络DOCSIS 3"
+msgstr "æŸäº› ISP 需è¦ï¼Œä¾‹å¦‚: åŒè½´çº¿ç½‘络 DOCSIS 3"
+
+msgid "Required. Base64-encoded private key for this interface."
+msgstr "必须,此接å£çš„ Base64 ç¼–ç ç§é’¥ã€‚"
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr "必须,Peer çš„ Base64 ç¼–ç å…¬é’¥ã€‚"
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+"必须,å…许该 Peer 在隧é“中使用的 IP 地å€å’Œå‰ç¼€ï¼Œé€šå¸¸æ˜¯è¯¥ Peer çš„éš§é“ IP 地å€"
+"和通过隧é“的路由网络。"
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+"éœ€è¦ wpad/hostapd 的完整版本和 WiFi 驱动程åºçš„支æŒ<br />(截至 2017 å¹´ 2 月: "
+"ath9k 和 ath10k,或者 LEDE 的 mwlwifi 和 mt76)"
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
-msgstr ""
+msgstr "需è¦ä¸Šçº§æ”¯æŒ DNSSEC,验è¯æœªç­¾å的域å“应确实是æ¥è‡ªæœªç­¾å的域。"
msgid "Reset"
msgstr "å¤ä½"
@@ -2455,7 +2669,7 @@ msgid "Reset to defaults"
msgstr "æ¢å¤åˆ°å‡ºåŽ‚设置"
msgid "Resolv and Hosts Files"
-msgstr "HOSTS和解æžæ–‡ä»¶"
+msgstr "HOSTS 和解æžæ–‡ä»¶"
msgid "Resolve file"
msgstr "解æžæ–‡ä»¶"
@@ -2479,16 +2693,22 @@ msgid "Root"
msgstr "Root"
msgid "Root directory for files served via TFTP"
-msgstr "TFTPæœåŠ¡å™¨çš„根目录"
+msgstr "TFTP æœåŠ¡å™¨çš„根目录"
msgid "Root preparation"
-msgstr ""
+msgstr "根目录准备"
+
+msgid "Route Allowed IPs"
+msgstr "路由å…许的 IP"
+
+msgid "Route type"
+msgstr "路由类型"
msgid "Routed IPv6 prefix for downstream interfaces"
-msgstr ""
+msgstr "下行接å£çš„路由 IPv6 å‰ç¼€"
msgid "Router Advertisement-Service"
-msgstr ""
+msgstr "路由器广告æœåŠ¡"
msgid "Router Password"
msgstr "主机密ç "
@@ -2508,30 +2728,30 @@ msgid "Run filesystem check"
msgstr "文件系统检查"
msgid "SHA256"
-msgstr ""
+msgstr "SHA256"
msgid ""
"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
"use 6in4 instead"
-msgstr ""
+msgstr "SIXXS ä»…æ”¯æŒ TIC,对于使用 IP åè®® 41 (RFC4213) çš„é™æ€éš§é“,使用 6in4"
msgid "SIXXS-handle[/Tunnel-ID]"
-msgstr ""
+msgstr "SIXXS-handle[/Tunnel-ID]"
msgid "SNR"
-msgstr ""
+msgstr "SNR"
msgid "SSH Access"
-msgstr "SSH访问"
+msgstr "SSH 访问"
msgid "SSH server address"
-msgstr "SSHæœåŠ¡å™¨åœ°å€"
+msgstr "SSH æœåŠ¡å™¨åœ°å€"
msgid "SSH server port"
-msgstr "SSHæœåŠ¡å™¨ç«¯å£"
+msgstr "SSH æœåŠ¡å™¨ç«¯å£"
msgid "SSH username"
-msgstr "SSH用户å"
+msgstr "SSH 用户å"
msgid "SSH-Keys"
msgstr "SSH-密钥"
@@ -2561,19 +2781,16 @@ msgid "Section removed"
msgstr "移除的区域"
msgid "See \"mount\" manpage for details"
-msgstr "详å‚\"mount\"è”机帮助"
+msgstr "è¯¦å‚ \"mount\" è”机帮助"
msgid ""
"Send LCP echo requests at the given interval in seconds, only effective in "
"conjunction with failure threshold"
-msgstr "定时å‘é€LCPå“应(秒),仅在结åˆäº†æ•…障阈值时有效"
+msgstr "定时å‘é€ LCP å“应 (秒),仅在结åˆäº†æ•…障阈值时有效"
msgid "Separate Clients"
msgstr "隔离客户端"
-msgid "Separate WDS"
-msgstr "隔离WDS"
-
msgid "Server Settings"
msgstr "æœåŠ¡å™¨è®¾ç½®"
@@ -2583,7 +2800,7 @@ msgstr "æœåŠ¡å™¨å¯†ç "
msgid ""
"Server password, enter the specific password of the tunnel when the username "
"contains the tunnel ID"
-msgstr "æœåŠ¡å™¨å¯†ç ,如果用户å包å«éš§é“ID则在此填写独立的密ç "
+msgstr "æœåŠ¡å™¨å¯†ç ,如果用户å包å«éš§é“ ID 则在此填写独立的密ç "
msgid "Server username"
msgstr "æœåŠ¡å™¨ç”¨æˆ·å"
@@ -2597,18 +2814,24 @@ msgstr "æœåŠ¡ç±»åž‹"
msgid "Services"
msgstr "æœåŠ¡"
-#, fuzzy
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+"无论链路载è·å¦‚何都设置接å£å±žæ€§ (如果设置,载è·ä¾¦å¬äº‹ä»¶ä¸è°ƒç”¨ Hotplug 处ç†ç¨‹"
+"åº)。"
+
msgid "Set up Time Synchronization"
msgstr "设置时间åŒæ­¥"
msgid "Setup DHCP Server"
-msgstr "é…ç½®DHCPæœåŠ¡å™¨"
+msgstr "é…ç½® DHCP æœåŠ¡å™¨"
msgid "Severely Errored Seconds (SES)"
-msgstr ""
+msgstr "严é‡è¯¯ç ç§’ (SES)"
msgid "Short GI"
-msgstr ""
+msgstr "Short GI"
msgid "Show current backup file list"
msgstr "显示当å‰æ–‡ä»¶å¤‡ä»½åˆ—表"
@@ -2623,7 +2846,7 @@ msgid "Signal"
msgstr "ä¿¡å·"
msgid "Signal Attenuation (SATN)"
-msgstr ""
+msgstr "ä¿¡å·è¡°å‡ (SATN)"
msgid "Signal:"
msgstr "ä¿¡å·:"
@@ -2632,7 +2855,7 @@ msgid "Size"
msgstr "大å°"
msgid "Size (.ipk)"
-msgstr ""
+msgstr "å¤§å° (.ipk)"
msgid "Skip"
msgstr "跳过"
@@ -2650,7 +2873,7 @@ msgid "Software"
msgstr "软件包"
msgid "Software VLAN"
-msgstr ""
+msgstr "软件 VLAN"
msgid "Some fields are invalid, cannot save values!"
msgstr "一些项目的值无效,无法ä¿å­˜ï¼"
@@ -2663,11 +2886,11 @@ msgstr "对ä¸èµ·ï¼ŒæœåŠ¡å™¨é‡åˆ°æœªçŸ¥é”™è¯¯ã€‚"
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
-"抱歉,您的设备暂ä¸æ”¯æŒsysupgradeå‡çº§ï¼Œéœ€æ‰‹åŠ¨æ›´æ–°å›ºä»¶ã€‚请å‚考OpenWrt Wiki中关"
-"于此设备的固件更新说明。"
+"抱歉,您的设备暂ä¸æ”¯æŒ Sysupgrade å‡çº§ï¼Œéœ€æ‰‹åŠ¨æ›´æ–°å›ºä»¶ã€‚请å‚考 Wiki 中关于此"
+"设备的固件更新说明。"
msgid "Sort"
msgstr "排åº"
@@ -2685,17 +2908,30 @@ msgid "Specifies the directory the device is attached to"
msgstr "指定设备的挂载目录"
msgid "Specifies the listening port of this <em>Dropbear</em> instance"
-msgstr "指定<em>Dropbear</em>的监å¬ç«¯å£"
+msgstr "指定 <em>Dropbear</em> 的监å¬ç«¯å£"
msgid ""
"Specifies the maximum amount of failed ARP requests until hosts are presumed "
"to be dead"
-msgstr "指定å‡è®¾ä¸»æœºå·²ä¸¢å¤±çš„最大失败ARP请求数"
+msgstr "指定å‡è®¾ä¸»æœºå·²ä¸¢å¤±çš„最大失败 ARP 请求数"
msgid ""
"Specifies the maximum amount of seconds after which hosts are presumed to be "
"dead"
-msgstr "指定å‡è®¾ä¸»æœºå·²ä¸¢å¤±çš„最大时间(秒)"
+msgstr "指定å‡è®¾ä¸»æœºå·²ä¸¢å¤±çš„最大时间 (秒)"
+
+msgid "Specify a TOS (Type of Service)."
+msgstr "指定 TOS (æœåŠ¡ç±»åž‹)。"
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr "为å°è£…æ•°æ®åŒ…设置 TTL (生存时间),缺çœå€¼: 64"
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr "设置 MTU (最大传输å•ä½),缺çœå€¼: 1280 bytes"
msgid "Specify the secret encryption key here."
msgstr "在此指定密钥。"
@@ -2711,10 +2947,10 @@ msgid "Startup"
msgstr "å¯åŠ¨é¡¹"
msgid "Static IPv4 Routes"
-msgstr "é™æ€IPv4路由"
+msgstr "é™æ€ IPv4 路由"
msgid "Static IPv6 Routes"
-msgstr "é™æ€IPv6路由"
+msgstr "é™æ€ IPv6 路由"
msgid "Static Leases"
msgstr "é™æ€åœ°å€åˆ†é…"
@@ -2722,9 +2958,6 @@ msgstr "é™æ€åœ°å€åˆ†é…"
msgid "Static Routes"
msgstr "é™æ€è·¯ç”±"
-msgid "Static WDS"
-msgstr "é™æ€WDS"
-
msgid "Static address"
msgstr "é™æ€åœ°å€"
@@ -2733,8 +2966,8 @@ msgid ""
"to DHCP clients. They are also required for non-dynamic interface "
"configurations where only hosts with a corresponding lease are served."
msgstr ""
-"é™æ€ç§Ÿçº¦ç”¨äºŽç»™DHCP客户端分é…固定的IP地å€å’Œä¸»æœºæ ‡è¯†ã€‚åªæœ‰æŒ‡å®šçš„主机æ‰èƒ½è¿žæŽ¥ï¼Œ"
-"并且接å£é¡»ä¸ºéžåŠ¨æ€é…置。"
+"é™æ€ç§Ÿçº¦ç”¨äºŽç»™ DHCP 客户端分é…固定的 IP 地å€å’Œä¸»æœºæ ‡è¯†ã€‚åªæœ‰æŒ‡å®šçš„主机æ‰èƒ½è¿ž"
+"接,并且接å£é¡»ä¸ºéžåŠ¨æ€é…置。"
msgid "Status"
msgstr "状æ€"
@@ -2749,10 +2982,10 @@ msgid "Submit"
msgstr "æ交"
msgid "Suppress logging"
-msgstr ""
+msgstr "ä¸è®°å½•æ—¥å¿—"
msgid "Suppress logging of the routine operation of these protocols"
-msgstr ""
+msgstr "ä¸è®°å½•è¿™äº›å议的常规æ“作日志。"
msgid "Swap"
msgstr "交æ¢åŒº"
@@ -2767,17 +3000,17 @@ msgid "Switch %q"
msgstr "交æ¢æœº %q"
msgid "Switch %q (%s)"
-msgstr "交æ¢æœº%q (%s)"
+msgstr "交æ¢æœº %q (%s)"
msgid ""
"Switch %q has an unknown topology - the VLAN settings might not be accurate."
-msgstr ""
+msgstr "交æ¢æœº %q 具有未知的拓扑结构 - VLAN 设置å¯èƒ½ä¸æ­£ç¡®ã€‚"
msgid "Switch VLAN"
-msgstr ""
+msgstr "交æ¢æœº VLAN"
msgid "Switch protocol"
-msgstr "切æ¢åè®®"
+msgstr "交æ¢æœºåè®®"
msgid "Sync with browser"
msgstr "åŒæ­¥æµè§ˆå™¨æ—¶é—´"
@@ -2819,12 +3052,11 @@ msgid "Target"
msgstr "对象"
msgid "Target network"
-msgstr ""
+msgstr "目标网络"
msgid "Terminate"
msgstr "关闭"
-#, fuzzy
msgid ""
"The <em>Device Configuration</em> section covers physical settings of the "
"radio hardware such as channel, transmit power or antenna selection which "
@@ -2832,54 +3064,58 @@ msgid ""
"multi-SSID capable). Per network settings like encryption or operation mode "
"are grouped in the <em>Interface Configuration</em>."
msgstr ""
-"<em>设备é…ç½®</em>区域å¯é…置无线的硬件å‚数,比如信é“ã€å‘射功率或å‘射天线(如果"
-"此无线模å—硬件支æŒå¤šSSID,则全部SSID共用此设备é…ç½®)。<em>接å£é…ç½®</em>区域则"
+"<em>设备é…ç½®</em>区域å¯é…置无线的硬件å‚数,比如信é“ã€å‘射功率或å‘射天线 (如果"
+"此无线模å—硬件支æŒå¤š SSID,则全部SSID共用此设备é…ç½®)。<em>接å£é…ç½®</em>区域则"
"å¯é…置此网络的工作模å¼å’ŒåŠ å¯†ç­‰ã€‚"
msgid ""
"The <em>libiwinfo-lua</em> package is not installed. You must install this "
"component for working wireless configuration!"
-msgstr "软件包<em>libiwinfo-lua</em>未安装。必需安装此组件以é…置无线ï¼"
+msgstr "软件包 <em>libiwinfo-lua</em> 未安装。必需安装此组件以é…置无线ï¼"
msgid ""
"The HE.net endpoint update configuration changed, you must now use the plain "
"username instead of the user ID!"
-msgstr "HE.net客户端更新设置已ç»è¢«æ”¹å˜,您现在必须使用用户å代替用户ID/"
+msgstr "HE.net 客户端更新设置已ç»è¢«æ”¹å˜ï¼Œæ‚¨çŽ°åœ¨å¿…须使用用户å代替用户 IDï¼"
+
+msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr "远程隧é“端的 IPv4 地å€æˆ–完整域å。"
msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
-msgstr "è¿è¥å•†ç‰¹å®šçš„IPv6å‰ç¼€ï¼Œé€šå¸¸ä»¥<code>::</code>为结尾"
+msgstr "è¿è¥å•†ç‰¹å®šçš„ IPv6 å‰ç¼€ï¼Œé€šå¸¸ä»¥ <code>::</code> 为结尾"
msgid ""
"The allowed characters are: <code>A-Z</code>, <code>a-z</code>, <code>0-9</"
"code> and <code>_</code>"
msgstr ""
-"åˆæ³•å­—符:<code>A-Z</code>, <code>a-z</code>, <code>0-9</code> å’Œ <code>_</"
+"åˆæ³•å­—符: <code>A-Z</code>, <code>a-z</code>, <code>0-9</code> å’Œ <code>_</"
"code>"
msgid "The configuration file could not be loaded due to the following error:"
-msgstr "由于以下错误,é…置文件无法被加载:"
+msgstr "由于以下错误,é…置文件无法被加载:"
msgid ""
"The device file of the memory or partition (<abbr title=\"for example\">e.g."
"</abbr> <code>/dev/sda1</code>)"
-msgstr ""
-"存储器或分区的设备节点,(<abbr title=\"for example\">例如</abbr> <code>/dev/"
-"sda1</code>)"
+msgstr "存储器或分区的设备节点,(例如: <code>/dev/sda1</code>)"
msgid ""
"The filesystem that was used to format the memory (<abbr title=\"for example"
"\">e.g.</abbr> <samp><abbr title=\"Third Extended Filesystem\">ext3</abbr></"
"samp>)"
msgstr ""
-"用于格å¼åŒ–存储器的文件系统,(<abbr title=\"for example\">例如</abbr> "
-"<samp><abbr title=\"Third Extended Filesystem\">ext4</abbr></samp>)"
+"用于格å¼åŒ–存储器的文件系统,(例如: <samp><abbr title=\"第三代扩展文件系统"
+"\">ext3</abbr></samp>)"
msgid ""
"The flash image was uploaded. Below is the checksum and file size listed, "
"compare them with the original file to ensure data integrity.<br /> Click "
"\"Proceed\" below to start the flash procedure."
-msgstr "固件已上传,请注æ„核对文件大å°å’Œæ ¡éªŒå€¼ï¼<br />刷新过程切勿断电ï¼"
+msgstr ""
+"固件已上传,请注æ„核对文件大å°å’Œæ ¡éªŒå€¼ï¼<br />点击下é¢çš„“继续â€å¼€å§‹åˆ·å†™ï¼Œåˆ·æ–°"
+"过程中切勿断电ï¼"
msgid "The following changes have been committed"
msgstr "以下更改已æ交"
@@ -2893,19 +3129,21 @@ msgstr "系统中的活跃连接。"
msgid "The given network name is not unique"
msgstr "给定的网络åé‡å¤"
-#, fuzzy
msgid ""
"The hardware is not multi-SSID capable and the existing configuration will "
"be replaced if you proceed."
-msgstr "本机的硬件ä¸æ”¯æŒå¤šSSID,继续进行将会覆盖现有é…置。"
+msgstr "本机的硬件ä¸æ”¯æŒå¤š SSID,如果继续,现有é…置将被替æ¢ã€‚"
msgid ""
"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 "
"addresses."
-msgstr "bitæ ¼å¼çš„IPv4å‰ç¼€é•¿åº¦, 其余的用在IPv6地å€."
+msgstr "IPv4 å‰ç¼€é•¿åº¦ (bit),其余的用在 IPv6 地å€ã€‚"
msgid "The length of the IPv6 prefix in bits"
-msgstr "bitæ ¼å¼çš„IPv6å‰ç¼€é•¿åº¦"
+msgstr "IPv6 å‰ç¼€é•¿åº¦ (bit)"
+
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr "所创建隧é“的本地 IPv4 åœ°å€ (å¯é€‰)。"
msgid ""
"The network ports on this device can be combined to several <abbr title="
@@ -2915,16 +3153,15 @@ msgid ""
"segments. Often there is by default one Uplink port for a connection to the "
"next greater network like the internet and other ports for a local network."
msgstr ""
-"本设备å¯ä»¥åˆ’分为多个<abbr title=\"Virtual Local Area Network\">VLAN</abbr>,"
-"并支æŒç”µè„‘间的直接通讯。<abbr title=\"Virtual Local Area Network\">VLAN</"
-"abbr>也常用于分割ä¸åŒç½‘段。默认通常是一æ¡ä¸Šè¡Œç«¯å£è¿žæŽ¥ISP,其余端å£ä¸ºæœ¬åœ°å­"
-"网。"
+"本设备å¯ä»¥åˆ’分为多个 <abbr title=\"虚拟局域网\">VLAN</abbr>,并支æŒç”µè„‘é—´çš„ç›´"
+"接通讯。<abbr title=\"虚拟局域网\">VLAN</abbr> 也常用于分割ä¸åŒç½‘段。默认通常"
+"是一æ¡ä¸Šè¡Œç«¯å£è¿žæŽ¥ ISP,其余端å£ä¸ºæœ¬åœ°å­ç½‘。"
msgid "The selected protocol needs a device assigned"
msgstr "所选的å议需è¦åˆ†é…设备"
msgid "The submitted security token is invalid or already expired!"
-msgstr ""
+msgstr "æ交的安全令牌无效或已过期ï¼"
msgid ""
"The system is erasing the configuration partition now and will reboot itself "
@@ -2938,12 +3175,12 @@ msgid ""
"settings."
msgstr ""
"正在刷新系统...<br />切勿关闭电æº! DO NOT POWER OFF THE DEVICE!<br />等待数分"
-"é’ŸåŽå³å¯å°è¯•é‡æ–°è¿žæŽ¥åˆ°è·¯ç”±ã€‚您å¯èƒ½éœ€è¦æ›´æ”¹è®¡ç®—机的IP地å€ä»¥é‡æ–°è¿žæŽ¥ã€‚"
+"é’ŸåŽå³å¯å°è¯•é‡æ–°è¿žæŽ¥åˆ°è·¯ç”±ã€‚您å¯èƒ½éœ€è¦æ›´æ”¹è®¡ç®—机的 IP 地å€ä»¥é‡æ–°è¿žæŽ¥ã€‚"
msgid ""
"The tunnel end-point is behind NAT, defaults to disabled and only applies to "
"AYIYA"
-msgstr ""
+msgstr "隧é“端点在 NAT 之åŽï¼Œé»˜è®¤ä¸ºç¦ç”¨ï¼Œä»…适用于 AYIYA"
msgid ""
"The uploaded image file does not contain a supported format. Make sure that "
@@ -2965,65 +3202,65 @@ msgstr "没有待生效的更改ï¼"
msgid ""
"There is no device assigned yet, please attach a network device in the "
"\"Physical Settings\" tab"
-msgstr "尚未分é…设备,请在\"物ç†è®¾ç½®\"选项å¡ä¸­é€‰æ‹©ç½‘络设备"
+msgstr "尚未分é…设备,请在“物ç†è®¾ç½®â€é€‰é¡¹å¡ä¸­é€‰æ‹©ç½‘络设备"
msgid ""
"There is no password set on this router. Please configure a root password to "
"protect the web interface and enable SSH."
-msgstr "尚未设置密ç ã€‚请为root用户设置密ç ä»¥ä¿æŠ¤ä¸»æœºå¹¶å¼€å¯SSH。"
+msgstr "尚未设置密ç ã€‚请为 Root 用户设置密ç ä»¥ä¿æŠ¤ä¸»æœºå¹¶å¼€å¯ SSH。"
msgid "This IPv4 address of the relay"
-msgstr "中继的IPv4地å€"
+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 ""
+"此文件包å«ç±»ä¼¼äºŽ 'server=/domain/1.2.3.4' 或 'server=1.2.3.4' 的行,用于解æž"
+"特定域å或指定上游 <abbr title=\"域åæœåŠ¡ç³»ç»Ÿ\">DNS</abbr> æœåŠ¡å™¨ã€‚"
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."
msgstr ""
-"系统å‡çº§æ—¶è¦ä¿å­˜çš„é…置文件和目录的清å•ã€‚目录/etc/config/内修改过的文件以åŠéƒ¨"
-"分其他é…置会被自动ä¿å­˜ã€‚"
+"系统å‡çº§æ—¶è¦ä¿å­˜çš„é…置文件和目录的清å•ã€‚目录 /etc/config/ 内修改过的文件以åŠ"
+"部分其他é…置会被自动ä¿å­˜ã€‚"
msgid ""
"This is either the \"Update Key\" configured for the tunnel or the account "
"password if no update key has been configured"
-msgstr "如果更新密钥没有设置的è¯,隧é“çš„\"更新密钥\"或者账户密ç å¿…须填写."
+msgstr "如果更新密钥没有设置的è¯,隧é“的“更新密钥â€æˆ–者账户密ç å¿…须填写。"
msgid ""
"This is the content of /etc/rc.local. Insert your own commands here (in "
"front of 'exit 0') to execute them at the end of the boot process."
-msgstr "å¯åŠ¨è„šæœ¬æ’入到'exit 0'之å‰å³å¯éšç³»ç»Ÿå¯åŠ¨è¿è¡Œã€‚"
+msgstr "å¯åŠ¨è„šæœ¬æ’入到 'exit 0' 之å‰å³å¯éšç³»ç»Ÿå¯åŠ¨è¿è¡Œã€‚"
msgid ""
"This is the local endpoint address assigned by the tunnel broker, it usually "
"ends with <code>:2</code>"
-msgstr "隧é“代ç†åˆ†é…的本地终端地å€ï¼Œé€šå¸¸ä»¥<code>:2</code>结尾"
+msgstr "隧é“代ç†åˆ†é…的本地终端地å€ï¼Œé€šå¸¸ä»¥ <code>:2</code> 结尾"
msgid ""
"This is the only <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
"abbr> in the local network"
-msgstr ""
-"这是内网中唯一的<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
-"abbr>æœåŠ¡å™¨"
+msgstr "这是内网中唯一的 <abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</abbr> æœåŠ¡å™¨"
msgid "This is the plain username for logging into the account"
msgstr "登录账户时填写的用户å"
msgid ""
"This is the prefix routed to you by the tunnel broker for use by clients"
-msgstr ""
+msgstr "这是隧é“代ç†åˆ†é…给你的路由å‰ç¼€ï¼Œä¾›å®¢æˆ·ç«¯ä½¿ç”¨"
msgid "This is the system crontab in which scheduled tasks can be defined."
-msgstr "自定义系统crontab中的计划任务。"
+msgstr "自定义系统 Crontab 中的计划任务。"
msgid ""
"This is usually the address of the nearest PoP operated by the tunnel broker"
-msgstr "这通常是隧é“代ç†æ‰€ç®¡ç†çš„最近的PoP的地å€"
+msgstr "这通常是隧é“代ç†æ‰€ç®¡ç†çš„最近的 PoP 的地å€"
msgid ""
"This list gives an overview over currently running system processes and "
@@ -3054,13 +3291,13 @@ msgid ""
msgstr "上传备份存档以æ¢å¤é…置。"
msgid "Tone"
-msgstr ""
+msgstr "Tone"
msgid "Total Available"
msgstr "å¯ç”¨æ•°"
msgid "Traceroute"
-msgstr "Traceroute"
+msgstr "路由追踪"
msgid "Traffic"
msgstr "æµé‡"
@@ -3087,7 +3324,7 @@ msgid "Trigger Mode"
msgstr "触å‘模å¼"
msgid "Tunnel ID"
-msgstr "隧é“ID"
+msgstr "éš§é“ ID"
msgid "Tunnel Interface"
msgstr "隧é“接å£"
@@ -3104,9 +3341,6 @@ msgstr "隧é“é…ç½®æœåŠ¡å™¨"
msgid "Tunnel type"
msgstr "隧é“类型"
-msgid "Turbo Mode"
-msgstr "Turbo模å¼"
-
msgid "Tx-Power"
msgstr "传输功率"
@@ -3117,13 +3351,16 @@ msgid "UDP:"
msgstr "UDP:"
msgid "UMTS only"
-msgstr "ä»…UMTS(WCDMA)"
+msgstr "ä»… UMTS (WCDMA)"
msgid "UMTS/GPRS/EV-DO"
msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
-msgstr "USB设备"
+msgstr "USB 设备"
+
+msgid "USB Ports"
+msgstr "USB 接å£"
msgid "UUID"
msgstr "UUID"
@@ -3132,7 +3369,7 @@ msgid "Unable to dispatch"
msgstr "无法调度"
msgid "Unavailable Seconds (UAS)"
-msgstr ""
+msgstr "ä¸å¯ç”¨ç§’æ•° (UAS)"
msgid "Unknown"
msgstr "未知"
@@ -3157,9 +3394,9 @@ msgstr "刷新列表"
msgid ""
"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)."
-msgstr "上传兼容的sysupgrade固件以刷新当å‰ç³»ç»Ÿã€‚"
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
+msgstr "上传兼容的 Sysupgrade 固件以刷新当å‰ç³»ç»Ÿã€‚"
msgid "Upload archive..."
msgstr "上传备份..."
@@ -3171,37 +3408,37 @@ msgid "Uptime"
msgstr "è¿è¡Œæ—¶é—´"
msgid "Use <code>/etc/ethers</code>"
-msgstr "使用<code>/etc/ethers</code>é…ç½®"
+msgstr "使用 <code>/etc/ethers</code> é…ç½®"
msgid "Use DHCP gateway"
-msgstr "使用DHCP网关"
+msgstr "使用 DHCP 网关"
msgid "Use DNS servers advertised by peer"
msgstr "使用端局通告的DNSæœåŠ¡å™¨"
msgid "Use ISO/IEC 3166 alpha2 country codes."
-msgstr "å‚考ISO/IEC 3166 alpha2国家代ç ã€‚"
+msgstr "å‚考 ISO/IEC 3166 alpha2 国家代ç ã€‚"
msgid "Use MTU on tunnel interface"
-msgstr "隧é“接å£çš„MTU"
+msgstr "隧é“接å£çš„ MTU"
msgid "Use TTL on tunnel interface"
-msgstr "隧é“接å£çš„TTL"
+msgstr "隧é“接å£çš„ TTL"
msgid "Use as external overlay (/overlay)"
-msgstr "作为外部overlay使用(/overlay)"
+msgstr "作为外部 Overlay 使用 (/overlay)"
msgid "Use as root filesystem (/)"
-msgstr "作为跟文件系统使用(/)"
+msgstr "作为根文件系统使用 (/)"
msgid "Use broadcast flag"
msgstr "使用广播标签"
msgid "Use builtin IPv6-management"
-msgstr ""
+msgstr "使用内置的 IPv6 管ç†"
msgid "Use custom DNS servers"
-msgstr "使用自定义的DNSæœåŠ¡å™¨"
+msgstr "使用自定义的 DNS æœåŠ¡å™¨"
msgid "Use default gateway"
msgstr "使用默认网关"
@@ -3228,11 +3465,18 @@ msgstr "已用"
msgid "Used Key Slot"
msgstr "å¯ç”¨å¯†ç ç»„"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+"用于两ç§ä¸åŒçš„用途: RADIUS NAS ID å’Œ 802.11r R0KH-ID。普通 WPA(2)-PSK ä¸éœ€"
+"è¦ã€‚"
+
msgid "User certificate (PEM encoded)"
-msgstr "客户è¯ä¹¦(PEM加密的)"
+msgstr "客户è¯ä¹¦ (PEM加密的)"
msgid "User key (PEM encoded)"
-msgstr "客户Key(PEM加密的)"
+msgstr "客户 Key (PEM加密的)"
msgid "Username"
msgstr "用户å"
@@ -3241,43 +3485,43 @@ msgid "VC-Mux"
msgstr "VC-Mux"
msgid "VDSL"
-msgstr ""
+msgstr "VDSL"
msgid "VLANs on %q"
-msgstr "%q上的VLAN"
+msgstr "%q 上的 VLAN"
msgid "VLANs on %q (%s)"
-msgstr "%q (%s)上的VLAN"
+msgstr "%q (%s) 上的 VLAN"
msgid "VPN Local address"
-msgstr ""
+msgstr "VPN 本地地å€"
msgid "VPN Local port"
-msgstr ""
+msgstr "VPN 本地端å£"
msgid "VPN Server"
-msgstr "VPNæœåŠ¡å™¨"
+msgstr "VPN æœåŠ¡å™¨"
msgid "VPN Server port"
-msgstr "VPNæœåŠ¡å™¨ç«¯å£"
+msgstr "VPN æœåŠ¡å™¨ç«¯å£"
msgid "VPN Server's certificate SHA1 hash"
-msgstr "VPNæœåŠ¡å™¨è¯ä¹¦çš„SHA1哈希值"
+msgstr "VPN æœåŠ¡å™¨è¯ä¹¦çš„ SHA1 哈希值"
msgid "VPNC (CISCO 3000 (and others) VPN)"
-msgstr ""
+msgstr "VPNC (CISCO 3000 和其他 VPN)"
msgid "Vendor"
-msgstr ""
+msgstr "Vendor"
msgid "Vendor Class to send when requesting DHCP"
-msgstr "请求DHCPæ—¶å‘é€çš„Vendor Class"
+msgstr "请求 DHCP æ—¶å‘é€çš„ Vendor Class"
msgid "Verbose"
-msgstr ""
+msgstr "详细"
msgid "Verbose logging by aiccu daemon"
-msgstr ""
+msgstr "Aiccu 守护程åºè¯¦ç»†æ—¥å¿—"
msgid "Verify"
msgstr "验è¯"
@@ -3289,30 +3533,30 @@ msgid "WDS"
msgstr "WDS"
msgid "WEP Open System"
-msgstr "WEP开放认è¯"
+msgstr "WEP 开放认è¯"
msgid "WEP Shared Key"
-msgstr "WEP共享密钥"
+msgstr "WEP 共享密钥"
msgid "WEP passphrase"
-msgstr "WEP密钥"
+msgstr "WEP 密钥"
msgid "WMM Mode"
-msgstr "WMM多媒体加速"
+msgstr "WMM 多媒体加速"
msgid "WPA passphrase"
-msgstr "WPA密钥"
+msgstr "WPA 密钥"
msgid ""
"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP "
"and ad-hoc mode) to be installed."
msgstr ""
-"WPA加密需è¦å®‰è£…wpa_supplicant(客户端模å¼)或安装hostapd(接入点APã€ç‚¹å¯¹ç‚¹ad-hoc"
-"模å¼)。"
+"WPA 加密需è¦å®‰è£… wpa_supplicant (客户端模å¼) 或安装 hostapd (接入点 APã€ç‚¹å¯¹"
+"点 Ad-Hoc 模å¼)。"
msgid ""
"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)"
-msgstr "在NTPåŒæ­¥ä¹‹å‰ç­‰å¾…时间.设置为0表示åŒæ­¥ä¹‹å‰ä¸ç­‰å¾…(å¯é€‰)"
+msgstr "在 NTP åŒæ­¥ä¹‹å‰ç­‰å¾…时间,设置为 0 表示åŒæ­¥ä¹‹å‰ä¸ç­‰å¾… (å¯é€‰)"
msgid "Waiting for changes to be applied..."
msgstr "正在应用更改..."
@@ -3327,17 +3571,20 @@ msgid "Warning"
msgstr "警告"
msgid "Warning: There are unsaved changes that will get lost on reboot!"
-msgstr "警告:有一些未ä¿å­˜çš„é…置将在é‡å¯åŽä¸¢å¤±ï¼"
+msgstr "警告: 有一些未ä¿å­˜çš„é…置将在é‡å¯åŽä¸¢å¤±ï¼"
msgid "Whether to create an IPv6 default route over the tunnel"
-msgstr ""
+msgstr "是å¦é€šè¿‡éš§é“创建 IPv6 缺çœè·¯ç”±"
msgid "Whether to route only packets from delegated prefixes"
-msgstr ""
+msgstr "是å¦ä»…路由æ¥è‡ªåˆ†å‘å‰ç¼€çš„æ•°æ®åŒ…"
msgid "Width"
msgstr "频宽"
+msgid "WireGuard VPN"
+msgstr "WireGuard VPN"
+
msgid "Wireless"
msgstr "无线"
@@ -3372,33 +3619,30 @@ msgid "Wireless shut down"
msgstr "无线已关闭"
msgid "Write received DNS requests to syslog"
-msgstr "将收到的DNS请求写入系统日志"
+msgstr "将收到的 DNS 请求写入系统日志"
msgid "Write system log to file"
-msgstr ""
-
-msgid "XR Support"
-msgstr "XR支æŒ"
+msgstr "将系统日志写入文件"
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
"scripts like \"network\", your device might become inaccessible!</strong>"
msgstr ""
-"å¯ç”¨æˆ–ç¦ç”¨å·²å®‰è£…çš„å¯åŠ¨è„šæœ¬ã€‚更改在设备é‡å¯åŽç”Ÿæ•ˆã€‚<br /><strong>警告:如果ç¦"
-"用了必è¦çš„å¯åŠ¨è„šæœ¬ï¼Œæ¯”如\"network\",å¯èƒ½ä¼šå¯¼è‡´è®¾å¤‡æ— æ³•è®¿é—®ï¼</strong>"
+"å¯ç”¨æˆ–ç¦ç”¨å·²å®‰è£…çš„å¯åŠ¨è„šæœ¬ã€‚更改在设备é‡å¯åŽç”Ÿæ•ˆã€‚<br /><strong>警告: 如果ç¦"
+"用了必è¦çš„å¯åŠ¨è„šæœ¬ï¼Œæ¯”如 \"network\",å¯èƒ½ä¼šå¯¼è‡´è®¾å¤‡æ— æ³•è®¿é—®ï¼</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
-msgstr "LUCI的正常è¿è¡Œéœ€è¦å¼€å¯æµè§ˆå™¨çš„Java Script支æŒã€‚"
+"You must enable JavaScript in your browser or LuCI will not work properly."
+msgstr "LUCI 的正常è¿è¡Œéœ€è¦å¼€å¯æµè§ˆå™¨çš„ JavaScript 支æŒã€‚"
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
"upgrade it to at least version 7 or use another browser like Firefox, Opera "
"or Safari."
msgstr ""
-"ä½ çš„Internet Explorerå·²ç»è€åˆ°æ— æ³•æ­£å¸¸æ˜¾ç¤ºè¿™ä¸ªé¡µé¢äº†!请至少更新到IE7或者使用诸"
-"如Firefox Opera Safari之类的æµè§ˆå™¨."
+"ä½ çš„ Internet Explorer å·²ç»è€åˆ°æ— æ³•æ­£å¸¸æ˜¾ç¤ºè¿™ä¸ªé¡µé¢äº†ï¼è¯·æ›´æ–°åˆ° IE7 åŠä»¥ä¸Šæˆ–"
+"者使用诸如 Firefox Opera Safari 之类的æµè§ˆå™¨ã€‚"
msgid "any"
msgstr "ä»»æ„"
@@ -3439,8 +3683,7 @@ msgstr "过期时间"
msgid ""
"file where given <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</"
"abbr>-leases will be stored"
-msgstr ""
-"存放<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>租约的文件"
+msgstr "存放 <abbr title=\"动æ€ä¸»æœºé…ç½®åè®®\">DHCP</abbr> 租约的文件"
msgid "forward"
msgstr "转å‘"
@@ -3476,16 +3719,19 @@ msgid "kbit/s"
msgstr "kbit/s"
msgid "local <abbr title=\"Domain Name System\">DNS</abbr> file"
-msgstr "本地<abbr title=\"Domain Name System\">DNS</abbr>解æžæ–‡ä»¶"
+msgstr "本地 <abbr title=\"域åæœåŠ¡ç³»ç»Ÿ\">DNS</abbr> 解æžæ–‡ä»¶"
msgid "minimum 1280, maximum 1480"
-msgstr "最å°å€¼1280,最大值1480"
+msgstr "最å°å€¼ 1280,最大值 1480"
+
+msgid "minutes"
+msgstr "分钟"
msgid "navigation Navigation"
-msgstr ""
+msgstr "导航"
msgid "no"
-msgstr "no"
+msgstr "å¦"
msgid "no link"
msgstr "未连接"
@@ -3494,7 +3740,7 @@ msgid "none"
msgstr "æ— "
msgid "not present"
-msgstr ""
+msgstr "ä¸å­˜åœ¨"
msgid "off"
msgstr "å…³"
@@ -3506,7 +3752,7 @@ msgid "open"
msgstr "开放å¼"
msgid "overlay"
-msgstr ""
+msgstr "覆盖"
msgid "relay mode"
msgstr "中继模å¼"
@@ -3518,23 +3764,26 @@ msgid "server mode"
msgstr "æœåŠ¡å™¨æ¨¡å¼"
msgid "skiplink1 Skip to navigation"
-msgstr ""
+msgstr "skiplink1 跳转到导航"
msgid "skiplink2 Skip to content"
-msgstr ""
+msgstr "skiplink2 跳到内容"
msgid "stateful-only"
-msgstr ""
+msgstr "有状æ€çš„"
msgid "stateless"
-msgstr ""
+msgstr "无状æ€çš„"
msgid "stateless + stateful"
-msgstr ""
+msgstr "有状æ€å’Œæ— çŠ¶æ€çš„"
msgid "tagged"
msgstr "å…³è”"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr "时间å•ä½ (TUs / 1.024ms) [1000-65535]"
+
msgid "unknown"
msgstr "未知"
@@ -3545,7 +3794,7 @@ msgid "unspecified"
msgstr "未指定"
msgid "unspecified -or- create:"
-msgstr "未指定 // 创建:"
+msgstr "未指定或创建:"
msgid "untagged"
msgstr "ä¸å…³è”"
@@ -3556,11 +3805,65 @@ msgstr "是"
msgid "« Back"
msgstr "« åŽé€€"
+#~ msgid "AR Support"
+#~ msgstr "AR支æŒ"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Qualcomm/Atheros 802.11%s 无线网å¡"
+
+#~ msgid "Background Scan"
+#~ msgstr "åŽå°æœç´¢"
+
+#~ msgid "Compression"
+#~ msgstr "压缩"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "åœç”¨HW-Beacon计时器"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "ä¸å›žé€æŽ¢æµ‹å“应"
+
+#~ msgid "Fast Frames"
+#~ msgstr "快速帧"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "最高速率"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "最低速率"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "多播速率"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "户外频é“"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "无线网络国家区域"
+
+#~ msgid "Separate WDS"
+#~ msgstr "隔离WDS"
+
+#~ msgid "Static WDS"
+#~ msgstr "é™æ€WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "Turbo模å¼"
+
+#~ msgid "XR Support"
+#~ msgstr "XR支æŒ"
+
+#~ msgid "Required. Public key of peer."
+#~ msgstr "必须,Peer的公钥。"
+
+#~ msgid "An additional network will be created if you leave this checked."
+#~ msgstr "如果选中此å¤é€‰æ¡†ï¼Œåˆ™ä¼šåˆ›å»ºä¸€ä¸ªé™„加网络。"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "å–消选中将会å¦å¤–创建一个新网络,而ä¸ä¼šè¦†ç›–当å‰ç½‘络设置"
#~ msgid "Join Network: Settings"
-#~ msgstr "加入网络:设置"
+#~ msgstr "加入网络:设置"
#~ msgid "CPU"
#~ msgstr "CPU"
diff --git a/modules/luci-base/po/zh-tw/base.po b/modules/luci-base/po/zh-tw/base.po
index 2845c9999..ef7d75a6c 100644
--- a/modules/luci-base/po/zh-tw/base.po
+++ b/modules/luci-base/po/zh-tw/base.po
@@ -41,18 +41,45 @@ msgstr ""
msgid "-- match by label --"
msgstr ""
+msgid "-- match by uuid --"
+msgstr ""
+
msgid "1 Minute Load:"
msgstr "1分é˜è² è¼‰"
msgid "15 Minute Load:"
msgstr "15分é˜è² è¼‰"
+msgid "4-character hexadecimal ID"
+msgstr ""
+
msgid "464XLAT (CLAT)"
msgstr ""
msgid "5 Minute Load:"
msgstr "5分é˜è² è¼‰"
+msgid "6-octet identifier as a hex string - no colons"
+msgstr ""
+
+msgid "802.11r Fast Transition"
+msgstr ""
+
+msgid "802.11w Association SA Query maximum timeout"
+msgstr ""
+
+msgid "802.11w Association SA Query retry timeout"
+msgstr ""
+
+msgid "802.11w Management Frame Protection"
+msgstr ""
+
+msgid "802.11w maximum timeout"
+msgstr ""
+
+msgid "802.11w retry timeout"
+msgstr ""
+
msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>"
@@ -138,9 +165,6 @@ msgstr ""
msgid "APN"
msgstr "APN"
-msgid "AR Support"
-msgstr "AR支æ´"
-
msgid "ARP retry threshold"
msgstr "ARPé‡è©¦é–€æª»"
@@ -272,6 +296,9 @@ msgid ""
"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
msgstr "å…許127.0.0.0/8範åœå…§çš„上游回應,例如:RBLæœå‹™"
+msgid "Allowed IPs"
+msgstr ""
+
msgid ""
"Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
"\">Tunneling Comparison</a> on SIXXS"
@@ -280,9 +307,6 @@ msgstr ""
msgid "Always announce default router"
msgstr ""
-msgid "An additional network will be created if you leave this checked."
-msgstr ""
-
msgid "Annex"
msgstr ""
@@ -378,9 +402,6 @@ msgstr ""
msgid "Associated Stations"
msgstr "已連接站點"
-msgid "Atheros 802.11%s Wireless Controller"
-msgstr "Atheros 802.11%s 無線控制器"
-
msgid "Auth Group"
msgstr ""
@@ -390,6 +411,9 @@ msgstr ""
msgid "Authentication"
msgstr "èªè­‰"
+msgid "Authentication Type"
+msgstr ""
+
msgid "Authoritative"
msgstr "授權"
@@ -456,9 +480,6 @@ msgstr "返回至總覽"
msgid "Back to scan results"
msgstr "返回至掃æçµæžœ"
-msgid "Background Scan"
-msgstr "背景æœå°‹"
-
msgid "Backup / Flash Firmware"
msgstr "備份/å‡ç´šéŸŒé«”"
@@ -485,9 +506,15 @@ msgstr ""
"下é¢æ˜¯å¾…備份的檔案清單。包å«äº†æ›´æ”¹çš„設定檔案ã€å¿…è¦çš„基本檔案和使用者自訂的備"
"份檔案"
+msgid "Bind interface"
+msgstr ""
+
msgid "Bind only to specific interfaces rather than wildcard address."
msgstr ""
+msgid "Bind the tunnel to this interface (optional)."
+msgstr ""
+
msgid "Bitrate"
msgstr "傳輸速率"
@@ -556,6 +583,9 @@ msgstr "檢查"
msgid "Check fileystems before mount"
msgstr ""
+msgid "Check this option to delete the existing networks from this radio."
+msgstr ""
+
msgid "Checksum"
msgstr "效驗碼"
@@ -612,9 +642,6 @@ msgstr "指令"
msgid "Common Configuration"
msgstr "一般設定"
-msgid "Compression"
-msgstr "壓縮"
-
msgid "Configuration"
msgstr "設定"
@@ -833,12 +860,12 @@ msgstr "關閉DNS設置"
msgid "Disable Encryption"
msgstr ""
-msgid "Disable HW-Beacon timer"
-msgstr "關閉硬體燈號計時器"
-
msgid "Disabled"
msgstr "關閉"
+msgid "Disabled (default)"
+msgstr ""
+
msgid "Discard upstream RFC1918 responses"
msgstr "丟棄上游RFC1918 虛擬IP網路的回應"
@@ -876,15 +903,15 @@ msgstr "å°ä¸è¢«å…¬ç”¨å稱伺æœå™¨å›žæ‡‰çš„請求ä¸è½‰ç™¼"
msgid "Do not forward reverse lookups for local networks"
msgstr "å°æœ¬åœ°ç¶²åŸŸä¸è½‰ç™¼å解æžéŽ–定"
-msgid "Do not send probe responses"
-msgstr "ä¸å‚³é€æŽ¢æ¸¬å›žæ‡‰"
-
msgid "Domain required"
msgstr "網域必è¦çš„"
msgid "Domain whitelist"
msgstr "網域白åå–®"
+msgid "Don't Fragment"
+msgstr ""
+
msgid ""
"Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
"<abbr title=\"Domain Name System\">DNS</abbr>-Name"
@@ -954,6 +981,9 @@ msgstr "啟用 <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
msgid "Enable HE.net dynamic endpoint update"
msgstr "啟用HE.netæœå‹™ä»£ç®¡å‹•æ…‹æ›´æ–°"
+msgid "Enable IPv6 negotiation"
+msgstr ""
+
msgid "Enable IPv6 negotiation on the PPP link"
msgstr "啟用PPP連çµä¸Šçš„IPv6交涉"
@@ -984,6 +1014,9 @@ msgstr ""
msgid "Enable mirroring of outgoing packets"
msgstr ""
+msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
+msgstr ""
+
msgid "Enable this mount"
msgstr "啟用掛載點"
@@ -996,6 +1029,11 @@ msgstr "啟用/關閉"
msgid "Enabled"
msgstr "啟用"
+msgid ""
+"Enables fast roaming among access points that belong to the same Mobility "
+"Domain"
+msgstr ""
+
msgid "Enables the Spanning Tree Protocol on this bridge"
msgstr "在橋接器上啟用802.1d Spanning Treeå”定"
@@ -1005,6 +1043,12 @@ msgstr "å°è£æ¨¡å¼"
msgid "Encryption"
msgstr "加密"
+msgid "Endpoint Host"
+msgstr ""
+
+msgid "Endpoint Port"
+msgstr ""
+
msgid "Erasing..."
msgstr "刪除中..."
@@ -1037,6 +1081,12 @@ msgstr "釋放ä½å€çš„éŽæœŸé€±æœŸ,æœ€å°‘å…©åˆ†é˜ (<code>2m</code>)."
msgid "External"
msgstr ""
+msgid "External R0 Key Holder List"
+msgstr ""
+
+msgid "External R1 Key Holder List"
+msgstr ""
+
msgid "External system log server"
msgstr "外部系統日誌伺æœå™¨"
@@ -1049,9 +1099,6 @@ msgstr ""
msgid "Extra SSH command options"
msgstr ""
-msgid "Fast Frames"
-msgstr "快速迅框群"
-
msgid "File"
msgstr "檔案"
@@ -1087,6 +1134,9 @@ msgstr "完æˆ"
msgid "Firewall"
msgstr "防ç«ç‰†"
+msgid "Firewall Mark"
+msgstr ""
+
msgid "Firewall Settings"
msgstr "防ç«ç‰†è¨­å®š"
@@ -1132,6 +1182,9 @@ msgstr "強制TKIP加密"
msgid "Force TKIP and CCMP (AES)"
msgstr "強制TKIP+CCMP (AES)加密"
+msgid "Force link"
+msgstr ""
+
msgid "Force use of NAT-T"
msgstr ""
@@ -1162,6 +1215,11 @@ msgstr "空閒"
msgid "Free space"
msgstr "剩餘空間"
+msgid ""
+"Further information about WireGuard interfaces and peers at <a href=\"http://"
+"wireguard.io\">wireguard.io</a>."
+msgstr ""
+
msgid "GHz"
msgstr "GHz"
@@ -1219,6 +1277,9 @@ msgstr " HE.net密碼"
msgid "HE.net username"
msgstr ""
+msgid "HT mode (802.11n)"
+msgstr ""
+
msgid "Handler"
msgstr "多執行緒"
@@ -1274,6 +1335,9 @@ msgstr ""
msgid "IKE DH Group"
msgstr ""
+msgid "IP Addresses"
+msgstr ""
+
msgid "IP address"
msgstr "IPä½å€"
@@ -1316,6 +1380,9 @@ msgstr "IPv4å‰ç¶´é•·åº¦"
msgid "IPv4-Address"
msgstr "IPv4-ä½å€"
+msgid "IPv4-in-IPv4 (RFC2003)"
+msgstr ""
+
msgid "IPv6"
msgstr "IPv6版"
@@ -1364,6 +1431,9 @@ msgstr ""
msgid "IPv6-Address"
msgstr "IPv6-ä½å€"
+msgid "IPv6-PD"
+msgstr ""
+
msgid "IPv6-in-IPv4 (RFC4213)"
msgstr "IPv6包覆在IPv4內(RFC4213)"
@@ -1507,13 +1577,16 @@ msgstr "打入的是ä¸æ­£ç¢ºçš„VLAN ID!僅有ç¨ä¸€ç„¡äºŒçš„IDs被å…許"
msgid "Invalid username and/or password! Please try again."
msgstr "ä¸æ­£ç¢ºçš„用戶å稱和/或者密碼!è«‹å†è©¦ä¸€æ¬¡."
+msgid "Isolate Clients"
+msgstr ""
+
#, fuzzy
msgid ""
"It appears that you are trying to flash an image that does not fit into the "
"flash memory, please verify the image file!"
msgstr "它顯示你正嘗試更新ä¸é©ç”¨æ–¼é€™å€‹flash記憶體的映åƒæª”,請檢查確èªé€™å€‹æ˜ åƒæª”"
-msgid "Java Script required!"
+msgid "JavaScript required!"
msgstr "需è¦Java腳本"
msgid "Join Network"
@@ -1626,6 +1699,22 @@ msgid ""
"requests to"
msgstr "列出 <abbr title=\"Domain Name System\">DNS</abbr> 伺æœå™¨ä»¥ä¾¿è½‰ç™¼è«‹æ±‚"
+msgid ""
+"List of R0KHs in the same Mobility Domain. <br />Format: MAC-address,NAS-"
+"Identifier,128-bit key as hex string. <br />This list is used to map R0KH-ID "
+"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key "
+"from the R0KH that the STA used during the Initial Mobility Domain "
+"Association."
+msgstr ""
+
+msgid ""
+"List of R1KHs in the same Mobility Domain. <br />Format: MAC-address,R1KH-ID "
+"as 6 octets with colons,128-bit key as hex string. <br />This list is used "
+"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the "
+"R0KH. This is also the list of authorized R1KHs in the MD that can request "
+"PMK-R1 keys."
+msgstr ""
+
msgid "List of SSH key files for auth"
msgstr ""
@@ -1638,6 +1727,9 @@ msgstr "列出供應å½è£NX網域æˆæžœçš„主機群"
msgid "Listen Interfaces"
msgstr ""
+msgid "Listen Port"
+msgstr ""
+
msgid "Listen only on the given interface or, if unspecified, on all"
msgstr "åªè¨±åœ¨çµ¦äºˆçš„介é¢ä¸Šè†è½, 如果未指定, 全都å…許"
@@ -1756,9 +1848,6 @@ msgstr ""
msgid "Max. Attainable Data Rate (ATTNDR)"
msgstr ""
-msgid "Maximum Rate"
-msgstr "最快速度"
-
msgid "Maximum allowed number of active DHCP leases"
msgstr "å…許啟用DHCP釋放的最大數é‡"
@@ -1794,9 +1883,6 @@ msgstr "記憶體使用 (%)"
msgid "Metric"
msgstr "公測單ä½"
-msgid "Minimum Rate"
-msgstr "最低速度"
-
msgid "Minimum hold time"
msgstr "å¯æŒæœ‰çš„最低時間"
@@ -1809,6 +1895,9 @@ msgstr ""
msgid "Missing protocol extension for proto %q"
msgstr "å”定 %q æ¼å¤±çš„延伸å”定"
+msgid "Mobility Domain"
+msgstr ""
+
msgid "Mode"
msgstr "模å¼"
@@ -1865,9 +1954,6 @@ msgstr "往下移"
msgid "Move up"
msgstr "往上移"
-msgid "Multicast Rate"
-msgstr "多點群播速度"
-
msgid "Multicast address"
msgstr "多點群播ä½å€"
@@ -1880,6 +1966,9 @@ msgstr ""
msgid "NAT64 Prefix"
msgstr ""
+msgid "NCM"
+msgstr ""
+
msgid "NDP-Proxy"
msgstr ""
@@ -2058,12 +2147,50 @@ msgstr "é¸é …已變更"
msgid "Option removed"
msgstr "é¸é …已移除"
+msgid "Optional"
+msgstr ""
+
msgid "Optional, specify to override default server (tic.sixxs.net)"
msgstr ""
msgid "Optional, use when the SIXXS account has more than one tunnel"
msgstr ""
+msgid "Optional."
+msgstr ""
+
+msgid ""
+"Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, "
+"starting with <code>0x</code>."
+msgstr ""
+
+msgid ""
+"Optional. Base64-encoded preshared key. Adds in an additional layer of "
+"symmetric-key cryptography for post-quantum resistance."
+msgstr ""
+
+msgid "Optional. Create routes for Allowed IPs for this peer."
+msgstr ""
+
+msgid ""
+"Optional. Host of peer. Names are resolved prior to bringing up the "
+"interface."
+msgstr ""
+
+msgid "Optional. Maximum Transmission Unit of tunnel interface."
+msgstr ""
+
+msgid "Optional. Port of peer."
+msgstr ""
+
+msgid ""
+"Optional. Seconds between keep alive messages. Default is 0 (disabled). "
+"Recommended value if this device is behind a NAT is 25."
+msgstr ""
+
+msgid "Optional. UDP port used for outgoing and incoming packets."
+msgstr ""
+
msgid "Options"
msgstr "é¸é …"
@@ -2076,9 +2203,6 @@ msgstr "出"
msgid "Outbound:"
msgstr "外連:"
-msgid "Outdoor Channels"
-msgstr "室外通é“"
-
msgid "Output Interface"
msgstr ""
@@ -2088,6 +2212,12 @@ msgstr "覆蓋MACä½å€"
msgid "Override MTU"
msgstr "覆蓋MTU數值"
+msgid "Override TOS"
+msgstr ""
+
+msgid "Override TTL"
+msgstr ""
+
msgid "Override default interface name"
msgstr ""
@@ -2120,6 +2250,9 @@ msgstr "PID碼"
msgid "PIN"
msgstr "PIN碼"
+msgid "PMK R1 Push"
+msgstr ""
+
msgid "PPP"
msgstr "PPPå”定"
@@ -2204,6 +2337,9 @@ msgstr "峰值:"
msgid "Peer IP address to assign"
msgstr ""
+msgid "Peers"
+msgstr ""
+
msgid "Perfect Forward Secrecy"
msgstr ""
@@ -2213,6 +2349,9 @@ msgstr "執行é‡é–‹"
msgid "Perform reset"
msgstr "執行é‡ç½®"
+msgid "Persistent Keep Alive"
+msgstr ""
+
msgid "Phy Rate:"
msgstr "傳輸率:"
@@ -2243,6 +2382,18 @@ msgstr ""
msgid "Pre-emtive CRC errors (CRCP_P)"
msgstr ""
+msgid "Prefer LTE"
+msgstr ""
+
+msgid "Prefer UMTS"
+msgstr ""
+
+msgid "Prefix Delegated"
+msgstr ""
+
+msgid "Preshared Key"
+msgstr ""
+
msgid ""
"Presume peer to be dead after given amount of LCP echo failures, use 0 to "
"ignore failures"
@@ -2257,6 +2408,9 @@ msgstr "防止用戶端å°ç”¨æˆ¶ç«¯çš„通訊"
msgid "Prism2/2.5/3 802.11b Wireless Controller"
msgstr "Prism2/2.5/3 802.11b 無線控制器"
+msgid "Private Key"
+msgstr ""
+
msgid "Proceed"
msgstr "å‰é€²"
@@ -2290,12 +2444,24 @@ msgstr "æ供新網路"
msgid "Pseudo Ad-Hoc (ahdemo)"
msgstr "å½è£Ad-Hoc (ahdemo模å¼)"
+msgid "Public Key"
+msgstr ""
+
msgid "Public prefix routed to this device for distribution to clients."
msgstr ""
+msgid "QMI Cellular"
+msgstr ""
+
msgid "Quality"
msgstr "å“質"
+msgid "R0 Key Lifetime"
+msgstr ""
+
+msgid "R1 Key Holder"
+msgstr ""
+
msgid "RFC3947 NAT-T mode"
msgstr ""
@@ -2386,6 +2552,9 @@ msgstr "å³æ™‚æµé‡"
msgid "Realtime Wireless"
msgstr "å³æ™‚無線網路"
+msgid "Reassociation Deadline"
+msgstr ""
+
msgid "Rebind protection"
msgstr "é‡æ–°ç¶è­·"
@@ -2404,6 +2573,9 @@ msgstr "接收"
msgid "Receiver Antenna"
msgstr "接收天線"
+msgid "Recommended. IP addresses of the WireGuard interface."
+msgstr ""
+
msgid "Reconnect this interface"
msgstr "é‡æ–°é€£æŽ¥é€™å€‹ä»‹é¢"
@@ -2413,9 +2585,6 @@ msgstr "é‡é€£é€™å€‹ä»‹é¢ä¸­"
msgid "References"
msgstr "引用"
-msgid "Regulatory Domain"
-msgstr "監管網域"
-
msgid "Relay"
msgstr "延é²"
@@ -2431,6 +2600,9 @@ msgstr "橋接延é²"
msgid "Remote IPv4 address"
msgstr "é ç«¯IPv4ä½å€"
+msgid "Remote IPv4 address or FQDN"
+msgstr ""
+
msgid "Remove"
msgstr "移除"
@@ -2452,9 +2624,29 @@ msgstr ""
msgid "Require TLS"
msgstr ""
+msgid "Required"
+msgstr ""
+
msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
msgstr "å°ç‰¹å®šçš„ISP需è¦,例如.DOCSIS 3 加速有線電視寬頻網路"
+msgid "Required. Base64-encoded private key for this interface."
+msgstr ""
+
+msgid "Required. Base64-encoded public key of peer."
+msgstr ""
+
+msgid ""
+"Required. IP addresses and prefixes that this peer is allowed to use inside "
+"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer "
+"routes through the tunnel."
+msgstr ""
+
+msgid ""
+"Requires the 'full' version of wpad/hostapd and support from the wifi driver "
+"<br />(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)"
+msgstr ""
+
msgid ""
"Requires upstream supports DNSSEC; verify unsigned domain responses really "
"come from unsigned domains"
@@ -2499,6 +2691,12 @@ msgstr "é€éŽTFTPå­˜å–根目錄檔案"
msgid "Root preparation"
msgstr ""
+msgid "Route Allowed IPs"
+msgstr ""
+
+msgid "Route type"
+msgstr ""
+
msgid "Routed IPv6 prefix for downstream interfaces"
msgstr ""
@@ -2586,9 +2784,6 @@ msgstr "傳é€LCP呼å«è«‹æ±‚在這個給予的秒數間隔內, 僅影響關è¯å
msgid "Separate Clients"
msgstr "分隔用戶端"
-msgid "Separate WDS"
-msgstr "分隔WDS中繼"
-
msgid "Server Settings"
msgstr "伺æœå™¨è¨­å®šå€¼"
@@ -2612,6 +2807,11 @@ msgstr "æœå‹™åž‹æ…‹"
msgid "Services"
msgstr "å„æœå‹™"
+msgid ""
+"Set interface properties regardless of the link carrier (If set, carrier "
+"sense events do not invoke hotplug handlers)."
+msgstr ""
+
#, fuzzy
msgid "Set up Time Synchronization"
msgstr "安è£æ ¡æ™‚åŒæ­¥"
@@ -2676,14 +2876,13 @@ msgstr "抱歉, 你請求的這物件尚無發ç¾."
msgid "Sorry, the server encountered an unexpected error."
msgstr "抱歉, 伺æœå™¨é­é‡éžé æœŸçš„錯誤."
-#, fuzzy
msgid ""
"Sorry, there is no sysupgrade support present; a new firmware image must be "
-"flashed manually. Please refer to the OpenWrt wiki for device specific "
-"install instructions."
+"flashed manually. Please refer to the wiki for device specific install "
+"instructions."
msgstr ""
-"抱歉, 沒有sysupgrade支æ´å‡ºç¾, 新版韌體映åƒæª”必須手動更新. 請回歸OpenWrt wiki"
-"找尋特定設備安è£æŒ‡å¼•."
+"抱歉, 沒有sysupgrade支æ´å‡ºç¾, 新版韌體映åƒæª”必須手動更新. 請回歸wiki找尋特定"
+"設備安è£æŒ‡å¼•."
msgid "Sort"
msgstr "分類"
@@ -2713,6 +2912,19 @@ msgid ""
"dead"
msgstr "指定å¯è«‹æ±‚的最大秒數直到駭客主機死亡為止"
+msgid "Specify a TOS (Type of Service)."
+msgstr ""
+
+msgid ""
+"Specify a TTL (Time to Live) for the encapsulating packet other than the "
+"default (64)."
+msgstr ""
+
+msgid ""
+"Specify an MTU (Maximum Transmission Unit) other than the default (1280 "
+"bytes)."
+msgstr ""
+
msgid "Specify the secret encryption key here."
msgstr "指定加密金鑰在此."
@@ -2737,9 +2949,6 @@ msgstr "éœæ…‹ç§Ÿç´„"
msgid "Static Routes"
msgstr "éœæ…‹è·¯ç”±"
-msgid "Static WDS"
-msgstr "éœæ…‹WDS"
-
msgid "Static address"
msgstr "éœæ…‹ä½å€"
@@ -2865,6 +3074,10 @@ msgid ""
msgstr ""
msgid ""
+"The IPv4 address or the fully-qualified domain name of the remote tunnel end."
+msgstr ""
+
+msgid ""
"The IPv6 prefix assigned to the provider, usually ends with <code>::</code>"
msgstr "指定到這供應商的IPv6字首, 通常用 <code>::</code>çµå°¾"
@@ -2927,6 +3140,9 @@ msgstr "這IPv4開頭以ä½å…ƒè¨ˆçš„長度, 剩餘部分將會延用在IPv6ä½å
msgid "The length of the IPv6 prefix in bits"
msgstr "這IPv6開頭以ä½å…ƒè¨ˆçš„長度"
+msgid "The local IPv4 address over which the tunnel is created (optional)."
+msgstr ""
+
msgid ""
"The network ports on this device can be combined to several <abbr title="
"\"Virtual Local Area Network\">VLAN</abbr>s in which computers can "
@@ -3128,9 +3344,6 @@ msgstr ""
msgid "Tunnel type"
msgstr ""
-msgid "Turbo Mode"
-msgstr "渦輪爆è¡æ¨¡å¼"
-
msgid "Tx-Power"
msgstr "傳é€-功率"
@@ -3149,6 +3362,9 @@ msgstr "UMTS/GPRS/EV-DO"
msgid "USB Device"
msgstr "USB設備"
+msgid "USB Ports"
+msgstr ""
+
msgid "UUID"
msgstr "設備通用唯一識別碼UUID"
@@ -3181,11 +3397,11 @@ msgstr "上傳清單"
msgid ""
"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)."
+"Check \"Keep settings\" to retain the current configuration (requires a "
+"compatible firmware image)."
msgstr ""
"上傳一個sysupgrade-相容的映åƒæª”在這以便替代正執行中的韌體. 勾é¸\"ä¿æŒè¨­å®š\"以"
-"ä¿ç•™ç›®å‰è¨­å®šå€¼(å¿…é ˆè¦æ˜¯OpenWrt相容性韌體映åƒæª”)."
+"ä¿ç•™ç›®å‰è¨­å®šå€¼(å¿…é ˆè¦æ˜¯OpenWrt/LEDE相容性韌體映åƒæª”)."
msgid "Upload archive..."
msgstr "上傳壓縮檔..."
@@ -3255,6 +3471,11 @@ msgstr "已使用"
msgid "Used Key Slot"
msgstr "已使用的關éµæ’槽"
+msgid ""
+"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not "
+"needed with normal WPA(2)-PSK."
+msgstr ""
+
msgid "User certificate (PEM encoded)"
msgstr ""
@@ -3365,6 +3586,9 @@ msgstr ""
msgid "Width"
msgstr ""
+msgid "WireGuard VPN"
+msgstr ""
+
msgid "Wireless"
msgstr "無線網路"
@@ -3404,9 +3628,6 @@ msgstr "寫入已接收的DNS請求到系統日誌中"
msgid "Write system log to file"
msgstr ""
-msgid "XR Support"
-msgstr "支æ´XR無線陣列"
-
msgid ""
"You can enable or disable installed init scripts here. Changes will applied "
"after a device reboot.<br /><strong>Warning: If you disable essential init "
@@ -3416,8 +3637,8 @@ msgstr ""
"å‘Š: å‡å¦‚你關閉必è¦çš„åˆå§‹åŒ–腳本åƒ\"網路\", 你的設備將å¯èƒ½ç„¡æ³•å­˜å–!</strong>"
msgid ""
-"You must enable Java Script in your browser or LuCI will not work properly."
-msgstr "在ç€è¦½å™¨ä½ å¿…須啟用Java Scriptå¦å‰‡LuCI無法正常é‹ä½œ."
+"You must enable JavaScript in your browser or LuCI will not work properly."
+msgstr "在ç€è¦½å™¨ä½ å¿…須啟用JavaScriptå¦å‰‡LuCI無法正常é‹ä½œ."
msgid ""
"Your Internet Explorer is too old to display this page correctly. Please "
@@ -3507,6 +3728,9 @@ msgstr "本地<abbr title=\"Domain Name System\">DNS</abbr> 檔案"
msgid "minimum 1280, maximum 1480"
msgstr ""
+msgid "minutes"
+msgstr ""
+
msgid "navigation Navigation"
msgstr ""
@@ -3561,6 +3785,9 @@ msgstr ""
msgid "tagged"
msgstr "標籤"
+msgid "time units (TUs / 1.024 ms) [1000-65535]"
+msgstr ""
+
msgid "unknown"
msgstr "未知"
@@ -3582,6 +3809,54 @@ msgstr "是的"
msgid "« Back"
msgstr "« 倒退"
+#~ msgid "AR Support"
+#~ msgstr "AR支æ´"
+
+#~ msgid "Atheros 802.11%s Wireless Controller"
+#~ msgstr "Atheros 802.11%s 無線控制器"
+
+#~ msgid "Background Scan"
+#~ msgstr "背景æœå°‹"
+
+#~ msgid "Compression"
+#~ msgstr "壓縮"
+
+#~ msgid "Disable HW-Beacon timer"
+#~ msgstr "關閉硬體燈號計時器"
+
+#~ msgid "Do not send probe responses"
+#~ msgstr "ä¸å‚³é€æŽ¢æ¸¬å›žæ‡‰"
+
+#~ msgid "Fast Frames"
+#~ msgstr "快速迅框群"
+
+#~ msgid "Maximum Rate"
+#~ msgstr "最快速度"
+
+#~ msgid "Minimum Rate"
+#~ msgstr "最低速度"
+
+#~ msgid "Multicast Rate"
+#~ msgstr "多點群播速度"
+
+#~ msgid "Outdoor Channels"
+#~ msgstr "室外通é“"
+
+#~ msgid "Regulatory Domain"
+#~ msgstr "監管網域"
+
+#~ msgid "Separate WDS"
+#~ msgstr "分隔WDS中繼"
+
+#~ msgid "Static WDS"
+#~ msgstr "éœæ…‹WDS"
+
+#~ msgid "Turbo Mode"
+#~ msgstr "渦輪爆è¡æ¨¡å¼"
+
+#~ msgid "XR Support"
+#~ msgstr "支æ´XR無線陣列"
+
#~ msgid "An additional network will be created if you leave this unchecked."
#~ msgstr "å–消é¸å–將會å¦å¤–建立一個新網路,而ä¸æœƒè¦†è“‹ç›®å‰çš„網路設定"
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 3b5f3eb8d..2cb2108b9 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/network.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/network.lua
@@ -238,6 +238,7 @@ function iface_status(ifaces)
ipaddrs = net:ipaddrs(),
ip6addrs = net:ip6addrs(),
dnsaddrs = net:dnsaddrs(),
+ ip6prefix = net:ip6prefix(),
name = device:shortname(),
type = device:type(),
ifname = device:name(),
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 24db1e4ff..ad575e0d2 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/status.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/status.lua
@@ -24,8 +24,10 @@ function index()
entry({"admin", "status", "realtime", "bandwidth"}, template("admin_status/bandwidth"), _("Traffic"), 2).leaf = true
entry({"admin", "status", "realtime", "bandwidth_status"}, call("action_bandwidth")).leaf = true
- entry({"admin", "status", "realtime", "wireless"}, template("admin_status/wireless"), _("Wireless"), 3).leaf = true
- entry({"admin", "status", "realtime", "wireless_status"}, call("action_wireless")).leaf = true
+ if nixio.fs.access("/etc/config/wireless") then
+ entry({"admin", "status", "realtime", "wireless"}, template("admin_status/wireless"), _("Wireless"), 3).leaf = true
+ entry({"admin", "status", "realtime", "wireless_status"}, call("action_wireless")).leaf = true
+ end
entry({"admin", "status", "realtime", "connections"}, template("admin_status/connections"), _("Connections"), 4).leaf = true
entry({"admin", "status", "realtime", "connections_status"}, call("action_connections")).leaf = true
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 cf8cfb5d2..5478afa3e 100644
--- a/modules/luci-mod-admin-full/luasrc/controller/admin/system.lua
+++ b/modules/luci-mod-admin-full/luasrc/controller/admin/system.lua
@@ -52,6 +52,7 @@ function action_clock_status()
luci.sys.call("date -s '%04d-%02d-%02d %02d:%02d:%02d'" %{
date.year, date.month, date.day, date.hour, date.min, date.sec
})
+ luci.sys.call("/etc/init.d/sysfixtime restart")
end
end
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 10636a491..f418ecb40 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
@@ -68,9 +68,10 @@ se = s:taboption("advanced", Flag, "sequential_ip",
translate("Allocate IP addresses sequentially, starting from the lowest available address"))
se.optional = true
-s:taboption("advanced", Flag, "boguspriv",
+bp = s:taboption("advanced", Flag, "boguspriv",
translate("Filter private"),
translate("Do not forward reverse lookups for local networks"))
+bp.default = bp.enabled
s:taboption("advanced", Flag, "filterwin2k",
translate("Filter useless"),
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua
index 16a104494..031852228 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua
@@ -220,6 +220,12 @@ auto.default = (net:proto() == "none") and auto.disabled or auto.enabled
delegate = s:taboption("advanced", Flag, "delegate", translate("Use builtin IPv6-management"))
delegate.default = delegate.enabled
+force_link = s:taboption("advanced", Flag, "force_link",
+ translate("Force link"),
+ translate("Set interface properties regardless of the link carrier (If set, carrier sense events do not invoke hotplug handlers)."))
+
+force_link.default = (net:proto() == "static") and force_link.enabled or force_link.disabled
+
if not net:is_virtual() then
br = s:taboption("physical", Flag, "type", translate("Bridge interfaces"), translate("creates a bridge over specified interface(s)"))
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua
index ac02b156e..1970f36a2 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua
@@ -34,13 +34,27 @@ g.rmempty = true
metric = s:option(Value, "metric", translate("Metric"))
metric.placeholder = 0
metric.datatype = "range(0,255)"
+metric.size = 5
metric.rmempty = true
mtu = s:option(Value, "mtu", translate("MTU"))
mtu.placeholder = 1500
mtu.datatype = "range(64,9000)"
+mtu.size = 5
mtu.rmempty = true
+routetype = s:option(Value, "type", translate("Route type"))
+routetype:value("", "unicast")
+routetype:value("local", "local")
+routetype:value("broadcast", "broadcast")
+routetype:value("multicast", "multicast")
+routetype:value("unreachable", "unreachable")
+routetype:value("prohibit", "prohibit")
+routetype:value("blackhole", "blackhole")
+routetype:value("anycast", "anycast")
+routetype.default = ""
+routetype.rmempty = true
+
if fs.access("/proc/net/ipv6_route") then
s = m:section(TypedSection, "route6", translate("Static IPv6 Routes"))
s.addremove = true
@@ -62,12 +76,26 @@ if fs.access("/proc/net/ipv6_route") then
metric = s:option(Value, "metric", translate("Metric"))
metric.placeholder = 0
metric.datatype = "range(0,65535)" -- XXX: not sure
+ metric.size = 5
metric.rmempty = true
mtu = s:option(Value, "mtu", translate("MTU"))
mtu.placeholder = 1500
mtu.datatype = "range(64,9000)"
+ mtu.size = 5
mtu.rmempty = true
+
+ routetype = s:option(Value, "type", translate("Route type"))
+ routetype:value("", "unicast")
+ routetype:value("local", "local")
+ routetype:value("broadcast", "broadcast")
+ routetype:value("multicast", "multicast")
+ routetype:value("unreachable", "unreachable")
+ routetype:value("prohibit", "prohibit")
+ routetype:value("blackhole", "blackhole")
+ routetype:value("anycast", "anycast")
+ routetype.default = ""
+ routetype.rmempty = true
end
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 09763e8f1..3a08d81d0 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
@@ -42,6 +42,9 @@ end
-- wireless toggle was requested, commit and reload page
function m.parse(map)
+ local new_cc = m:formvalue("cbid.wireless.%s.country" % wdev:name())
+ local old_cc = m:get(wdev:name(), "country")
+
if m:formvalue("cbid.wireless.%s.__toggle" % wdev:name()) then
if wdev:get("disabled") == "1" or wnet:get("disabled") == "1" then
wnet:set("disabled", nil)
@@ -56,7 +59,14 @@ function m.parse(map)
luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless", arg[1]))
return
end
+
Map.parse(map)
+
+ if m:get(wdev:name(), "type") == "mac80211" and new_cc and new_cc ~= old_cc then
+ luci.sys.call("iw reg set %q" % new_cc)
+ luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless", arg[1]))
+ return
+ end
end
m.title = luci.util.pcdata(wnet:get_i18n())
@@ -94,7 +104,7 @@ local function txpower_current(pwr, list)
end
end
end
- return (list[#list] and list[#list].driver_dbm) or pwr or 0
+ return pwr or ""
end
local iw = luci.sys.wifi.getiwinfo(arg[1])
@@ -191,7 +201,7 @@ end
------------------- MAC80211 Device ------------------
if hwtype == "mac80211" then
- if #tx_power_list > 1 then
+ if #tx_power_list > 0 then
tp = s:taboption("general", ListValue,
"txpower", translate("Transmit Power"), "dBm")
tp.rmempty = true
@@ -200,6 +210,7 @@ if hwtype == "mac80211" then
return txpower_current(Value.cfgvalue(...), tx_power_list)
end
+ tp:value("", translate("auto"))
for _, p in ipairs(tx_power_list) do
tp:value(p.driver_dbm, "%i dBm (%i mW)"
%{ p.display_dbm, p.display_mw })
@@ -237,9 +248,9 @@ if hwtype == "mac80211" then
end
-------------------- Madwifi Device ------------------
+------------------- Broadcom Device ------------------
-if hwtype == "atheros" then
+if hwtype == "broadcom" then
tp = s:taboption("general",
(#tx_power_list > 0) and ListValue or Value,
"txpower", translate("Transmit Power"), "dBm")
@@ -251,66 +262,40 @@ if hwtype == "atheros" then
return txpower_current(Value.cfgvalue(...), tx_power_list)
end
+ tp:value("", translate("auto"))
for _, p in ipairs(tx_power_list) do
tp:value(p.driver_dbm, "%i dBm (%i mW)"
%{ p.display_dbm, p.display_mw })
end
- s:taboption("advanced", Flag, "diversity", translate("Diversity")).rmempty = false
-
- if not nsantenna then
- ant1 = s:taboption("advanced", ListValue, "txantenna", translate("Transmitter Antenna"))
- ant1.widget = "radio"
- ant1.orientation = "horizontal"
- ant1:depends("diversity", "")
- ant1:value("0", translate("auto"))
- ant1:value("1", translate("Antenna 1"))
- ant1:value("2", translate("Antenna 2"))
-
- ant2 = s:taboption("advanced", ListValue, "rxantenna", translate("Receiver Antenna"))
- ant2.widget = "radio"
- ant2.orientation = "horizontal"
- ant2:depends("diversity", "")
- ant2:value("0", translate("auto"))
- ant2:value("1", translate("Antenna 1"))
- ant2:value("2", translate("Antenna 2"))
-
- else -- NanoFoo
- local ant = s:taboption("advanced", ListValue, "antenna", translate("Transmitter Antenna"))
- ant:value("auto")
- ant:value("vertical")
- ant:value("horizontal")
- ant:value("external")
+ mode = s:taboption("advanced", ListValue, "hwmode", translate("Band"))
+ if hw_modes.b then
+ mode:value("11b", "2.4GHz (802.11b)")
+ if hw_modes.g then
+ mode:value("11bg", "2.4GHz (802.11b+g)")
+ end
end
-
- s:taboption("advanced", Value, "distance", translate("Distance Optimization"),
- translate("Distance to farthest network member in meters."))
- s:taboption("advanced", Value, "regdomain", translate("Regulatory Domain"))
- s:taboption("advanced", Value, "country", translate("Country Code"))
- s:taboption("advanced", Flag, "outdoor", translate("Outdoor Channels"))
-
- --s:option(Flag, "nosbeacon", translate("Disable HW-Beacon timer"))
-end
-
-
-
-------------------- Broadcom Device ------------------
-
-if hwtype == "broadcom" then
- tp = s:taboption("general",
- (#tx_power_list > 0) and ListValue or Value,
- "txpower", translate("Transmit Power"), "dBm")
-
- tp.rmempty = true
- tp.default = tx_power_cur
-
- function tp.cfgvalue(...)
- return txpower_current(Value.cfgvalue(...), tx_power_list)
+ if hw_modes.g then
+ mode:value("11g", "2.4GHz (802.11g)")
+ mode:value("11gst", "2.4GHz (802.11g + Turbo)")
+ mode:value("11lrs", "2.4GHz (802.11g Limited Rate Support)")
end
-
- for _, p in ipairs(tx_power_list) do
- tp:value(p.driver_dbm, "%i dBm (%i mW)"
- %{ p.display_dbm, p.display_mw })
+ if hw_modes.a then mode:value("11a", "5GHz (802.11a)") end
+ if hw_modes.n then
+ if hw_modes.g then
+ mode:value("11ng", "2.4GHz (802.11g+n)")
+ mode:value("11n", "2.4GHz (802.11n)")
+ end
+ if hw_modes.a then
+ mode:value("11na", "5GHz (802.11a+n)")
+ mode:value("11n", "5GHz (802.11n)")
+ end
+ htmode = s:taboption("advanced", ListValue, "htmode", translate("HT mode (802.11n)"))
+ htmode:depends("hwmode", "11ng")
+ htmode:depends("hwmode", "11na")
+ htmode:depends("hwmode", "11n")
+ htmode:value("HT20", "20MHz")
+ htmode:value("HT40", "40MHz")
end
ant1 = s:taboption("advanced", ListValue, "txantenna", translate("Transmitter Antenna"))
@@ -476,102 +461,13 @@ if hwtype == "mac80211" then
wmm:depends({mode="ap-wds"})
wmm.default = wmm.enabled
- ifname = s:taboption("advanced", Value, "ifname", translate("Interface name"), translate("Override default interface name"))
- ifname.optional = true
-end
-
-
-
--------------------- Madwifi Interface ----------------------
-
-if hwtype == "atheros" then
- mode:value("ahdemo", translate("Pseudo Ad-Hoc (ahdemo)"))
- mode:value("monitor", translate("Monitor"))
- mode:value("ap-wds", "%s (%s)" % {translate("Access Point"), translate("WDS")})
- mode:value("sta-wds", "%s (%s)" % {translate("Client"), translate("WDS")})
- mode:value("wds", translate("Static WDS"))
-
- function mode.write(self, section, value)
- if value == "ap-wds" then
- ListValue.write(self, section, "ap")
- m.uci:set("wireless", section, "wds", 1)
- elseif value == "sta-wds" then
- ListValue.write(self, section, "sta")
- m.uci:set("wireless", section, "wds", 1)
- else
- ListValue.write(self, section, value)
- m.uci:delete("wireless", section, "wds")
- end
- end
-
- function mode.cfgvalue(self, section)
- local mode = ListValue.cfgvalue(self, section)
- local wds = m.uci:get("wireless", section, "wds") == "1"
-
- if mode == "ap" and wds then
- return "ap-wds"
- elseif mode == "sta" and wds then
- return "sta-wds"
- else
- return mode
- end
- end
-
- bssid:depends({mode="adhoc"})
- bssid:depends({mode="ahdemo"})
- bssid:depends({mode="wds"})
-
- wdssep = s:taboption("advanced", Flag, "wdssep", translate("Separate WDS"))
- wdssep:depends({mode="ap-wds"})
-
- s:taboption("advanced", Flag, "doth", "802.11h")
- hidden = s:taboption("general", Flag, "hidden", translate("Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"))
- hidden:depends({mode="ap"})
- hidden:depends({mode="adhoc"})
- hidden:depends({mode="ap-wds"})
- hidden:depends({mode="sta-wds"})
- isolate = s:taboption("advanced", Flag, "isolate", translate("Separate Clients"),
+ isolate = s:taboption("advanced", Flag, "isolate", translate("Isolate Clients"),
translate("Prevents client-to-client communication"))
isolate:depends({mode="ap"})
- s:taboption("advanced", Flag, "bgscan", translate("Background Scan"))
-
- mp = s:taboption("macfilter", ListValue, "macpolicy", translate("MAC-Address Filter"))
- mp:value("", translate("disable"))
- mp:value("allow", translate("Allow listed only"))
- mp:value("deny", translate("Allow all except listed"))
-
- ml = s:taboption("macfilter", DynamicList, "maclist", translate("MAC-List"))
- ml.datatype = "macaddr"
- ml:depends({macpolicy="allow"})
- ml:depends({macpolicy="deny"})
- nt.mac_hints(function(mac, name) ml:value(mac, "%s (%s)" %{ mac, name }) end)
-
- s:taboption("advanced", Value, "rate", translate("Transmission Rate"))
- s:taboption("advanced", Value, "mcast_rate", translate("Multicast Rate"))
- s:taboption("advanced", Value, "frag", translate("Fragmentation Threshold"))
- s:taboption("advanced", Value, "rts", translate("RTS/CTS Threshold"))
- s:taboption("advanced", Value, "minrate", translate("Minimum Rate"))
- s:taboption("advanced", Value, "maxrate", translate("Maximum Rate"))
- s:taboption("advanced", Flag, "compression", translate("Compression"))
-
- s:taboption("advanced", Flag, "bursting", translate("Frame Bursting"))
- s:taboption("advanced", Flag, "turbo", translate("Turbo Mode"))
- s:taboption("advanced", Flag, "ff", translate("Fast Frames"))
+ isolate:depends({mode="ap-wds"})
- s:taboption("advanced", Flag, "wmm", translate("WMM Mode"))
- s:taboption("advanced", Flag, "xr", translate("XR Support"))
- s:taboption("advanced", Flag, "ar", translate("AR Support"))
-
- local swm = s:taboption("advanced", Flag, "sw_merge", translate("Disable HW-Beacon timer"))
- swm:depends({mode="adhoc"})
-
- local nos = s:taboption("advanced", Flag, "nosbeacon", translate("Disable HW-Beacon timer"))
- nos:depends({mode="sta"})
- nos:depends({mode="sta-wds"})
-
- local probereq = s:taboption("advanced", Flag, "probereq", translate("Do not send probe responses"))
- probereq.enabled = "0"
- probereq.disabled = "1"
+ ifname = s:taboption("advanced", Value, "ifname", translate("Interface name"), translate("Override default interface name"))
+ ifname.optional = true
end
@@ -695,7 +591,7 @@ encr:value("none", "No Encryption")
encr:value("wep-open", translate("WEP Open System"), {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"}, {mode="ahdemo"}, {mode="wds"})
encr:value("wep-shared", translate("WEP Shared Key"), {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"}, {mode="ahdemo"}, {mode="wds"})
-if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then
+if hwtype == "mac80211" or hwtype == "prism2" then
local supplicant = fs.access("/usr/sbin/wpa_supplicant")
local hostapd = fs.access("/usr/sbin/hostapd")
@@ -856,14 +752,92 @@ for slot=1,4 do
end
-if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then
- nasid = s:taboption("encryption", Value, "nasid", translate("NAS ID"))
+if hwtype == "mac80211" or hwtype == "prism2" then
+
+ -- Probe 802.11r support (and EAP support as a proxy for Openwrt)
+ local has_80211r = (os.execute("hostapd -v11r 2>/dev/null || hostapd -veap 2>/dev/null") == 0)
+
+ ieee80211r = s:taboption("encryption", Flag, "ieee80211r",
+ translate("802.11r Fast Transition"),
+ translate("Enables fast roaming among access points that belong " ..
+ "to the same Mobility Domain"))
+ ieee80211r:depends({mode="ap", encryption="wpa"})
+ ieee80211r:depends({mode="ap", encryption="wpa2"})
+ ieee80211r:depends({mode="ap-wds", encryption="wpa"})
+ ieee80211r:depends({mode="ap-wds", encryption="wpa2"})
+ if has_80211r then
+ ieee80211r:depends({mode="ap", encryption="psk"})
+ ieee80211r:depends({mode="ap", encryption="psk2"})
+ ieee80211r:depends({mode="ap", encryption="psk-mixed"})
+ end
+ ieee80211r.rmempty = true
+
+ nasid = s:taboption("encryption", Value, "nasid", translate("NAS ID"),
+ translate("Used for two different purposes: RADIUS NAS ID and " ..
+ "802.11r R0KH-ID. Not needed with normal WPA(2)-PSK."))
nasid:depends({mode="ap", encryption="wpa"})
nasid:depends({mode="ap", encryption="wpa2"})
nasid:depends({mode="ap-wds", encryption="wpa"})
nasid:depends({mode="ap-wds", encryption="wpa2"})
+ nasid:depends({ieee80211r="1"})
nasid.rmempty = true
+ mobility_domain = s:taboption("encryption", Value, "mobility_domain",
+ translate("Mobility Domain"),
+ translate("4-character hexadecimal ID"))
+ mobility_domain:depends({ieee80211r="1"})
+ mobility_domain.placeholder = "4f57"
+ mobility_domain.datatype = "and(hexstring,rangelength(4,4))"
+ mobility_domain.rmempty = true
+
+ r0_key_lifetime = s:taboption("encryption", Value, "r0_key_lifetime",
+ translate("R0 Key Lifetime"), translate("minutes"))
+ r0_key_lifetime:depends({ieee80211r="1"})
+ r0_key_lifetime.placeholder = "10000"
+ r0_key_lifetime.datatype = "uinteger"
+ r0_key_lifetime.rmempty = true
+
+ r1_key_holder = s:taboption("encryption", Value, "r1_key_holder",
+ translate("R1 Key Holder"),
+ translate("6-octet identifier as a hex string - no colons"))
+ r1_key_holder:depends({ieee80211r="1"})
+ r1_key_holder.placeholder = "00004f577274"
+ r1_key_holder.datatype = "and(hexstring,rangelength(12,12))"
+ r1_key_holder.rmempty = true
+
+ reassociation_deadline = s:taboption("encryption", Value, "reassociation_deadline",
+ translate("Reassociation Deadline"),
+ translate("time units (TUs / 1.024 ms) [1000-65535]"))
+ reassociation_deadline:depends({ieee80211r="1"})
+ reassociation_deadline.placeholder = "1000"
+ reassociation_deadline.datatype = "range(1000,65535)"
+ reassociation_deadline.rmempty = true
+
+ pmk_r1_push = s:taboption("encryption", Flag, "pmk_r1_push", translate("PMK R1 Push"))
+ pmk_r1_push:depends({ieee80211r="1"})
+ pmk_r1_push.placeholder = "0"
+ pmk_r1_push.rmempty = true
+
+ r0kh = s:taboption("encryption", DynamicList, "r0kh", translate("External R0 Key Holder List"),
+ translate("List of R0KHs in the same Mobility Domain. " ..
+ "<br />Format: MAC-address,NAS-Identifier,128-bit key as hex string. " ..
+ "<br />This list is used to map R0KH-ID (NAS Identifier) to a destination " ..
+ "MAC address when requesting PMK-R1 key from the R0KH that the STA " ..
+ "used during the Initial Mobility Domain Association."))
+
+ r0kh:depends({ieee80211r="1"})
+ r0kh.rmempty = true
+
+ r1kh = s:taboption("encryption", DynamicList, "r1kh", translate("External R1 Key Holder List"),
+ translate ("List of R1KHs in the same Mobility Domain. "..
+ "<br />Format: MAC-address,R1KH-ID as 6 octets with colons,128-bit key as hex string. "..
+ "<br />This list is used to map R1KH-ID to a destination MAC address " ..
+ "when sending PMK-R1 key from the R0KH. This is also the " ..
+ "list of authorized R1KHs in the MD that can request PMK-R1 keys."))
+ r1kh:depends({ieee80211r="1"})
+ r1kh.rmempty = true
+ -- End of 802.11r options
+
eaptype = s:taboption("encryption", ListValue, "eap_type", translate("EAP-Method"))
eaptype:value("tls", "TLS")
eaptype:value("ttls", "TTLS")
@@ -1002,7 +976,48 @@ if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then
password.password = true
end
-if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then
+-- ieee802.11w options
+if hwtype == "mac80211" then
+ local has_80211w = (os.execute("hostapd -v11w 2>/dev/null || hostapd -veap 2>/dev/null") == 0)
+ if has_80211w then
+ ieee80211w = s:taboption("encryption", ListValue, "ieee80211w",
+ translate("802.11w Management Frame Protection"),
+ translate("Requires the 'full' version of wpad/hostapd " ..
+ "and support from the wifi driver <br />(as of Feb 2017: " ..
+ "ath9k and ath10k, in LEDE also mwlwifi and mt76)"))
+ ieee80211w.default = ""
+ ieee80211w.rmempty = true
+ ieee80211w:value("", translate("Disabled (default)"))
+ ieee80211w:value("1", translate("Optional"))
+ ieee80211w:value("2", translate("Required"))
+ ieee80211w:depends({mode="ap", encryption="wpa2"})
+ ieee80211w:depends({mode="ap-wds", encryption="wpa2"})
+ ieee80211w:depends({mode="ap", encryption="psk2"})
+ ieee80211w:depends({mode="ap", encryption="psk-mixed"})
+ ieee80211w:depends({mode="ap-wds", encryption="psk2"})
+ ieee80211w:depends({mode="ap-wds", encryption="psk-mixed"})
+
+ max_timeout = s:taboption("encryption", Value, "ieee80211w_max_timeout",
+ translate("802.11w maximum timeout"),
+ translate("802.11w Association SA Query maximum timeout"))
+ max_timeout:depends({ieee80211w="1"})
+ max_timeout:depends({ieee80211w="2"})
+ max_timeout.datatype = "uinteger"
+ max_timeout.placeholder = "1000"
+ max_timeout.rmempty = true
+
+ retry_timeout = s:taboption("encryption", Value, "ieee80211w_retry_timeout",
+ translate("802.11w retry timeout"),
+ translate("802.11w Association SA Query retry timeout"))
+ retry_timeout:depends({ieee80211w="1"})
+ retry_timeout:depends({ieee80211w="2"})
+ retry_timeout.datatype = "uinteger"
+ retry_timeout.placeholder = "201"
+ retry_timeout.rmempty = true
+ end
+end
+
+if hwtype == "mac80211" or hwtype == "prism2" then
local wpasupplicant = fs.access("/usr/sbin/wpa_supplicant")
local hostcli = fs.access("/usr/sbin/hostapd_cli")
if hostcli and wpasupplicant then
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua
index 05b27a9f0..8277deb2f 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua
@@ -16,7 +16,7 @@ if not iw then
return
end
-m = SimpleForm("network", translate("Joining Network: %q", http.formvalue("join")))
+m = SimpleForm("network", translatef("Joining Network: %q", http.formvalue("join")))
m.cancel = translate("Back to scan results")
m.reset = false
@@ -44,7 +44,7 @@ m.hidden = {
if iw and iw.mbssid_support then
replace = m:field(Flag, "replace", translate("Replace wireless configuration"),
- translate("An additional network will be created if you leave this checked."))
+ translate("Check this option to delete the existing networks from this radio."))
function replace.cfgvalue() return "0" end
else
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua
index 1e475640b..493a735bd 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua
@@ -21,7 +21,7 @@ function s.cfgsections()
return { "_pass" }
end
-function m.on_commit(map)
+function m.parse(map)
local v1 = pw1:formvalue("_pass")
local v2 = pw2:formvalue("_pass")
@@ -36,6 +36,8 @@ function m.on_commit(map)
m.message = translate("Given password confirmation did not match, password not changed!")
end
end
+
+ Map.parse(map)
end
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 f5751673f..a85872afa 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
@@ -56,6 +56,8 @@ mount:taboption("general", Flag, "enabled", translate("Enable this mount")).rmem
o = mount:taboption("general", Value, "uuid", translate("UUID"),
translate("If specified, mount the device by its UUID instead of a fixed device node"))
+o:value("", translate("-- match by uuid --"))
+
for i, d in ipairs(devices) do
if d.uuid and d.size then
o:value(d.uuid, "%s (%s, %d MB)" %{ d.uuid, d.dev, d.size })
@@ -64,12 +66,12 @@ for i, d in ipairs(devices) do
end
end
-o:value("", translate("-- match by label --"))
-
o = mount:taboption("general", Value, "label", translate("Label"),
translate("If specified, mount the device by the partition label instead of a fixed device node"))
+o:value("", translate("-- match by label --"))
+
o:depends("uuid", "")
for i, d in ipairs(devices) do
@@ -80,12 +82,12 @@ for i, d in ipairs(devices) do
end
end
-o:value("", translate("-- match by device --"))
-
o = mount:taboption("general", Value, "device", translate("Device"),
translate("The device file of the memory or partition (<abbr title=\"for example\">e.g.</abbr> <code>/dev/sda1</code>)"))
+o:value("", translate("-- match by device --"))
+
o:depends({ uuid = "", label = "" })
for i, d in ipairs(devices) do
diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua
index 8d9bcb137..74e2f1a19 100644
--- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua
+++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua
@@ -7,10 +7,11 @@ local sysfs_path = "/sys/class/leds/"
local leds = {}
local fs = require "nixio.fs"
-local util = require "nixio.util"
+local nu = require "nixio.util"
+local util = require "luci.util"
if fs.access(sysfs_path) then
- leds = util.consume((fs.dir(sysfs_path)))
+ leds = nu.consume((fs.dir(sysfs_path)))
end
if #leds == 0 then
@@ -109,6 +110,33 @@ function usbdev.remove(self, section)
end
end
+
+usbport = s:option(MultiValue, "port", translate("USB Ports"))
+usbport:depends("trigger", "usbport")
+usbport.rmempty = true
+usbport.widget = "checkbox"
+usbport.cast = "table"
+usbport.size = 1
+
+function usbport.valuelist(self, section)
+ local port, ports = nil, {}
+ for port in util.imatch(m.uci:get("system", section, "port")) do
+ local b, n = port:match("^usb(%d+)-port(%d+)$")
+ if not (b and n) then
+ b, n = port:match("^(%d+)-(%d+)$")
+ end
+ if b and n then
+ ports[#ports+1] = "usb%u-port%u" %{ tonumber(b), tonumber(n) }
+ end
+ end
+ return ports
+end
+
+function usbport.validate(self, value)
+ return type(value) == "string" and { value } or value
+end
+
+
for p in nixio.fs.glob("/sys/bus/usb/devices/[0-9]*/manufacturer") do
local id = p:match("%d+-%d+")
local mf = nixio.fs.readfile("/sys/bus/usb/devices/" .. id .. "/manufacturer") or "?"
@@ -116,4 +144,12 @@ for p in nixio.fs.glob("/sys/bus/usb/devices/[0-9]*/manufacturer") do
usbdev:value(id, "%s (%s - %s)" %{ id, mf, pr })
end
+for p in nixio.fs.glob("/sys/bus/usb/devices/*/usb[0-9]*-port[0-9]*") do
+ local bus, port = p:match("usb(%d+)-port(%d+)")
+ if bus and port then
+ usbport:value("usb%u-port%u" %{ tonumber(bus), tonumber(port) },
+ "Hub %u, Port %u" %{ tonumber(bus), tonumber(port) })
+ end
+end
+
return m
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 646d931f3..2512a35b3 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
@@ -164,6 +164,11 @@
ifc.ip6addrs[i]
);
}
+
+ if (ifc.ip6prefix)
+ {
+ html += String.format('<strong><%:IPv6-PD%>:</strong> %s<br />', ifc.ip6prefix);
+ }
d.innerHTML = html;
}
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 8c3b1abcc..b15dd13f3 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
@@ -54,6 +54,11 @@
ifc.ip6addrs[i]
);
}
+
+ if (ifc.ip6prefix)
+ {
+ html += String.format('<strong><%:IPv6-PD%>:</strong> %s<br />', ifc.ip6prefix);
+ }
d.innerHTML = html;
}
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 9c351d393..4465095ff 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
@@ -66,10 +66,6 @@
return name
- -- madwifi
- elseif name == "ath" or name == "wifi" then
- return translatef("Atheros 802.11%s Wireless Controller", bands)
-
-- ralink
elseif name == "ra" then
return translatef("RaLink 802.11%s Wireless Controller", bands)
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 0b2e52e05..b7ebc4145 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
@@ -153,7 +153,8 @@
{
var c = conn[i];
- if (c.src == '127.0.0.1' && c.dst == '127.0.0.1')
+ if ((c.src == '127.0.0.1' && c.dst == '127.0.0.1')
+ || (c.src == '::1' && c.dst == '::1'))
continue;
var tr = conn_table.rows[0].parentNode.insertRow(-1);
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 8976e30cb..d29a89427 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
@@ -37,10 +37,8 @@
local wan = ntm:get_wannet()
local wan6 = ntm:get_wan6net()
- local conn_count = tonumber((
- luci.sys.exec("wc -l /proc/net/nf_conntrack") or
- luci.sys.exec("wc -l /proc/net/ip_conntrack") or
- ""):match("%d+")) or 0
+ local conn_count = tonumber(
+ fs.readfile("/proc/sys/net/netfilter/nf_conntrack_count")) or 0
local conn_max = tonumber((
luci.sys.exec("sysctl net.nf_conntrack_max") or
@@ -76,12 +74,14 @@
if wan6 then
rv.wan6 = {
- ip6addr = wan6:ip6addr(),
- gw6addr = wan6:gw6addr(),
- dns = wan6:dns6addrs(),
- uptime = wan6:uptime(),
- ifname = wan6:ifname(),
- link = wan6:adminlink()
+ ip6addr = wan6:ip6addr(),
+ gw6addr = wan6:gw6addr(),
+ dns = wan6:dns6addrs(),
+ ip6prefix = wan6:ip6prefix(),
+ uptime = wan6:uptime(),
+ proto = wan6:proto(),
+ ifname = wan6:ifname(),
+ link = wan6:adminlink()
}
end
@@ -233,9 +233,34 @@
if (ifc6 && ifc6.ifname && ifc6.proto != 'none')
{
var s = String.format(
- '<strong><%:Address%>: </strong>%s<br />' +
+ '<strong><%:Type%>: </strong>%s%s<br />',
+ ifc6.proto, (ifc6.ip6prefix) ? '-pd' : ''
+ );
+
+ if (!ifc6.ip6prefix)
+ {
+ s += String.format(
+ '<strong><%:Address%>: </strong>%s<br />',
+ (ifc6.ip6addr) ? ifc6.ip6addr : '::'
+ );
+ }
+ else
+ {
+ s += String.format(
+ '<strong><%:Prefix Delegated%>: </strong>%s<br />',
+ ifc6.ip6prefix
+ );
+ if (ifc6.ip6addr)
+ {
+ s += String.format(
+ '<strong><%:Address%>: </strong>%s<br />',
+ ifc6.ip6addr
+ );
+ }
+ }
+
+ s += String.format(
'<strong><%:Gateway%>: </strong>%s<br />',
- (ifc6.ip6addr) ? ifc6.ip6addr : '::',
(ifc6.gw6addr) ? ifc6.gw6addr : '::'
);
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 82a1fdbc9..3e3f65d91 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
@@ -63,7 +63,7 @@
<% if upgrade_avail then %>
<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-descr"><%:Upload a sysupgrade-compatible image here to replace the running firmware. Check "Keep settings" to retain the current configuration (requires a compatible firmware image).%></div>
<div class="cbi-section-node">
<div class="cbi-value">
<label class="cbi-value-title" for="keep"><%:Keep settings%>:</label>
@@ -84,7 +84,7 @@
<% end %>
</form>
<% else %>
- <div class="cbi-section-descr"><%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the OpenWrt wiki for device specific install instructions.%></div>
+ <div class="cbi-section-descr"><%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the wiki for device specific install instructions.%></div>
<% end %>
</fieldset>
diff --git a/modules/luci-mod-admin-full/src/luci-bwc.c b/modules/luci-mod-admin-full/src/luci-bwc.c
index 63668d42b..8ddd91727 100644
--- a/modules/luci-mod-admin-full/src/luci-bwc.c
+++ b/modules/luci-mod-admin-full/src/luci-bwc.c
@@ -521,8 +521,8 @@ static int run_daemon(void)
if (strstr(line, "TIME_WAIT"))
continue;
- if (strstr(line, "src=127.0.0.1 ") &&
- strstr(line, "dst=127.0.0.1 "))
+ if ((strstr(line, "src=127.0.0.1 ") && strstr(line, "dst=127.0.0.1 "))
+ || (strstr(line, "src=::1 ") && strstr(line, "dst=::1 ")))
continue;
if (sscanf(line, "%*s %*d %s", ifname) || sscanf(line, "%s %*d", ifname))
diff --git a/modules/luci-mod-admin-mini/luasrc/model/cbi/mini/wifi.lua b/modules/luci-mod-admin-mini/luasrc/model/cbi/mini/wifi.lua
index 19952cd5d..ec929f1ed 100644
--- a/modules/luci-mod-admin-mini/luasrc/model/cbi/mini/wifi.lua
+++ b/modules/luci-mod-admin-mini/luasrc/model/cbi/mini/wifi.lua
@@ -156,18 +156,6 @@ end
local hwtype = m:get(wifidevs[1], "type")
-if hwtype == "atheros" then
- mode = s:option(ListValue, "hwmode", translate("Mode"))
- mode.override_values = true
- mode:value("", "auto")
- mode:value("11b", "802.11b")
- mode:value("11g", "802.11g")
- mode:value("11a", "802.11a")
- mode:value("11bg", "802.11b+g")
- mode.rmempty = true
-end
-
-
ch = s:option(Value, "channel", translate("Channel"))
for i=1, 14 do
ch:value(i, i .. " (2.4 GHz)")
@@ -224,7 +212,7 @@ encr.override_values = true
encr:value("none", "No Encryption")
encr:value("wep", "WEP")
-if hwtype == "atheros" or hwtype == "mac80211" then
+if hwtype == "mac80211" then
local supplicant = fs.access("/usr/sbin/wpa_supplicant")
local hostapd = fs.access("/usr/sbin/hostapd")
@@ -288,7 +276,7 @@ port:depends({mode="ap", encryption="wpa2"})
port.rmempty = true
-if hwtype == "atheros" or hwtype == "mac80211" then
+if hwtype == "mac80211" then
nasid = s:option(Value, "nasid", translate("NAS ID"))
nasid:depends({mode="ap", encryption="wpa"})
nasid:depends({mode="ap", encryption="wpa2"})
@@ -339,7 +327,7 @@ if hwtype == "atheros" or hwtype == "mac80211" then
end
-if hwtype == "atheros" or hwtype == "broadcom" then
+if hwtype == "broadcom" then
iso = s:option(Flag, "isolate", translate("AP-Isolation"), translate("Prevents Client to Client communication"))
iso.rmempty = true
iso:depends("mode", "ap")
@@ -349,7 +337,7 @@ if hwtype == "atheros" or hwtype == "broadcom" then
hide:depends("mode", "ap")
end
-if hwtype == "mac80211" or hwtype == "atheros" then
+if hwtype == "mac80211" then
bssid:depends({mode="adhoc"})
end
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 5818a567f..621e3cbe8 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/index.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/index.htm
@@ -9,5 +9,5 @@
<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>
<p><%:As we always want to improve this interface we are looking forward to your feedback and suggestions.%></p>
-<p><%:And now have fun with your OpenWrt device!%></p>
+<p><%:And now have fun with your device!%></p>
<p><em><strong><a href="<%=controller%>/about"><%_The <abbr title="Lua Configuration Interface">LuCI</abbr> Team%></a></strong></em></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 ecd1e8a7a..ef3e2e8d1 100644
--- a/modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm
+++ b/modules/luci-mod-admin-mini/luasrc/view/mini/upgrade.htm
@@ -13,7 +13,7 @@
<% if supported then %>
<form method="post" action="<%=REQUEST_URI%>" enctype="multipart/form-data">
<p>
- <%:Upload an OpenWrt image file to reflash the device.%>
+ <%:Upload a sysupgrade-compatible image file to reflash the device.%>
<% if bad_image then %>
<br /><br />
<div class="error"><%:The uploaded image file does not
@@ -38,7 +38,7 @@
</form>
<% else %>
<div class="error"><%_ Sorry.
- OpenWrt does not support a system upgrade on this platform.<br />
+ A system upgrade is not supported on this platform.<br />
You need to manually flash your device. %></div>
<% end %>
<% elseif step == 2 then %>
diff --git a/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm b/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm
index 3c8d11bb7..d6e9ad742 100644
--- a/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm
+++ b/modules/luci-mod-failsafe/luasrc/view/failsafe/flashops.htm
@@ -27,7 +27,7 @@
<% end %>
</form>
<% else %>
- <div class="cbi-section-descr"><%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the OpenWrt wiki for device specific install instructions.%></div>
+ <div class="cbi-section-descr"><%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the wiki for device specific install instructions.%></div>
<% end %>
</fieldset>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm
index 83e1ee579..f087472d3 100644
--- a/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm
@@ -38,9 +38,11 @@
<input type="hidden" name="confirm" value="1" />
<input type="checkbox" class="cbi-input-checkbox" name="keepcfg" value="1" checked="checked" id="cb_keepcfg" />
+ <label for="cb_keepcfg"></label>
<label for="cb_keepcfg"><%:Keep configuration%></label><br />
<input type="checkbox" class="cbi-input-checkbox" name="verify" value="1" checked="checked" id="cb_verify" />
+ <label for="cb_verify"></label>
<label for="cb_verify"><%:Verify downloaded images%></label><br /><br />
<input type="submit" class="cbi-button cbi-button-apply" value="<%:Confirm Upgrade%>" />
diff --git a/applications/luci-app-wshaper/Makefile b/protocols/luci-proto-ncm/Makefile
index 63e63aba2..5fd9c9a26 100644
--- a/applications/luci-app-wshaper/Makefile
+++ b/protocols/luci-proto-ncm/Makefile
@@ -6,8 +6,8 @@
include $(TOPDIR)/rules.mk
-LUCI_TITLE:=LuCI Support for wshaper
-LUCI_DEPENDS:=+wshaper
+LUCI_TITLE:=Support for NCM
+LUCI_DEPENDS:=+comgt-ncm
include ../../luci.mk
diff --git a/protocols/luci-proto-ncm/luasrc/model/cbi/admin_network/proto_ncm.lua b/protocols/luci-proto-ncm/luasrc/model/cbi/admin_network/proto_ncm.lua
new file mode 100644
index 000000000..917c88c92
--- /dev/null
+++ b/protocols/luci-proto-ncm/luasrc/model/cbi/admin_network/proto_ncm.lua
@@ -0,0 +1,157 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2015 Cezary Jackiewicz <cezary.jackiewicz@gmail.com>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+]]--
+
+local map, section, net = ...
+
+local device, apn, service, pincode, username, password, dialnumber
+local ipv6, maxwait, defaultroute, metric, peerdns, dns,
+ keepalive_failure, keepalive_interval, demand
+
+
+device = section:taboption("general", Value, "device", translate("Modem device"))
+device.rmempty = false
+
+local device_suggestions = nixio.fs.glob("/dev/cdc-wdm*")
+ or nixio.fs.glob("/dev/ttyUSB*")
+
+if device_suggestions then
+ local node
+ for node in device_suggestions do
+ device:value(node)
+ end
+end
+
+
+mode = section:taboption("general", Value, "mode", translate("Service Type"))
+mode.default = "auto"
+mode:value("preferlte", translate("Prefer LTE"))
+mode:value("preferumts", translate("Prefer UMTS"))
+mode:value("lte", "LTE")
+mode:value("umts", "UMTS/GPRS")
+mode:value("gsm", translate("GPRS only"))
+mode:value("auto", translate("auto"))
+
+
+apn = section:taboption("general", Value, "apn", translate("APN"))
+
+
+pincode = section:taboption("general", Value, "pincode", translate("PIN"))
+
+
+username = section:taboption("general", Value, "username", translate("PAP/CHAP username"))
+
+
+password = section:taboption("general", Value, "password", translate("PAP/CHAP password"))
+password.password = true
+
+dialnumber = section:taboption("general", Value, "dialnumber", translate("Dial number"))
+dialnumber.placeholder = "*99***1#"
+
+if luci.model.network:has_ipv6() then
+
+ ipv6 = section:taboption("advanced", ListValue, "ipv6")
+ ipv6:value("auto", translate("Automatic"))
+ ipv6:value("0", translate("Disabled"))
+ ipv6:value("1", translate("Manual"))
+ ipv6.default = "auto"
+
+end
+
+
+maxwait = section:taboption("advanced", Value, "maxwait",
+ translate("Modem init timeout"),
+ translate("Maximum amount of seconds to wait for the modem to become ready"))
+
+maxwait.placeholder = "20"
+maxwait.datatype = "min(1)"
+
+
+defaultroute = section:taboption("advanced", Flag, "defaultroute",
+ translate("Use default gateway"),
+ translate("If unchecked, no default route is configured"))
+
+defaultroute.default = defaultroute.enabled
+
+metric = section:taboption("advanced", Value, "metric",
+ translate("Use gateway metric"))
+
+metric.placeholder = "0"
+metric.datatype = "uinteger"
+metric:depends("defaultroute", defaultroute.enabled)
+
+
+peerdns = section:taboption("advanced", Flag, "peerdns",
+ translate("Use DNS servers advertised by peer"),
+ translate("If unchecked, the advertised DNS server addresses are ignored"))
+
+peerdns.default = peerdns.enabled
+
+
+dns = section:taboption("advanced", DynamicList, "dns",
+ translate("Use custom DNS servers"))
+
+dns:depends("peerdns", "")
+dns.datatype = "ipaddr"
+dns.cast = "string"
+
+
+keepalive_failure = section:taboption("advanced", Value, "_keepalive_failure",
+ translate("LCP echo failure threshold"),
+ translate("Presume peer to be dead after given amount of LCP echo failures, use 0 to ignore failures"))
+
+function keepalive_failure.cfgvalue(self, section)
+ local v = m:get(section, "keepalive")
+ if v and #v > 0 then
+ return tonumber(v:match("^(%d+)[ ,]+%d+") or v)
+ end
+end
+
+function keepalive_failure.write() end
+function keepalive_failure.remove() end
+
+keepalive_failure.placeholder = "0"
+keepalive_failure.datatype = "uinteger"
+
+
+keepalive_interval = section:taboption("advanced", Value, "_keepalive_interval",
+ translate("LCP echo interval"),
+ translate("Send LCP echo requests at the given interval in seconds, only effective in conjunction with failure threshold"))
+
+function keepalive_interval.cfgvalue(self, section)
+ local v = m:get(section, "keepalive")
+ if v and #v > 0 then
+ return tonumber(v:match("^%d+[ ,]+(%d+)"))
+ end
+end
+
+function keepalive_interval.write(self, section, value)
+ local f = tonumber(keepalive_failure:formvalue(section)) or 0
+ local i = tonumber(value) or 5
+ if i < 1 then i = 1 end
+ if f > 0 then
+ m:set(section, "keepalive", "%d %d" %{ f, i })
+ else
+ m:del(section, "keepalive")
+ end
+end
+
+keepalive_interval.remove = keepalive_interval.write
+keepalive_interval.placeholder = "5"
+keepalive_interval.datatype = "min(1)"
+
+
+demand = section:taboption("advanced", Value, "demand",
+ translate("Inactivity timeout"),
+ translate("Close inactive connection after the given amount of seconds, use 0 to persist connection"))
+
+demand.placeholder = "0"
+demand.datatype = "uinteger"
diff --git a/protocols/luci-proto-ncm/luasrc/model/network/proto_ncm.lua b/protocols/luci-proto-ncm/luasrc/model/network/proto_ncm.lua
new file mode 100644
index 000000000..6c5b34e08
--- /dev/null
+++ b/protocols/luci-proto-ncm/luasrc/model/network/proto_ncm.lua
@@ -0,0 +1,61 @@
+--[[
+LuCI - Network model - NCM protocol extension
+
+Copyright 2015 Cezary Jackiewicz <cezary.jackiewicz@gmail.com>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+]]--
+
+local netmod = luci.model.network
+
+local proto = netmod:register_protocol("ncm")
+local interface = luci.model.network.interface
+
+function proto.get_i18n(self)
+ return luci.i18n.translate("NCM")
+end
+
+function proto.opkg_package(self)
+ return "comgt-ncm"
+end
+
+function proto.is_installed(self)
+ return nixio.fs.access("/lib/netifd/proto/ncm.sh")
+end
+
+function proto.is_floating(self)
+ return true
+end
+
+function proto.is_virtual(self)
+ return true
+end
+
+function proto.get_interface(self)
+ local _ifname=netmod.protocol.ifname(self)
+ if not _ifname then
+ _ifname = "wan"
+ end
+ return interface(_ifname, self)
+end
+
+function proto.get_interfaces(self)
+ return nil
+end
+
+function proto.contains_interface(self, ifc)
+ return (netmod:ifnameof(ifc) == self:ifname())
+end
+
+netmod:register_pattern_virtual("^ncm-%%w")
diff --git a/protocols/luci-proto-qmi/Makefile b/protocols/luci-proto-qmi/Makefile
new file mode 100644
index 000000000..8b2b5e37e
--- /dev/null
+++ b/protocols/luci-proto-qmi/Makefile
@@ -0,0 +1,14 @@
+#
+# Copyright (C) 2008-2014 The LuCI Team <luci@lists.subsignal.org>
+#
+# This is free software, licensed under the Apache License, Version 2.0 .
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=Support for QMI
+LUCI_DEPENDS:=+uqmi
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/protocols/luci-proto-qmi/luasrc/model/cbi/admin_network/proto_qmi.lua b/protocols/luci-proto-qmi/luasrc/model/cbi/admin_network/proto_qmi.lua
new file mode 100644
index 000000000..e11201d21
--- /dev/null
+++ b/protocols/luci-proto-qmi/luasrc/model/cbi/admin_network/proto_qmi.lua
@@ -0,0 +1,45 @@
+-- Copyright 2016 David Thornley <david.thornley@touchstargroup.com>
+-- Licensed to the public under the Apache License 2.0.
+
+local map, section, net = ...
+
+local device, apn, pincode, username, password
+local auth, ipv6
+
+
+device = section:taboption("general", Value, "device", translate("Modem device"))
+device.rmempty = false
+
+local device_suggestions = nixio.fs.glob("/dev/cdc-wdm*")
+
+if device_suggestions then
+ local node
+ for node in device_suggestions do
+ device:value(node)
+ end
+end
+
+
+apn = section:taboption("general", Value, "apn", translate("APN"))
+
+
+pincode = section:taboption("general", Value, "pincode", translate("PIN"))
+
+
+username = section:taboption("general", Value, "username", translate("PAP/CHAP username"))
+
+
+password = section:taboption("general", Value, "password", translate("PAP/CHAP password"))
+password.password = true
+
+auth = section:taboption("general", Value, "auth", translate("Authentication Type"))
+auth:value("", translate("-- Please choose --"))
+auth:value("both", "PAP/CHAP (both)")
+auth:value("pap", "PAP")
+auth:value("chap", "CHAP")
+auth:value("none", "NONE")
+
+if luci.model.network:has_ipv6() then
+ ipv6 = section:taboption("advanced", Flag, "ipv6", translate("Enable IPv6 negotiation"))
+ ipv6.default = ipv6.disabled
+end
diff --git a/protocols/luci-proto-qmi/luasrc/model/network/proto_qmi.lua b/protocols/luci-proto-qmi/luasrc/model/network/proto_qmi.lua
new file mode 100644
index 000000000..cca8af109
--- /dev/null
+++ b/protocols/luci-proto-qmi/luasrc/model/network/proto_qmi.lua
@@ -0,0 +1,51 @@
+-- Copyright 2016 David Thornley <david.thornley@touchstargroup.com>
+-- Licensed to the public under the Apache License 2.0.
+
+local netmod = luci.model.network
+local interface = luci.model.network.interface
+local proto = netmod:register_protocol("qmi")
+
+function proto.get_i18n(self)
+ return luci.i18n.translate("QMI Cellular")
+end
+
+function proto.ifname(self)
+ local base = netmod._M.protocol
+ local ifname = base.ifname(self) -- call base class "protocol.ifname(self)"
+
+ -- Note: ifname might be nil if the adapter could not be determined through ubus (default name to qmi-wan in this case)
+ if ifname == nil then
+ ifname = "qmi-" .. self.sid
+ end
+ return ifname
+end
+
+function proto.get_interface(self)
+ return interface(self:ifname(), self)
+end
+
+function proto.opkg_package(self)
+ return "uqmi"
+end
+
+function proto.is_installed(self)
+ return nixio.fs.access("/lib/netifd/proto/qmi.sh")
+end
+
+function proto.is_floating(self)
+ return true
+end
+
+function proto.is_virtual(self)
+ return true
+end
+
+function proto.get_interfaces(self)
+ return nil
+end
+
+function proto.contains_interface(self, ifc)
+ return (netmod:ifnameof(ifc) == self:ifname())
+end
+
+netmod:register_pattern_virtual("^qmi-%w")
diff --git a/protocols/luci-proto-vpnc/Makefile b/protocols/luci-proto-vpnc/Makefile
index 9c77e67a5..0800e279f 100644
--- a/protocols/luci-proto-vpnc/Makefile
+++ b/protocols/luci-proto-vpnc/Makefile
@@ -10,9 +10,6 @@ LUCI_TITLE:=Support for VPNC VPN
LUCI_DEPENDS:=+vpnc
LUCI_PKGARCH:=all
-PKG_NAME:=luci-proto-vpnc
-PKG_RELEASE=1
-PKG_VERSION:=1.0.0
PKG_MAINTAINER:=Daniel Dickinson <openwrt@daniel.thecshore.com>
PKG_LICENSE:=Apache-2.0
@@ -20,4 +17,4 @@ LUA_TARGET:=source
include ../../luci.mk
-# call BuildPackage - OpenWrt buildroot signature \ No newline at end of file
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/protocols/luci-proto-wireguard/Makefile b/protocols/luci-proto-wireguard/Makefile
index ed94a557b..0dc70cf31 100644
--- a/protocols/luci-proto-wireguard/Makefile
+++ b/protocols/luci-proto-wireguard/Makefile
@@ -8,6 +8,7 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Support for WireGuard VPN
LUCI_DEPENDS:=+kmod-wireguard +wireguard-tools
+LUCI_PKGARCH:=all
PKG_MAINTAINER:=Dan Luedtke <mail@danrl.com>
diff --git a/protocols/luci-proto-wireguard/luasrc/model/cbi/admin_network/proto_wireguard.lua b/protocols/luci-proto-wireguard/luasrc/model/cbi/admin_network/proto_wireguard.lua
index 774c6db22..11ef10b5a 100644
--- a/protocols/luci-proto-wireguard/luasrc/model/cbi/admin_network/proto_wireguard.lua
+++ b/protocols/luci-proto-wireguard/luasrc/model/cbi/admin_network/proto_wireguard.lua
@@ -1,4 +1,4 @@
--- Copyright 2016 Dan Luedtke <mail@danrl.com>
+-- Copyright 2016-2017 Dan Luedtke <mail@danrl.com>
-- Licensed to the public under the Apache License 2.0.
@@ -19,7 +19,7 @@ private_key = section:taboption(
translate("Required. Base64-encoded private key for this interface.")
)
private_key.password = true
-private_key.datatype = "rangelength(44, 44)"
+private_key.datatype = "and(base64,rangelength(44,44))"
private_key.optional = false
@@ -34,6 +34,16 @@ listen_port.datatype = "port"
listen_port.placeholder = "51820"
listen_port.optional = true
+addresses = section:taboption(
+ "general",
+ DynamicList,
+ "addresses",
+ translate("IP Addresses"),
+ translate("Recommended. IP addresses of the WireGuard interface.")
+)
+addresses.datatype = "ipaddr"
+addresses.optional = true
+
-- advanced --------------------------------------------------------------------
@@ -56,8 +66,8 @@ mtu = section:taboption(
translate("MTU"),
translate("Optional. Maximum Transmission Unit of tunnel interface.")
)
-mtu.datatype = "range(1280,1423)"
-mtu.placeholder = "1423"
+mtu.datatype = "range(1280,1420)"
+mtu.placeholder = "1420"
mtu.optional = true
@@ -66,14 +76,27 @@ preshared_key = section:taboption(
Value,
"preshared_key",
translate("Preshared Key"),
- translate("Optional. Adds in an additional layer of symmetric-key " ..
+ translate("Optional. Base64-encoded preshared key. " ..
+ "Adds in an additional layer of symmetric-key " ..
"cryptography for post-quantum resistance.")
)
preshared_key.password = true
-preshared_key.datatype = "rangelength(44, 44)"
+preshared_key.datatype = "and(base64,rangelength(44,44))"
preshared_key.optional = true
+fwmark = section:taboption(
+ "advanced",
+ Value,
+ "fwmark",
+ translate("Firewall Mark"),
+ translate("Optional. 32-bit mark for outgoing encrypted packets. " ..
+ "Enter value in hex, starting with <code>0x</code>.")
+)
+fwmark.datatype = "hex(4)"
+fwmark.optional = true
+
+
-- peers -----------------------------------------------------------------------
peers = map:section(
@@ -92,9 +115,9 @@ public_key = peers:option(
Value,
"public_key",
translate("Public Key"),
- translate("Required. Public key of peer.")
+ translate("Required. Base64-encoded public key of peer.")
)
-public_key.datatype = "rangelength(44, 44)"
+public_key.datatype = "and(base64,rangelength(44,44))"
public_key.optional = false
@@ -144,5 +167,5 @@ persistent_keepalive = peers:option(
translate("Optional. Seconds between keep alive messages. " ..
"Default is 0 (disabled). Recommended value if " ..
"this device is behind a NAT is 25."))
-persistent_keepalive.datatype = "range(0, 65535)"
+persistent_keepalive.datatype = "range(0,65535)"
persistent_keepalive.placeholder = "0"
diff --git a/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css b/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css
index ef19e7c11..8d0c434a9 100644
--- a/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css
+++ b/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css
@@ -447,7 +447,7 @@ form .cbi-value:before, form .cbi-value:after {
zoom: 1;
}
-form .clearfix:after
+form .clearfix:after,
form .cbi-value:after {
clear: both;
}
@@ -500,6 +500,8 @@ select,
select {
padding: initial;
+ background: #fff;
+ box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
input[type=checkbox], input[type=radio] {
@@ -996,7 +998,7 @@ a.menu:after, .dropdown-toggle:after {
.menu-dropdown li, .dropdown-menu li {
float: none;
display: block;
- background-color: none;
+ background-color: transparent;
}
.menu-dropdown .divider, .dropdown-menu .divider {
@@ -1732,7 +1734,6 @@ a.label:hover {
color: #808080;
display: inline-block;
font-size: 13px;
- height: 22 dpx;
line-height: 18px;
}
diff --git a/themes/luci-theme-bootstrap/luasrc/view/themes/bootstrap/header.htm b/themes/luci-theme-bootstrap/luasrc/view/themes/bootstrap/header.htm
index 6f09bfcdf..78b98e035 100644
--- a/themes/luci-theme-bootstrap/luasrc/view/themes/bootstrap/header.htm
+++ b/themes/luci-theme-bootstrap/luasrc/view/themes/bootstrap/header.htm
@@ -201,5 +201,12 @@
</div>
<%- end -%>
+ <noscript>
+ <div class="alert-message warning">
+ <strong><%:JavaScript required!%></strong><br />
+ <%:You must enable JavaScript in your browser or LuCI will not work properly.%>
+ </div>
+ </noscript>
+
<div id="maincontent" class="container">
<% if category then render_tabmenu(category, cattree) end %>
diff --git a/themes/luci-theme-freifunk-generic/luasrc/view/themes/freifunk-generic/header.htm b/themes/luci-theme-freifunk-generic/luasrc/view/themes/freifunk-generic/header.htm
index 20a41be85..b4534090f 100644
--- a/themes/luci-theme-freifunk-generic/luasrc/view/themes/freifunk-generic/header.htm
+++ b/themes/luci-theme-freifunk-generic/luasrc/view/themes/freifunk-generic/header.htm
@@ -216,8 +216,8 @@ if tree.nodes[category] and tree.nodes[category].ucidata then
<% if category ~= "freifunk" and category ~= "splash" then %>
<noscript>
<div class="errorbox">
- <strong><%:Java Script required!%></strong><br />
- <%:You must enable Java Script in your browser or LuCI will not work properly.%>
+ <strong><%:JavaScript required!%></strong><br />
+ <%:You must enable JavaScript in your browser or LuCI will not work properly.%>
</div>
</noscript>
<% end %>
diff --git a/themes/luci-theme-material/luasrc/view/themes/material/footer.htm b/themes/luci-theme-material/luasrc/view/themes/material/footer.htm
index edf85dcdb..d69417e88 100755
--- a/themes/luci-theme-material/luasrc/view/themes/material/footer.htm
+++ b/themes/luci-theme-material/luasrc/view/themes/material/footer.htm
@@ -29,7 +29,7 @@
</div>
<footer class="mobile-hide">
<a href="https://github.com/openwrt/luci">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
- <a href="https://openwrt.org/"><%= ver.distversion %></a>
+ <%= ver.distversion %>
<% if #categories > 1 then %>
<ul class="breadcrumb pull-right" id="modemenu">
<% for i, r in ipairs(categories) do %>
diff --git a/themes/luci-theme-material/luasrc/view/themes/material/header.htm b/themes/luci-theme-material/luasrc/view/themes/material/header.htm
index 8419ade76..d84fd278a 100755..100644
--- a/themes/luci-theme-material/luasrc/view/themes/material/header.htm
+++ b/themes/luci-theme-material/luasrc/view/themes/material/header.htm
@@ -2,14 +2,14 @@
Material is a clean HTML5 theme for LuCI. It is based on luci-theme-bootstrap and MUI
luci-theme-material
- Copyright 2015 Lutty Yang <lutty@wcan.in>
+ Copyright 2015-2017 Lutty Yang <lutty@wcan.in>
Have a bug? Please create an issue here on GitHub!
https://github.com/LuttyYang/luci-theme-material/issues
luci-theme-bootstrap:
Copyright 2008 Steven Barth <steven@midlink.org>
- Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
+ Copyright 2008-2016 Jo-Philipp Wich <jow@openwrt.org>
Copyright 2012 David Menting <david@nut-bolt.nl>
MUI:
@@ -19,7 +19,6 @@
-%>
<%
- local ver = require "luci.version"
local sys = require "luci.sys"
local util = require "luci.util"
local http = require "luci.http"
@@ -51,30 +50,27 @@
end
end
- -- send as HTML5
+ -- send as HTML5
http.prepare_content("text/html")
local function nodeurl(prefix, name, query)
- local url = controller .. prefix .. name .. "/"
+ local u = url(prefix, name)
if query then
- url = url .. http.build_querystring(query)
+ u = u .. http.build_querystring(query)
end
- return pcdata(url)
+ return pcdata(u)
end
- local function subtree(prefix, node, level)
+ local function render_tabmenu(prefix, node, level)
if not level then
level = 1
end
local childs = disp.node_childs(node)
if #childs > 0 then
-
- if level > 2 then
-%>
- <ul class="tabs">
- <%
- end
+ if level > 2 then
+ write('<ul class="tabs">')
+ end
local selected_node
local selected_name
@@ -86,21 +82,100 @@
selected_node = nnode
selected_name = v
end
- if level > 2 then
- %>
- <li class="tabmenu-item-<%=v%><%- if nnode._menu_selected or (node.leaf and v == leaf) then %> active<% end %>">
- <a href="<%=nodeurl(prefix, v, nnode.query)%>"><%=striptags(translate(nnode.title))%></a>
- </li>
- <% end
+
+ if level > 2 then
+ write('<li class="tabmenu-item-%s %s"><a href="%s">%s</a></li>' %{
+ v, (nnode._menu_selected or (node.leaf and v == leaf)) and 'active' or '',
+ nodeurl(prefix, v, nnode.query),
+ striptags(translate(nnode.title))
+ })
+ end
end
- if level > 2 then
- %>
- </ul>
-<% end
+ if level > 2 then
+ write('</ul>')
+ end
if selected_node then
- subtree(prefix .. selected_name .. "/", selected_node, level + 1)
+ render_tabmenu(prefix .. "/" .. selected_name, selected_node, level + 1)
+ end
+ end
+ end
+
+ local function render_submenu(prefix, node)
+ local childs = disp.node_childs(node)
+ if #childs > 0 then
+ write('<ul class="slide-menu">')
+
+ for i, r in ipairs(childs) do
+ local nnode = node.nodes[r]
+ local title = pcdata(striptags(translate(nnode.title)))
+
+ write('<li><a data-title="%s" href="%s">%s</a></li>' %{
+ title,
+ nodeurl(prefix, r, nnode.query),
+ title
+ })
+ end
+
+ write('</ul>')
+ end
+ end
+
+ local function render_topmenu()
+ local childs = disp.node_childs(cattree)
+ if #childs > 0 then
+ write('<ul class="nav">')
+
+ for i, r in ipairs(childs) do
+ local nnode = cattree.nodes[r]
+ local grandchildren = disp.node_childs(nnode)
+
+ if #grandchildren > 0 then
+ local title = pcdata(striptags(translate(nnode.title)))
+
+ write('<li class="slide"><a class="menu" data-title="%s" href="#">%s</a>' %{
+ title,
+ title
+ })
+
+ render_submenu(category .. "/" .. r, nnode)
+ write('</li>')
+ else
+ local title = pcdata(striptags(translate(nnode.title)))
+
+ write('<li><a data-title="%s" href="%s">%s</a></li>' %{
+ title,
+ nodeurl(category, r, nnode.query),
+ title
+ })
+ end
+ end
+
+ write('</ul>')
+ end
+ end
+
+ local function render_changes()
+ -- calculate the number of unsaved changes
+ if tree.nodes[category] and tree.nodes[category].ucidata then
+ local ucichanges = 0
+
+ for i, j in pairs(require("luci.model.uci").cursor():changes()) do
+ for k, l in pairs(j) do
+ for m, n in pairs(l) do
+ ucichanges = ucichanges + 1;
+ end
+ end
+ end
+
+ if ucichanges > 0 then
+ write('<a class="label notice" href="%s?redir=%s">%s: %d</a>' %{
+ url(category, 'uci/changes'),
+ http.urlencode(http.formvalue('redir') or REQUEST_URI),
+ translate('Unsaved Changes'),
+ ucichanges
+ })
end
end
end
@@ -134,96 +209,30 @@
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
<% end -%>
<% if css then %>
- <style title="text/css">
- <%-= css %>
- </style>
+ <style title="text/css"><%= css %></style>
<% end -%>
<script src="<%=resource%>/xhr.js"></script>
</head>
-
<body class="lang_<%=luci.i18n.context.lang%> <%- if node then %><%= striptags( node.title ) %><%- end %> <% if luci.dispatcher.context.authsession then %>logged-in<% end %>">
-
<header>
<div class="container">
<span class="showSide"></span>
<a class="brand" href="#"><%=boardinfo.hostname or "?"%></a>
<div class="pull-right">
- <%
- -- calculate the number of unsaved changes
- if tree.nodes[category] and tree.nodes[category].ucidata then
- local ucichanges = 0
- for i, j in pairs(require("luci.model.uci").cursor():changes()) do
- for k, l in pairs(j) do
- for m, n in pairs(l) do
- ucichanges = ucichanges + 1;
- end
- end
- end
- %>
- <% if ucichanges > 0 then %>
- <a class="label notice" href="<%=controller%>/<%=category%>/uci/changes?redir=<%=http.urlencode(http.formvalue("redir") or REQUEST_URI)%>"><span class="mobile-hide"><%:Unsaved Changes%>: </span><%=ucichanges%></a>
- <% end %>
+ <% render_changes() %>
<span id="xhr_poll_status" style="display:none" onclick="XHR.running() ? XHR.halt() : XHR.run()">
- <span class="label success" id="xhr_poll_status_on"><span class="mobile-hide"><%:Auto Refresh%> </span><%:on%></span>
- <span class="label" id="xhr_poll_status_off" style="display:none"><span class="mobile-hide"><%:Auto Refresh%> </span><%:off%></span>
+ <span class="label success" id="xhr_poll_status_on"><span class="mobile-hide"><%:Auto Refresh%></span> <%:on%></span>
+ <span class="label" id="xhr_poll_status_off" style="display:none"><span class="mobile-hide"><%:Auto Refresh%></span> <%:off%></span>
</span>
- <% end %>
</div>
</div>
</header>
-
- <div class="main">
+<div class="main">
<div style="" class="loading"><span><div class="loading-img"></div>Loading...</span></div>
<div class="main-left">
- <ul class="nav">
- <%-
- local function submenu(prefix, node)
- local childs = disp.node_childs(node)
- if #childs > 0 then
- %>
- <ul class="slide-menu">
- <%-
- for i, r in ipairs(childs) do
- local nnode = node.nodes[r]
- local href = controller .. prefix .. r ..
- (nnode.query and http.build_querystring(nnode.query) or "")
- %>
- <li><a data-title="<%=pcdata(striptags(nnode.title))%>" href="<%=pcdata(href)%>"><%=pcdata(striptags(translate(nnode.title)))%></a></li>
- <%-
- end
- %>
- </ul>
- <%-
- end
- end
-
- childs = disp.node_childs(cattree)
-
- if #childs > 0 then
- for i, r in ipairs(childs) do
- local nnode = cattree.nodes[r]
- local href = controller .. "/" .. category .. "/" .. r ..
- (nnode.query and http.build_querystring(k.query) or "")
- local grandchildren = disp.node_childs(nnode)
-
- if #grandchildren > 0 then
- %>
- <li class="slide">
- <a class="menu" data-title="<%=pcdata(striptags(nnode.title))%>" href="#"><%=pcdata(striptags(translate(nnode.title)))%></a>
- <%- submenu(category .. "/" .. r .. "/", nnode) %>
- </li>
- <% else %>
- <li>
- <a data-title="<%=pcdata(striptags(nnode.title))%>" href="<%=pcdata(href)%>"><%=pcdata(striptags(translate(nnode.title)))%></a>
- </li>
- <%
- end
- end
- end
- %>
- </ul>
+ <% render_topmenu() %>
</div>
- <div class="main-right">
+ <div class="main-right">
<div class="darkMask"></div>
<div id="maincontent">
<div class="container">
@@ -234,5 +243,11 @@
<a href="<%=pcdata(luci.dispatcher.build_url("admin/system/admin"))%>"><%:Go to password configuration...%></a>
</div>
<%- end -%>
- <% if category then subtree("/" .. category .. "/", cattree) end %>
-
+ <% if category then render_tabmenu(category, cattree) end %>
+
+ <noscript>
+ <div class="alert-message warning">
+ <strong><%:JavaScript required!%></strong><br />
+ <%:You must enable JavaScript in your browser or LuCI will not work properly.%>
+ </div>
+ </noscript>
diff --git a/themes/luci-theme-openwrt/luasrc/view/themes/openwrt.org/header.htm b/themes/luci-theme-openwrt/luasrc/view/themes/openwrt.org/header.htm
index 505e64b95..ae348f385 100644
--- a/themes/luci-theme-openwrt/luasrc/view/themes/openwrt.org/header.htm
+++ b/themes/luci-theme-openwrt/luasrc/view/themes/openwrt.org/header.htm
@@ -179,8 +179,8 @@
<div id="maincontent">
<noscript>
<div class="errorbox">
- <strong><%:Java Script required!%></strong><br />
- <%:You must enable Java Script in your browser or LuCI will not work properly.%>
+ <strong><%:JavaScript required!%></strong><br />
+ <%:You must enable JavaScript in your browser or LuCI will not work properly.%>
</div>
</noscript>