Merge pull request #1380 from jcadduono/minidlna
authorHannu Nyman <hannu.nyman@iki.fi>
Sat, 21 Oct 2017 06:50:01 +0000 (09:50 +0300)
committerGitHub <noreply@github.com>
Sat, 21 Oct 2017 06:50:01 +0000 (09:50 +0300)
luci-app-minidlna: add allow wide links option

114 files changed:
applications/luci-app-adblock/po/sv/adblock.po
applications/luci-app-advanced-reboot/po/sv/luci-app-advanced-reboot.po
applications/luci-app-aria2/po/zh-cn/aria2.po
applications/luci-app-attendedsysupgrade/luasrc/view/attendedsysupgrade.htm
applications/luci-app-ddns/po/it/ddns.po
applications/luci-app-diag-devinfo/po/sv/diag_devinfo.po
applications/luci-app-dnscrypt-proxy/luasrc/controller/dnscrypt-proxy.lua
applications/luci-app-dnscrypt-proxy/luasrc/model/cbi/dnscrypt-proxy/cfg_dnsmasq_tab.lua
applications/luci-app-dnscrypt-proxy/luasrc/model/cbi/dnscrypt-proxy/cfg_resolvcrypt_tab.lua [new file with mode: 0644]
applications/luci-app-dnscrypt-proxy/luasrc/model/cbi/dnscrypt-proxy/overview_tab.lua
applications/luci-app-dnscrypt-proxy/po/ja/dnscrypt-proxy.po
applications/luci-app-dnscrypt-proxy/po/templates/dnscrypt-proxy.pot
applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd
applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh
applications/luci-app-minidlna/luasrc/model/cbi/minidlna.lua
applications/luci-app-minidlna/po/ca/minidlna.po
applications/luci-app-minidlna/po/cs/minidlna.po
applications/luci-app-minidlna/po/de/minidlna.po
applications/luci-app-minidlna/po/el/minidlna.po
applications/luci-app-minidlna/po/en/minidlna.po
applications/luci-app-minidlna/po/es/minidlna.po
applications/luci-app-minidlna/po/fr/minidlna.po
applications/luci-app-minidlna/po/he/minidlna.po
applications/luci-app-minidlna/po/hu/minidlna.po
applications/luci-app-minidlna/po/it/minidlna.po
applications/luci-app-minidlna/po/ja/minidlna.po
applications/luci-app-minidlna/po/ms/minidlna.po
applications/luci-app-minidlna/po/no/minidlna.po
applications/luci-app-minidlna/po/pl/minidlna.po
applications/luci-app-minidlna/po/pt-br/minidlna.po
applications/luci-app-minidlna/po/pt/minidlna.po
applications/luci-app-minidlna/po/ro/minidlna.po
applications/luci-app-minidlna/po/ru/minidlna.po
applications/luci-app-minidlna/po/sk/minidlna.po
applications/luci-app-minidlna/po/sv/minidlna.po
applications/luci-app-minidlna/po/templates/minidlna.pot
applications/luci-app-minidlna/po/tr/minidlna.po
applications/luci-app-minidlna/po/uk/minidlna.po
applications/luci-app-minidlna/po/vi/minidlna.po
applications/luci-app-minidlna/po/zh-cn/minidlna.po
applications/luci-app-minidlna/po/zh-tw/minidlna.po
applications/luci-app-noddos/Makefile [new file with mode: 0644]
applications/luci-app-noddos/htdocs/cgi-bin/clientdetails [new file with mode: 0755]
applications/luci-app-noddos/luasrc/controller/noddos.lua [new file with mode: 0644]
applications/luci-app-noddos/luasrc/model/cbi/noddos.lua [new file with mode: 0644]
applications/luci-app-noddos/luasrc/view/noddos/clients.htm [new file with mode: 0644]
applications/luci-app-noddos/po/ja/noddos.po [new file with mode: 0644]
applications/luci-app-noddos/po/templates/noddos.pot [new file with mode: 0644]
applications/luci-app-noddos/root/etc/uci-defaults/40_luci-noddos [new file with mode: 0644]
applications/luci-app-openvpn/luasrc/model/cbi/openvpn-advanced.lua
applications/luci-app-openvpn/po/ca/openvpn.po
applications/luci-app-openvpn/po/cs/openvpn.po
applications/luci-app-openvpn/po/de/openvpn.po
applications/luci-app-openvpn/po/el/openvpn.po
applications/luci-app-openvpn/po/en/openvpn.po
applications/luci-app-openvpn/po/es/openvpn.po
applications/luci-app-openvpn/po/fr/openvpn.po
applications/luci-app-openvpn/po/he/openvpn.po
applications/luci-app-openvpn/po/hu/openvpn.po
applications/luci-app-openvpn/po/it/openvpn.po
applications/luci-app-openvpn/po/ja/openvpn.po
applications/luci-app-openvpn/po/ms/openvpn.po
applications/luci-app-openvpn/po/no/openvpn.po
applications/luci-app-openvpn/po/pl/openvpn.po
applications/luci-app-openvpn/po/pt-br/openvpn.po
applications/luci-app-openvpn/po/pt/openvpn.po
applications/luci-app-openvpn/po/ro/openvpn.po
applications/luci-app-openvpn/po/ru/openvpn.po
applications/luci-app-openvpn/po/sk/openvpn.po
applications/luci-app-openvpn/po/sv/openvpn.po
applications/luci-app-openvpn/po/templates/openvpn.pot
applications/luci-app-openvpn/po/tr/openvpn.po
applications/luci-app-openvpn/po/uk/openvpn.po
applications/luci-app-openvpn/po/vi/openvpn.po
applications/luci-app-openvpn/po/zh-cn/openvpn.po
applications/luci-app-openvpn/po/zh-tw/openvpn.po
applications/luci-app-p2pblock/po/pt-br/p2pblock.po
applications/luci-app-radicale/po/pt-br/radicale.po
applications/luci-app-simple-adblock/po/sv/simple-adblock.po [new file with mode: 0644]
applications/luci-app-splash/po/sv/splash.po
applications/luci-app-upnp/po/zh-cn/upnp.po
modules/luci-base/Makefile
modules/luci-base/luasrc/model/firewall.lua
modules/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm
modules/luci-base/po/ca/base.po
modules/luci-base/po/cs/base.po
modules/luci-base/po/de/base.po
modules/luci-base/po/el/base.po
modules/luci-base/po/en/base.po
modules/luci-base/po/es/base.po
modules/luci-base/po/fr/base.po
modules/luci-base/po/he/base.po
modules/luci-base/po/hu/base.po
modules/luci-base/po/it/base.po
modules/luci-base/po/ja/base.po
modules/luci-base/po/ko/base.po
modules/luci-base/po/ms/base.po
modules/luci-base/po/no/base.po
modules/luci-base/po/pl/base.po
modules/luci-base/po/pt-br/base.po
modules/luci-base/po/pt/base.po
modules/luci-base/po/ro/base.po
modules/luci-base/po/ru/base.po
modules/luci-base/po/sk/base.po
modules/luci-base/po/sv/base.po
modules/luci-base/po/templates/base.pot
modules/luci-base/po/tr/base.po
modules/luci-base/po/uk/base.po
modules/luci-base/po/vi/base.po
modules/luci-base/po/zh-cn/base.po
modules/luci-base/po/zh-tw/base.po
modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua
modules/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm
modules/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm

index 4cb932c6017293b48da0d0d77b72105c85387217..449b22eae55c1f528bc75a93bd1c2277a18eb7d5 100644 (file)
@@ -2,7 +2,7 @@ msgid ""
 msgstr "Content-Type: text/plain; charset=UTF-8\n"
 
 msgid "-------"
-msgstr ""
+msgstr "-------"
 
 msgid "Adblock"
 msgstr "Adblock"
@@ -11,10 +11,10 @@ msgid "Adblock Logfile"
 msgstr "Adblock's loggfil"
 
 msgid "Adblock Status"
-msgstr ""
+msgstr "Status för Adblock"
 
 msgid "Adblock Version"
-msgstr "Version för Adblock"
+msgstr "Version av Adblock"
 
 msgid "Additional trigger delay in seconds before adblock processing begins."
 msgstr ""
@@ -35,11 +35,15 @@ msgid ""
 "Caution: Please don't select big lists or many lists at once on low memory "
 "devices to prevent OOM exceptions!"
 msgstr ""
+"Försiktig: Vänligen välj inte stora listor eller många listor på samma gång för enheter "
+"med lite minne för att undvika OOM-undantag!"
 
 msgid ""
 "Choose 'none' to disable automatic startups, 'timed' to use a classic "
 "timeout (default 30 sec.) or select another trigger interface."
 msgstr ""
+"Välj 'inga' för att stänga av automatiska uppstarter, 'tidsinställd för att använda ett klassiskt "
+"avbrott (30 sek. är standard) eller välj ett annat utlösande gränssnitt."
 
 msgid "Collecting data..."
 msgstr "Samlar in data..."
@@ -56,10 +60,10 @@ msgid ""
 msgstr ""
 
 msgid "DNS Backend (DNS Directory)"
-msgstr ""
+msgstr "DNS-bakände (DNS-mapp)"
 
 msgid "DNS Directory"
-msgstr ""
+msgstr "DNS-mapp"
 
 msgid "Description"
 msgstr "Beskrivning"
@@ -135,7 +139,7 @@ msgid "Invalid domain specified!"
 msgstr "Ogiltig domän angiven!"
 
 msgid "Last Run"
-msgstr ""
+msgstr "Kördes senast"
 
 msgid ""
 "List URLs and Shallalist category selections are configurable in the "
@@ -180,7 +184,7 @@ msgid "Please edit this file directly in a terminal session."
 msgstr "Vänligen redigera den här filen direkt i en terminal-session."
 
 msgid "Please update your adblock config file to use this package."
-msgstr ""
+msgstr "Vänligen uppdatera din adblock's konfigurationsfil till att använda det här paketet."
 
 msgid "Query"
 msgstr "Fråga"
@@ -192,7 +196,7 @@ msgid "Redirect all DNS queries from 'lan' zone to the local resolver."
 msgstr ""
 
 msgid "Resume"
-msgstr ""
+msgstr "Återuppta"
 
 msgid "Runtime Information"
 msgstr "Information om körtid"
@@ -204,10 +208,10 @@ msgid "Save"
 msgstr "Spara"
 
 msgid "Startup Trigger"
-msgstr ""
+msgstr "Uppstartslösare"
 
 msgid "Suspend"
-msgstr ""
+msgstr "Stäng av"
 
 msgid "Suspend / Resume Adblock"
 msgstr "Upphäv / Återuppta adblock"
@@ -275,19 +279,19 @@ msgid "Yes"
 msgstr "Ja"
 
 msgid "disabled"
-msgstr ""
+msgstr "inaktiverad"
 
 msgid "enabled"
-msgstr ""
+msgstr "aktiverad"
 
 msgid "error"
-msgstr ""
+msgstr "fel"
 
 msgid "n/a"
 msgstr "n/a"
 
 msgid "paused"
-msgstr ""
+msgstr "pausad"
 
 #~ msgid "Blocked domains (overall)"
 #~ msgstr "Blockerade domäner (övergripande)"
index cac09d76a6fb5bc8ef9b41c2c14626f93879f94a..20d77cbcf7e7960255b4350021c4ba4040e18016 100644 (file)
@@ -1,5 +1,5 @@
 msgid ""
-msgstr "Content-Type: text/plain; charset=UTF-8"
+msgstr "Content-Type: text/plain; charset=UTF-8\n"
 
 msgid "Action"
 msgstr "Åtgärd"
@@ -74,9 +74,9 @@ msgid ""
 "might be necessary to renew the address of your computer to reach the device "
 "again, depending on your settings."
 msgstr ""
-"Systemet stänger ner nu.<br /> STÄNG INTE AV ENHETEN!<br /> Beroende 
-"på dina inställningar så kan det vara nödvändigt att förnya din dators adress "
-"för att nå enheten igen."
+"Systemet stänger ner nu.<br /> STÄNG INTE AV ENHETEN!<br /> Beroende på dina "
+"inställningar så kan det vara nödvändigt att förnya din dators adress för "
+"att nå enheten igen."
 
 msgid ""
 "WARNING: An alternative partition might have its own settings and completely "
@@ -94,12 +94,13 @@ msgid ""
 "support power off.<br /><br /> Click \"Proceed\" below to power off your "
 "device."
 msgstr ""
-"VARNING: Att stänga av kan resultera i en omstart i en enhet som inte "
-"har stöd för avstängning.<br /><br /> Klicka på \"Fortsätt\" nedanför för att stänga av din "
-"enhet."
+"VARNING: Att stänga av kan resultera i en omstart i en enhet som inte har "
+"stöd för avstängning.<br /><br /> Klicka på \"Fortsätt\" nedanför för att "
+"stänga av din enhet."
 
 msgid "Warning: There are unsaved changes that will get lost on reboot!"
-msgstr "Varning: Det finns osparade ändringar som kommer att förloras vid omstart!"
+msgstr ""
+"Varning: Det finns osparade ändringar som kommer att förloras vid omstart!"
 
 msgid "Warning: This system does not have two partitions!"
 msgstr "Varning: Det här systemet har inte två partitioner!"
index 823699d7bd4095223006cd9686f4ffbdd49f836e..3cdc2759b15cb5865129bb36987828483a8aa384 100644 (file)
@@ -1,74 +1,91 @@
-msgid "Aria2"
-msgstr ""
-
-msgid "Aria2 is a multi-protocol &amp; multi-source download utility, here you can configure the settings."
-msgstr "Aria2 是一个支持多协议多线程的下载器, 你可以在这里对其进行配置"
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8\n"
 
-msgid "Aria2 Status"
-msgstr "Aria2 状态"
+msgid "\"Falloc\" is not available in all cases."
+msgstr "\"Falloc\" 并不是在所有情况下都可用"
 
-msgid "Open YAAW"
-msgstr "打开YAAW"
+msgid "<abbr title=\"Distributed Hash Table\">DHT</abbr> enabled"
+msgstr "启用<abbr title=\"分布式哈希表\">DHT</abbr>"
 
-msgid "Open WebUI-Aria2"
-msgstr "打开WebUI-Aria2"
+msgid "<abbr title=\"Local Peer Discovery\">LPD</abbr> enabled"
+msgstr "启用<abbr title=\"本地节点发现\">LPD</abbr>"
 
-msgid "The Aria2 service is running."
-msgstr "Aria2 正在运行"
+msgid "Additional Bt tracker enabled"
+msgstr "添加额外的Tracker"
 
-msgid "The Aria2 service is not running."
-msgstr "Aria2 未运行"
+msgid "Aria2"
+msgstr ""
 
 msgid "Aria2 Settings"
 msgstr "Aria2 配置"
 
+msgid "Aria2 Status"
+msgstr "Aria2 状态"
+
 msgid "General settings"
-msgstr "ä¸\80è\88¬è®¾ç½®"
+msgstr "å\9fºæ\9c¬è®¾ç½®"
 
 msgid "Files and Locations"
 msgstr "文件和目录"
 
-msgid "Enabled"
-msgstr "启用"
+msgid ""
+"Aria2 is a multi-protocol &amp; multi-source download utility, here you can "
+"configure the settings."
+msgstr "Aria2 是一个支持多协议多线程的下载器, 你可以在这里对其进行配置"
 
-msgid "Task Settings"
-msgstr "任务设置"
+msgid "Autosave session interval"
+msgstr "定时保存会话间隔"
 
 msgid "BitTorrent Settings"
 msgstr "BT设置"
 
-msgid "Run daemon as user"
-msgstr "以此用户权限运行"
+msgid "BitTorrent listen port"
+msgstr "BT监听端口"
 
-msgid "RPC port"
-msgstr "RPC端口"
+msgid "Collecting data..."
+msgstr ""
 
-msgid "RPC authentication method"
-msgstr "RPC认证方式"
+msgid "Config file directory"
+msgstr "配置文件目录"
 
-msgid "No Authentication"
-msgstr "无认证"
+msgid "Debug"
+msgstr "调试"
 
-msgid "Username & Password"
-msgstr "用户名与密码"
+msgid "Default download directory"
+msgstr "默认下载目录"
 
-msgid "Token"
-msgstr "令牌"
+msgid "Disk cache"
+msgstr "磁盘缓存"
 
-msgid "RPC username"
-msgstr "RPC用户名"
+msgid "Enable log"
+msgstr "启用日志"
 
-msgid "RPC password"
-msgstr "RPC密码"
+msgid "Enabled"
+msgstr "启用"
 
-msgid "RPC Token"
-msgstr "RPC令牌"
+msgid "Error"
+msgstr "错误"
+
+msgid "Extra Settings"
+msgstr "附加选项"
+
+msgid "Falloc"
+msgstr ""
+
+msgid "Follow torrent"
+msgstr "自动添加下载的种子"
 
 msgid "Generate Randomly"
 msgstr "随机生成"
 
-msgid "Enable log"
-msgstr "启用日志"
+msgid "Info"
+msgstr "信息"
+
+msgid "List of additional Bt tracker"
+msgstr "附加Tracker列表"
+
+msgid "List of extra settings"
+msgstr "附加选项列表"
 
 msgid "Log file is in the config file dir."
 msgstr "日志文件在配置文件目录下"
@@ -76,125 +93,116 @@ msgstr "日志文件在配置文件目录下"
 msgid "Log level"
 msgstr "日志记录等级"
 
-msgid "Debug"
-msgstr "调试"
-
-msgid "Info"
-msgstr "信息"
-
-msgid "Notice"
-msgstr "注意"
-
-msgid "Warn"
-msgstr "警告"
+msgid "Max concurrent downloads"
+msgstr "最大同时下载任务数"
 
-msgid "Error"
-msgstr "错误"
+msgid "Max connection per server"
+msgstr "单服务器最大连接数"
 
-msgid "Config file directory"
-msgstr "配置文件目录"
+msgid "Max number of peers per torrent"
+msgstr "单个种子最大连接数"
 
-msgid "Default download directory"
-msgstr "默认下载目录"
+msgid "Max number of split"
+msgstr "单文件最大线程数"
 
-msgid "Disk cache"
-msgstr "磁盘缓存"
+msgid "Min split size"
+msgstr "最小文件分片大小"
 
-msgid "in bytes, You can append K or M."
-msgstr "单位 B, 你可以在数字后跟上 K 或 M"
+msgid "No Authentication"
+msgstr "无认证"
 
-msgid "Preallocation"
-msgstr "磁盘预分配"
+msgid "Notice"
+msgstr "注意"
 
 msgid "Off"
 msgstr "关闭"
 
-msgid "Prealloc"
-msgstr ""
-
-msgid "Trunc"
-msgstr ""
-
-msgid "Falloc"
-msgstr ""
-
-msgid "\"Falloc\" is not available in all cases."
-msgstr "\"Falloc\" 并不是在所有情况下都可用"
+msgid "Open WebUI-Aria2"
+msgstr "打开WebUI-Aria2"
 
-msgid "Overall speed limit enabled"
-msgstr "启用全局限速"
+msgid "Open YAAW"
+msgstr "打开YAAW"
 
 msgid "Overall download limit"
 msgstr "全局下载限速"
 
-msgid "in bytes/sec, You can append K or M."
-msgstr "å\8d\95ä½\8d B/s, ä½ å\8f¯ä»¥å\9c¨æ\95°å­\97å\90\8eè·\9fä¸\8a K æ\88\96 M"
+msgid "Overall speed limit enabled"
+msgstr "å\90¯ç\94¨å\85¨å±\80é\99\90é\80\9f"
 
 msgid "Overall upload limit"
 msgstr "全局上传限速"
 
-msgid "Per task speed limit enabled"
-msgstr "启用单任务限速"
-
 msgid "Per task download limit"
 msgstr "单任务下载限速"
 
+msgid "Per task speed limit enabled"
+msgstr "启用单任务限速"
+
 msgid "Per task upload limit"
 msgstr "单任务上传限速"
 
-msgid "Max concurrent downloads"
-msgstr "最大同时下载任务数"
+msgid "Prealloc"
+msgstr ""
 
-msgid "Max connection per server"
-msgstr "单服务器最大连接数"
+msgid "Preallocation"
+msgstr "磁盘预分配"
 
-msgid "Min split size"
-msgstr "最小文件分片大小"
+msgid "Prefix of peer ID"
+msgstr "Peer ID前缀"
 
-msgid "Max number of split"
-msgstr "单文件最大线程数"
+msgid "RPC Token"
+msgstr "RPC令牌"
 
-msgid "Autosave session interval"
-msgstr "定时保存会话间隔"
+msgid "RPC authentication method"
+msgstr "RPC认证方式"
 
-msgid "Sec"
-msgstr ""
+msgid "RPC password"
+msgstr "RPC密码"
 
-msgid "User agent value"
-msgstr "用户代理(UA)"
+msgid "RPC port"
+msgstr "RPC端口"
 
-msgid "<abbr title=\"Distributed Hash Table\">DHT</abbr> enabled"
-msgstr "启用<abbr title=\"分布式哈希表\">DHT</abbr>"
+msgid "RPC username"
+msgstr "RPC用户名"
 
-msgid "<abbr title=\"Local Peer Discovery\">LPD</abbr> enabled"
-msgstr "启用<abbr title=\"本地节点发现\">LPD</abbr>"
+msgid "Run daemon as user"
+msgstr "以此用户权限运行"
 
-msgid "Follow torrent"
-msgstr "自动添加下载的种子"
+msgid "Sec"
+msgstr ""
 
-msgid "BitTorrent listen port"
-msgstr "BT监听端口"
+msgid "Task Settings"
+msgstr "任务设置"
 
-msgid "Max number of peers per torrent"
-msgstr "单个种子最大连接数"
+msgid "The Aria2 service is not running."
+msgstr "Aria2 未运行"
 
-msgid "Additional Bt tracker enabled"
-msgstr "添加额外的Tracker"
+msgid "The Aria2 service is running."
+msgstr "Aria2 正在运行"
 
-msgid "List of additional Bt tracker"
-msgstr "附加Tracker列表"
+msgid "Token"
+msgstr "令牌"
 
-msgid "Prefix of peer ID"
-msgstr "Peer ID前缀"
+msgid "Trunc"
+msgstr ""
 
-msgid "Extra Settings"
-msgstr "附加选项"
+msgid "Use WebSocket"
+msgstr "使用WebSocket"
 
-msgid "List of extra settings"
-msgstr "附加选项列表"
+msgid "User agent value"
+msgstr "用户代理(UA)"
+
+msgid "Username & Password"
+msgstr "用户名与密码"
 
 msgid "View Json-RPC URL"
 msgstr "查看 Json-RPC URL"
 
-msgid "Use WebSocket"
-msgstr "使用WebSocket"
+msgid "Warn"
+msgstr "警告"
+
+msgid "in bytes, You can append K or M."
+msgstr "单位 B, 你可以在数字后跟上 K 或 M"
+
+msgid "in bytes/sec, You can append K or M."
+msgstr "单位 B/s, 你可以在数字后跟上 K 或 M"
index 1e423b49f0b53e7fda0fc6ad1ed38f4143bcc9a9..d04745abd14e62bf80580ba3c4d29649ea0ca859 100644 (file)
        <div style="display: none" id="update_info" class="alert-message info"></div>
        <div style="display: none" id="update_error" class="alert-message danger"></div>
 </div>
-<input class="cbi-button" value="search for updates" onclick="update_request()" type="button" id="update_button">
+<p>
+       <input class="cbi-button" style="display: none;" value="edit installed packages" onclick="edit_packages()" type="button" id="edit_button">
+       <textarea style="display: none; width: 100%;" id="edit_packages" rows="15"></textarea>
+</P>
+<p>
+       <input class="cbi-button" value="search for updates" onclick="update_request()" type="button" id="update_button">
+</p>
+<p>
+       <input style="display: none" class="cbi-button" value="show build log" onclick="window.open(data.log_url);" type="button" id="log_button">
+</p>
 <div style="display: none" id="packages" class="alert-message success"></div>
 <div class="cbi-value" id="update_packages_container" style="display: block">
-       <label class="cbi-value-title" for="keep">search for package updates:</label>
-       <div class="cbi-value-field">
-               <input type="checkbox" name="update_packages" id="update_packages" />
-       </div>
+       <label class="cbi-value-title" for="update_packages">
+                       <input type="checkbox" name="update_packages" id="update_packages" />
+               Search for package updates
+       </label>
 </div>
 <div class="cbi-value" id="keep_container" style="display: none">
-       <label class="cbi-value-title" for="keep">keep settings:</label>
-       <div class="cbi-value-field">
-               <input type="checkbox" name="keep" id="keep" checked="checked" />
-       </div>
+       <label class="cbi-value-title" for="keep">
+                       <input type="checkbox" name="keep" id="keep" checked="checked" />
+               Keep settings
+       </label>
 </div>
 
 <script type="text/javascript">
@@ -102,6 +111,13 @@ ubus_counter = 1
 origin = document.location.href.replace(location.pathname, "")
 ubus_url = origin + "/ubus/"
 
+function edit_packages() {
+       data.edit_packages = true
+       document.getElementById("edit_button").style.display = "none";
+       document.getElementById("edit_packages").value = data.packages.join("\n");
+       document.getElementById("edit_packages").style.display = "block";
+}
+
 // requests to the update server
 function server_request(request_dict, path, callback) {
        url = data.update_server + "/" + path
@@ -238,6 +254,8 @@ function update_request_callback(response_object) {
        } else if (response_object.status === 200) {
                // new release/updates
                response_object_content = JSON.parse(response_object.responseText)
+               document.getElementById("edit_button").style.display = "block";
+               document.getElementById("update_button").disabled = false;
                update_request_200(response_object_content)
        }
 }
@@ -280,11 +298,18 @@ function update_request_200(response_content) {
 // request the image, need merge with update_request
 function image_request() {
        console.log("image_request")
+       document.getElementById("update_button").disabled = true;
        document.getElementById("update_packages_container").style.display = "none";
+       document.getElementById("edit_packages").style.display = "none";
+       document.getElementById("edit_button").style.display = "none";
        request_dict = {}
        request_dict.version = latest_version;
        request_dict.board = data.board_name
-       request_dict.packages = data.packages;
+       if(data.edit_packages == true) {
+               request_dict.packages = document.getElementById("edit_packages").value.split("\n")
+       } else {
+               request_dict.packages = data.packages;
+       }
        request_dict.model = data.model
        server_request(request_dict, "image-request", image_request_handler)
 }
@@ -294,7 +319,12 @@ function image_request_handler(response) {
                response_content = JSON.parse(response.responseText)
                update_error(response_content.error)
        } else if (response.status === 500) {
-               image_request_500()
+               response_content = JSON.parse(response.responseText)
+               update_error(response_content.error)
+               if(response_content.log != undefined) {
+                       data.log_url = response_content.log
+                       document.getElementById("log_button").style.display = "block";
+               }
        } else if (response.status === 503) {
                update_error("please wait. server overloaded")
                // handle overload
@@ -317,10 +347,14 @@ function image_request_handler(response) {
                setTimeout(image_request, 5000)
        } else if (response.status === 200) {
                // ready to download
-               response_content = JSON.parse(response.responseText)
-               update_info("image created")
-               document.getElementById("update_button").value = "sysupgrade"
-               document.getElementById("update_button").onclick = function() {download_image(response_content.url); }
+               response_content = JSON.parse(response.responseText);
+               data.image_url = response_content.url;
+               data.log_url = data.image_url + ".log";
+               update_info("image created");
+               document.getElementById("log_button").style.display = "block";
+               document.getElementById("update_button").disabled = false;
+               document.getElementById("update_button").value = "sysupgrade";
+               document.getElementById("update_button").onclick = download_image;
                document.getElementById("keep_container").style.display = "block";
        }
 }
@@ -338,7 +372,7 @@ function upload_image(blob) {
 
        upload_request.addEventListener('load', function(event) {
                // this checksum should be parsed
-               document.getElementById("update_info").innerHTML = "flashing... please wait" // show fancy indicator http://www.ajaxload.info/
+               document.getElementById("update_info").innerHTML = "flashing... please wait"; // show fancy indicator http://www.ajaxload.info/
 
                ubus_request("attendedsysupgrade", "sysupgrade", { "keep_settings": document.getElementById("keep").checked }, 'done');
        });
@@ -352,12 +386,12 @@ function upload_image(blob) {
 }
 
 // download image from server once the url was received by image_request
-function download_image(url) {
+function download_image() {
        console.log("download_image")
-       document.getElementById("update_button").value = "flashing..."
+       document.getElementById("update_button").value = "downloading image";
        document.getElementById("update_button").disabled = true;
        var download_request = new XMLHttpRequest();
-       download_request.open("GET", url);
+       download_request.open("GET", data.image_url);
        download_request.responseType = "arraybuffer";
 
        download_request.onload = function () {
@@ -366,7 +400,7 @@ function download_image(url) {
                        upload_image(blob)
                }
        };
-       document.getElementById("update_info").innerHTML = "downloading image"
+       document.getElementById("update_info").innerHTML = "downloading image";
        download_request.send();
 }
 
index 3b9d5f48de9508989667c7dfe10eb71c5b17363a..4b8d2f844e2e4b7fb1049ccb185876cfc46f330b 100644 (file)
@@ -725,7 +725,7 @@ msgid "missing / required"
 msgstr "mancante / richiesto"
 
 msgid "must be greater or equal 'Check Interval'"
-msgstr "deve essere più grande o uguale "Controlla Intervallo'"
+msgstr "deve essere più grande o uguale 'Controlla Intervallo'"
 
 msgid "must start with 'http://'"
 msgstr "deve iniziare con 'http://'"
index c735323955cc08102d1bce2b9476b955bfd3f087..d68116bf7b660f2dba8eb74838e87ae846f45f3d 100644 (file)
@@ -91,7 +91,7 @@ msgid "MAC range and information used to override system and IEEE databases"
 msgstr ""
 
 msgid "Milliseconds to sleep between requests (default 100)"
-msgstr ""
+msgstr "Millisekunder att sova mellan förfrågningar (100 är standard)"
 
 msgid "Model"
 msgstr "Modell"
@@ -109,7 +109,7 @@ msgid "Networks to scan for devices"
 msgstr "Nätverk att skanna efter enheter i"
 
 msgid "Networks to scan for supported devices"
-msgstr ""
+msgstr "Nätverk att skanna efter enheter som stöds"
 
 msgid "No SIP devices"
 msgstr "Inga SIP-enheter"
@@ -118,10 +118,10 @@ msgid "No devices detected"
 msgstr "Upptäckte inga enheter"
 
 msgid "Number of times to send requests (default 1)"
-msgstr ""
+msgstr "Antalet gånger att skicka förfrågningar (1 är standard)"
 
 msgid "OUI Owner"
-msgstr ""
+msgstr "OUI-ägare"
 
 msgid ""
 "Override the information returned by the MAC to Device Info Script (mac-to-"
@@ -129,13 +129,13 @@ msgid ""
 msgstr ""
 
 msgid "Perform Scans (this can take a few minutes)"
-msgstr ""
+msgstr "Utför skanningar (det här kan ta ett par minuter)"
 
 msgid "Phone Information"
 msgstr "Information om telefon"
 
 msgid "Phone Scan"
-msgstr "Skanning av telefon"
+msgstr "Skanna telefon"
 
 msgid "Phone Scanning Configuration"
 msgstr "Konfiguration av skanning i telefon"
@@ -156,7 +156,7 @@ msgid "Repeat Scans (this can take a few minutes)"
 msgstr "Repetera skanningar (det här kan ta några minuter)"
 
 msgid "SIP Device Information"
-msgstr ""
+msgstr "Information om SIP-enhet"
 
 msgid "SIP Device Scan"
 msgstr ""
@@ -195,7 +195,7 @@ msgid "Time to wait for responses in seconds (default 10)"
 msgstr "Tid att vänta på svar i sekunder (standard 10)"
 
 msgid "Timeout"
-msgstr ""
+msgstr "Avbrott"
 
 msgid "Use Configuration"
 msgstr "Använd konfiguration"
index 6d6790a839c275a6dc19411813ff27a0281a0e04..9f6472e7ded78090f9cbd9122105a3972750dd9f 100644 (file)
@@ -17,8 +17,8 @@ function index()
        entry({"admin", "services", "dnscrypt-proxy", "advanced"}, firstchild(), _("Advanced"), 100)
        entry({"admin", "services", "dnscrypt-proxy", "advanced", "configuration"}, cbi("dnscrypt-proxy/configuration_tab"), _("Edit DNSCrypt-Proxy Configuration"), 110).leaf = true
        entry({"admin", "services", "dnscrypt-proxy", "advanced", "cfg_dnsmasq"}, cbi("dnscrypt-proxy/cfg_dnsmasq_tab"), _("Edit Dnsmasq Configuration"), 120).leaf = true
-       entry({"admin", "services", "dnscrypt-proxy", "advanced", "view_reslist"}, call("view_reslist"), _("View Resolver List"), 130).leaf = true
-
+       entry({"admin", "services", "dnscrypt-proxy", "advanced", "cfg_resolvcrypt"}, cbi("dnscrypt-proxy/cfg_resolvcrypt_tab"), _("Edit Resolvcrypt Configuration"), 130).leaf = true
+       entry({"admin", "services", "dnscrypt-proxy", "advanced", "view_reslist"}, call("view_reslist"), _("View Resolver List"), 140).leaf = true
 end
 
 function view_reslist()
@@ -27,6 +27,12 @@ function view_reslist()
 end
 
 function logread()
-       local logfile = util.trim(util.exec("logread -e 'dnscrypt-proxy'"))
+       local logfile
+
+       if nixio.fs.access("/var/log/messages") then
+               logfile = util.trim(util.exec("cat /var/log/messages | grep 'dnscrypt-proxy'"))
+       else
+               logfile = util.trim(util.exec("logread -e 'dnscrypt-proxy'"))
+       end
        templ.render("dnscrypt-proxy/logread", {title = i18n.translate("DNSCrypt-Proxy Logfile"), content = logfile})
 end
index d22abbfd398b400f4afbb3d62f4923638859dff2..6e75ac9f97dd3af2513ecf0be0df6743edc7112d 100644 (file)
@@ -7,6 +7,8 @@ local uci_input = "/etc/config/dhcp"
 
 if not nxfs.access(uci_input) then
        m = SimpleForm("error", nil, translate("Input file not found, please check your configuration."))
+       m.reset = false
+       m.submit = false
        return m
 end
 
diff --git a/applications/luci-app-dnscrypt-proxy/luasrc/model/cbi/dnscrypt-proxy/cfg_resolvcrypt_tab.lua b/applications/luci-app-dnscrypt-proxy/luasrc/model/cbi/dnscrypt-proxy/cfg_resolvcrypt_tab.lua
new file mode 100644 (file)
index 0000000..f172b15
--- /dev/null
@@ -0,0 +1,39 @@
+-- Copyright 2017 Dirk Brenken (dev@brenken.org)
+-- This is free software, licensed under the Apache License, Version 2.0
+
+local nxfs      = require("nixio.fs")
+local util      = require("luci.util")
+local res_input = "/etc/resolv-crypt.conf"
+
+if not nxfs.access(res_input) 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("dnscrypt-proxy/config_css"))
+m.submit = translate("Save")
+m.reset = false
+
+s = m:section(SimpleSection, nil,
+       translate("This form allows you to modify the content of the resolv-crypt configuration file (/etc/resolv-crypt.conf)."))
+
+f = s:option(TextValue, "data")
+f.rows = 20
+f.rmempty = true
+
+function f.cfgvalue()
+       return nxfs.readfile(res_input) or ""
+end
+
+function f.write(self, section, data)
+       return nxfs.writefile(res_input, "\n" .. util.trim(data:gsub("\r\n", "\n")) .. "\n")
+end
+
+function s.handle(self, state, data)
+       return true
+end
+
+return m
index 7ab84ab7fa09d7cfd1cf5e001efe8491882e8378..368c6673ad5cfa6c242325e03d0a4568567fdba7 100644 (file)
@@ -11,15 +11,16 @@ local plug_cnt  = tonumber(luci.sys.exec("env -i /usr/sbin/dnscrypt-proxy --vers
 local res_list  = {}
 local url       = "https://download.dnscrypt.org/dnscrypt-proxy/dnscrypt-resolvers.csv"
 
-if not fs.access("/lib/libustream-ssl.so") then
-       m = SimpleForm("error", nil, translate("SSL support not available, please install an libustream-ssl variant to use this package."))
-       m.submit = false
-       m.reset = false
-       return m
-end
-
 if not fs.access(res_input) then
-       luci.sys.call("env -i /bin/uclient-fetch --no-check-certificate -O " .. res_input .. " " .. url .. " >/dev/null 2>&1")
+       if not fs.access("/lib/libustream-ssl.so") then
+               m = SimpleForm("error", nil, translate("No default resolver list and no SSL support available.<br />")
+                       .. translate("Please install a resolver list to '/usr/share/dnscrypt-proxy/dnscrypt-resolvers.csv' to use this package."))
+               m.submit = false
+               m.reset = false
+               return m
+       else
+               luci.sys.call("env -i /bin/uclient-fetch --no-check-certificate -O " .. res_input .. " " .. url .. " >/dev/null 2>&1")
+       end
 end
 
 if not uci:get_first("dnscrypt-proxy", "global") then
@@ -29,23 +30,64 @@ if not uci:get_first("dnscrypt-proxy", "global") then
 end
 
 for line in io.lines(res_input) do
-       local name = line:match("^[%w_.-]*")
-       res_list[#res_list + 1] = { name = name }
+       local name,
+       location,
+       dnssec,
+       nolog = line:match("^([^,]+),.-,\".-\",\"*(.-)\"*,.-,[0-9],\"*([yesno]+)\"*,\"*([yesno]+)\"*,.*")
+       if name ~= "" and name ~= "Name" then
+               if location == "" then
+                       location = "-"
+               end
+               if dnssec == "" then
+                       dnssec = "-"
+               end
+               if nolog == "" then
+                       nolog = "-"
+               end
+               res_list[#res_list + 1] = { name = name, location = location, dnssec = dnssec, nolog = nolog }
+       end
 end
 
 m = Map("dnscrypt-proxy", translate("DNSCrypt-Proxy"),
        translate("Configuration of the DNSCrypt-Proxy package. ")
-       .. translate("Keep in mind to configure Dnsmasq as well. ")
        .. translatef("For further information "
        .. "<a href=\"%s\" target=\"_blank\">"
        .. "see the wiki online</a>", "https://wiki.openwrt.org/inbox/dnscrypt"))
+m:chain("dhcp")
 
 function m.on_after_commit(self)
-       luci.sys.call("env -i /etc/init.d/dnsmasq restart >/dev/null 2>&1")
+       function d1.validate(self, value, s1)
+               if value == "1" then
+                       uci:commit("dnscrypt-proxy")
+                       uci:set("dhcp", s1, "noresolv", 1)
+                       if not fs.access("/etc/resolv-crypt.conf") or nixio.fs.stat("/etc/resolv-crypt.conf").size == 0 then
+                               uci:set("dhcp", s1, "resolvfile", "/tmp/resolv.conf.auto")
+                       else
+                               uci:set("dhcp", s1, "resolvfile", "/etc/resolv-crypt.conf")
+                       end
+                       local server_list = {}
+                       local cnt = 1
+                       uci:foreach("dnscrypt-proxy", "dnscrypt-proxy", function(s)
+                               server_list[cnt] = s['address'] .. "#" .. s['port']
+                               cnt = cnt + 1
+                       end)
+                       server_list[cnt] = "/pool.ntp.org/8.8.8.8"
+                       uci:set_list("dhcp", s1, "server", server_list)
+                       if cnt > 2 then
+                               uci:set("dhcp", s1, "allservers", 1)
+                       else
+                               uci:set("dhcp", s1, "allservers", 0)
+                       end
+                       uci:save("dhcp")
+                       uci:commit("dhcp")
+               end
+               return value
+       end
        luci.sys.call("env -i /etc/init.d/dnscrypt-proxy restart >/dev/null 2>&1")
+       luci.sys.call("env -i /etc/init.d/dnsmasq restart >/dev/null 2>&1")
 end
 
-s = m:section(TypedSection, "global", translate("General options"))
+s = m:section(TypedSection, "global", translate("General Options"))
 s.anonymous = true
 
 -- Main dnscrypt-proxy resource list
@@ -62,21 +104,53 @@ o3 = s:option(DummyValue, "", translate("File Checksum"))
 o3.template = "dnscrypt-proxy/res_options"
 o3.value = luci.sys.exec("sha256sum " .. res_input .. " | awk '{print $1}'")
 
-btn = s:option(Button, "", translate("Refresh Resolver List"))
-btn.inputtitle = translate("Refresh List")
-btn.inputstyle = "apply"
-btn.disabled = false
-function btn.write(self, section, value)
-       luci.sys.call("env -i /bin/uclient-fetch --no-check-certificate -O " .. res_input .. " " .. url .. " >/dev/null 2>&1")
-       luci.http.redirect(luci.dispatcher.build_url("admin", "services", "dnscrypt-proxy"))
+if fs.access("/lib/libustream-ssl.so") then
+       btn1 = s:option(Button, "", translate("Refresh Resolver List"),
+               translate("Download the current resolver list from 'download.dnscrypt.org'."))
+       btn1.inputtitle = translate("Refresh List")
+       btn1.inputstyle = "apply"
+       btn1.disabled = false
+       function btn1.write()
+               luci.sys.call("env -i /bin/uclient-fetch --no-check-certificate -O " .. res_input .. " " .. url .. " >/dev/null 2>&1")
+               luci.http.redirect(luci.dispatcher.build_url("admin", "services", "dnscrypt-proxy"))
+       end
+else
+       btn1 = s:option(Button, "", translate("Refresh Resolver List"),
+               translate("No SSL support available.<br />")
+               .. translate("Please install a 'libustream-ssl' library to download the current resolver list from 'download.dnscrypt.org'."))
+       btn1.inputtitle = translate("-------")
+       btn1.inputstyle = "button"
+       btn1.disabled = true
+end
+
+if not fs.access("/etc/resolv-crypt.conf") or nixio.fs.stat("/etc/resolv-crypt.conf").size == 0 then
+       btn2 = s:option(Button, "", translate("Create Custom Config File"),
+               translate("Create '/etc/resolv-crypt.conf' with 'options timeout:1' to reduce DNS upstream timeouts with multiple DNSCrypt instances.<br />")
+               .. translatef("For further information "
+               .. "<a href=\"%s\" target=\"_blank\">"
+               .. "see the wiki online</a>", "https://wiki.openwrt.org/inbox/dnscrypt"))
+       btn2.inputtitle = translate("Create Config File")
+       btn2.inputstyle = "apply"
+       btn2.disabled = false
+       function btn2.write()
+               luci.sys.call("env -i echo 'options timeout:1' > '/etc/resolv-crypt.conf'")
+               luci.http.redirect(luci.dispatcher.build_url("admin", "services", "dnscrypt-proxy"))
+       end
+else
+       btn2 = s:option(Button, "", translate("Create Custom Config File"),
+               translate("The config file '/etc/resolv-crypt.conf' already exist.<br />")
+               .. translate("Please edit the file manually in the 'Advanced' section."))
+       btn2.inputtitle = translate("-------")
+       btn2.inputstyle = "button"
+       btn2.disabled = true
 end
 
 -- Trigger settings
 
-t = s:option(DynamicList, "procd_trigger", translate("Startup Trigger"),
-       translate("By default the DNSCrypt-Proxy startup will be triggered by ifup events of multiple network interfaces. ")
-       .. translate("To restrict the trigger, add only the relevant network interface(s). ")
-       .. translate("Usually the 'wan' interface should work for most users."))
+t = s:option(ListValue, "procd_trigger", translate("Startup Trigger"),
+       translate("By default the DNSCrypt-Proxy startup will be triggered by ifup events of 'All' available network interfaces.<br />")
+       .. translate("To restrict the trigger, select only the relevant network interface. Usually the 'wan' interface should work for most users."))
+t:value("", "All")
 if dump then
        local i, v
        for i, v in ipairs(dump.interface) do
@@ -85,57 +159,38 @@ if dump then
                end
        end
 end
+t.default = procd_trigger or "All"
 t.rmempty = true
 
--- Extra options
-
-ds = s:option(DummyValue, "_dummy", translate("Extra options"),
-       translate("Options for further tweaking in case the defaults are not suitable for you."))
-ds.template = "cbi/nullsection"
-
-btn = s:option(Button, "", translate("Create custom config file"),
-       translate("Create '/etc/resolv-crypt.conf' with 'options timeout:1' to reduce DNS upstream timeouts with multiple DNSCrypt instances. ")
-       .. translatef("For further information "
-       .. "<a href=\"%s\" target=\"_blank\">"
-       .. "see the wiki online</a>", "https://wiki.openwrt.org/inbox/dnscrypt"))
-btn.inputtitle = translate("Create Config File")
-btn.inputstyle = "apply"
-btn.disabled = false
-function btn.write(self, section, value)
-       if not fs.access("/etc/resolv-crypt.conf") then
-               luci.sys.call("env -i echo 'options timeout:1' > '/etc/resolv-crypt.conf'")
-       end
-end
-
 -- Mandatory options per instance
 
-s = m:section(TypedSection, "dnscrypt-proxy", translate("Instance options"))
+s = m:section(TypedSection, "dnscrypt-proxy", translate("Instance Options"))
 s.anonymous = true
 s.addremove = true
 
-o1 = s:option(Value, "address", translate("IP Address"),
+i1 = s:option(Value, "address", translate("IP Address"),
        translate("The local IPv4 or IPv6 address. The latter one should be specified within brackets, e.g. '[::1]'."))
-o1.default = address or "127.0.0.1"
-o1.rmempty = false
+i1.default = address or "127.0.0.1"
+i1.rmempty = false
 
-o2 = s:option(Value, "port", translate("Port"),
+i2 = s:option(Value, "port", translate("Port"),
        translate("The listening port for DNS queries."))
-o2.datatype = "port"
-o2.default = port
-o2.rmempty = false
-
-o3 = s:option(ListValue, "resolver", translate("Resolver"),
-       translate("Name of the remote DNS service for resolving queries."))
-o3.datatype = "hostname"
-o3.widget = "select"
+i2.datatype = "port"
+i2.default = port
+i2.rmempty = false
+
+i3 = s:option(ListValue, "resolver", translate("Resolver (LOC/SEC/NOLOG)"),
+       translate("Name of the remote DNS service for resolving queries incl. Location, DNSSEC- and NOLOG-Flag."))
+i3.datatype = "hostname"
+i3.widget = "select"
 local i, v
 for i, v in ipairs(res_list) do
-       if v.name ~= "Name" then
-               o3:value(v.name)
+       if v.name then
+               i3:value(v.name, v.name .. " (" .. v.location .. "/" .. v.dnssec .. "/" .. v.nolog .. ")")
        end
 end
-o3.default = resolver
-o3.rmempty = false
+i3.default = resolver
+i3.rmempty = false
 
 -- Extra options per instance
 
@@ -174,4 +229,17 @@ if plug_cnt > 0 then
        e6.optional = true
 end
 
-return m
+-- Dnsmasq options
+
+m1 = Map("dhcp")
+
+s1 = m1:section(TypedSection, "dnsmasq", translate("Dnsmasq Options"))
+s1.anonymous = true
+
+d1 = s1:option(Flag, "", translate("Transfer Options To Dnsmasq"),
+       translate("Apply DNSCrypt-Proxy specific settings to the Dnsmasq configuration.<br />")
+       .. translate("Please note: This may change the values for 'noresolv', 'resolvfile', 'allservers' and the list 'server' settings."))
+d1.default = d1.enabled
+d1.rmempty = false
+
+return m, m1
index 0328df2279959bacb11976970dac883d6a0f7d39..2cd01c019e5d8ebb5a34d7454aa88e0790807ec0 100644 (file)
@@ -7,17 +7,24 @@ msgstr ""
 "Language-Team: \n"
 "MIME-Version: 1.0\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.3\n"
+"X-Generator: Poedit 2.0.4\n"
 "Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 "Language: ja\n"
 
+msgid "-------"
+msgstr "(利用不可)"
+
 msgid "Advanced"
 msgstr "詳細"
 
 msgid "Alternate Resolver List"
 msgstr "代替 リゾルバ リスト"
 
+msgid ""
+"Apply DNSCrypt-Proxy specific settings to the Dnsmasq configuration.<br />"
+msgstr "Dnsmasq の構成に、DNSCrypt-Proxy を指定する設定を適用します。<br />"
+
 msgid "Blacklist"
 msgstr "ブラックリスト"
 
@@ -26,26 +33,26 @@ msgstr "IPv6 のブロック"
 
 msgid ""
 "By default the DNSCrypt-Proxy startup will be triggered by ifup events of "
-"multiple network interfaces."
+"'All' available network interfaces.<br />"
 msgstr ""
-"ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81§ã\81¯ã\80\81 DNSCrypt-Proxy ã\81¯å\85¨ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81® ifup ã\82¤ã\83\99"
-"ã\83³ã\83\88ã\81«ã\82\88ã\82\8aã\83\88ã\83ªã\82¬ã\81\95ã\82\8cèµ·å\8b\95ã\81\97ã\81¾ã\81\99ã\80\82"
+"ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81§ã\81¯ã\80\81 DNSCrypt-Proxy ã\81¯å\88©ç\94¨å\8f¯è\83½ã\81ªå\85¨ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹"
+"ã\81® ifup ã\82¤ã\83\99ã\83³ã\83\88ã\81«ã\82\88ã\82\8aã\83\88ã\83ªã\82¬ã\81\95ã\82\8cèµ·å\8b\95ã\81\97ã\81¾ã\81\99ã\80\82<br />"
 
 msgid "Configuration of the DNSCrypt-Proxy package."
 msgstr "DNSCrypt-Proxy パッケージの設定です。"
 
 msgid ""
 "Create '/etc/resolv-crypt.conf' with 'options timeout:1' to reduce DNS "
-"upstream timeouts with multiple DNSCrypt instances."
+"upstream timeouts with multiple DNSCrypt instances.<br />"
 msgstr ""
 "複数の DNSCrypt インスタンスで DNS アップストリーム タイムアウトの設定値を共"
 "用するため、 'options timeout:1' を含めた '/etc/resolv-crypt.conf' を作成しま"
-"す。"
+"す。<br />"
 
 msgid "Create Config File"
 msgstr "設定ファイルの作成"
 
-msgid "Create custom config file"
+msgid "Create Custom Config File"
 msgstr "カスタム設定ファイルの作成"
 
 msgid "DNS Query Logfile"
@@ -66,21 +73,28 @@ msgstr "デフォルト リゾルバ リスト"
 msgid "Disable IPv6 to speed up DNSCrypt-Proxy."
 msgstr "DNSCrypt-Proxy の高速化のため、IPv6 を無効化します。"
 
+msgid "Dnsmasq Options"
+msgstr "Dnsmasq オプション"
+
+msgid "Download the current resolver list from 'download.dnscrypt.org'."
+msgstr ""
+"現在のリゾルバ リストを 'download.dnscrypt.org' からダウンロードします。"
+
 msgid "Edit DNSCrypt-Proxy Configuration"
 msgstr "DNSCrypt-Proxy 設定の編集"
 
 msgid "Edit Dnsmasq Configuration"
 msgstr "Dnsmasq 設定の編集"
 
+msgid "Edit Resolvcrypt Configuration"
+msgstr "Resolvcrypt 設定の編集"
+
 msgid "Enable Caching to speed up DNSCcrypt-Proxy."
 msgstr "DNSCrypt-Proxy の高速化のため、キャッシュ機能を有効化します。"
 
 msgid "Ephemeral Keys"
 msgstr "一時的なキー"
 
-msgid "Extra options"
-msgstr "拡張オプション"
-
 msgid "File Checksum"
 msgstr "ファイル チェックサム"
 
@@ -94,8 +108,8 @@ msgstr ""
 "詳細な情報は <a href=\"%s\" target=\"_blank\">オンライン Wiki</a> を確認して"
 "ください。"
 
-msgid "General options"
-msgstr "全般設定"
+msgid "General Options"
+msgstr "全般オプション"
 
 msgid "IP Address"
 msgstr "IP アドレス"
@@ -107,12 +121,9 @@ msgstr ""
 msgid "Input file not found, please check your configuration."
 msgstr "入力ファイルが見つかりません。設定を確認してください。"
 
-msgid "Instance options"
+msgid "Instance Options"
 msgstr "インスタンス オプション"
 
-msgid "Keep in mind to configure Dnsmasq as well."
-msgstr "Dnsmasq を適切に設定する必要があることに留意してください。"
-
 msgid "Local Cache"
 msgstr "ローカル キャッシュ"
 
@@ -129,16 +140,47 @@ msgstr ""
 "受信した DNS クエリをファイルに記録します。これにより、ネットワークで何が起き"
 "ているかをリアルタイムに把握することが可能です。"
 
-msgid "Name of the remote DNS service for resolving queries."
-msgstr "クエリの名前解決を行う、リモートの DNS サービス名です。"
-
 msgid ""
-"Options for further tweaking in case the defaults are not suitable for you."
-msgstr "デフォルト設定が適切でない場合、追加で設定するためのオプションです。"
+"Name of the remote DNS service for resolving queries incl. Location, DNSSEC- "
+"and NOLOG-Flag."
+msgstr ""
+"クエリの名前解決を行う、ロケーション, DNSSECの有無, NOLOG フラグを含めたリ"
+"モート DNS サービスの名前です。"
+
+msgid "No SSL support available.<br />"
+msgstr "利用可能な SSL サポートがありません。<br />"
+
+msgid "No default resolver list and no SSL support available.<br />"
+msgstr ""
+"デフォルトのリゾルバ リストと、利用可能な SSL サポートがありません。<br />"
 
 msgid "Overview"
 msgstr "概要"
 
+msgid "Please edit the file manually in the 'Advanced' section."
+msgstr "'詳細' タブで手動でファイルを編集してください。"
+
+msgid ""
+"Please install a 'libustream-ssl' library to download the current resolver "
+"list from 'download.dnscrypt.org'."
+msgstr ""
+"現在のリゾルバ リストを 'download.dnscrypt.org' からダウンロードするために、 "
+"'libustream-ssl' ライブラリをインストールしてください。"
+
+msgid ""
+"Please install a resolver list to '/usr/share/dnscrypt-proxy/dnscrypt-"
+"resolvers.csv' to use this package."
+msgstr ""
+"このパッケージを利用するには、リゾルバ リストを '/usr/share/dnscrypt-proxy/"
+"dnscrypt-resolvers.csv' にインストールしてください。"
+
+msgid ""
+"Please note: This may change the values for 'noresolv', 'resolvfile', "
+"'allservers' and the list 'server' settings."
+msgstr ""
+"注: これは、 'noresolv' および 'resolvfile', 'allservers', 'list server' の設"
+"定値を変更する場合があります。"
+
 msgid "Port"
 msgstr "ポート"
 
@@ -148,15 +190,8 @@ msgstr "リストのリフレッシュ"
 msgid "Refresh Resolver List"
 msgstr "リゾルバ リストのリフレッシュ"
 
-msgid "Resolver"
-msgstr "リゾルバ"
-
-msgid ""
-"SSL support not available, please install an libustream-ssl variant to use "
-"this package."
-msgstr ""
-"SSL サポートが利用できません。このパッケージを使用するには libustream-ssl 等"
-"をインストールし、 SSL サポートを有効にしてください。"
+msgid "Resolver (LOC/SEC/NOLOG)"
+msgstr "リゾルバ(LOC/SEC/NOLOG)"
 
 msgid "Save"
 msgstr "保存"
@@ -167,6 +202,9 @@ msgstr "デフォルトとは異なるリゾルバ リストを設定します
 msgid "Startup Trigger"
 msgstr "スタートアップ トリガ"
 
+msgid "The config file '/etc/resolv-crypt.conf' already exist.<br />"
+msgstr "設定ファイル '/etc/resolv-crypt.conf' は既に存在しています。<br />"
+
 msgid "The listening port for DNS queries."
 msgstr "DNS クエリを待ち受けるポートです。"
 
@@ -199,6 +237,13 @@ msgstr ""
 "このフォームでは、メインの Dnsmasq 設定ファイル (/etc/config/dhcp) の内容を変"
 "更することができます。"
 
+msgid ""
+"This form allows you to modify the content of the resolv-crypt configuration "
+"file (/etc/resolv-crypt.conf)."
+msgstr ""
+"このフォームでは、 resolv-crypt 設定ファイル(/etc/resolv-crypt.conf)の内容"
+"を変更することができます。"
+
 msgid "This form shows the content of the current DNSCrypt Resolver List."
 msgstr ""
 "このフォームには、現在の DNSCrypt リゾルバ リストの内容が表示されます。"
@@ -217,13 +262,15 @@ msgstr ""
 "このオプションは、通常よりも CPU リソースを多く使用するほか、ほとんどの "
 "DNSCrypt サーバーでは不要なものです。"
 
-msgid "To restrict the trigger, add only the relevant network interface(s)."
+msgid ""
+"To restrict the trigger, select only the relevant network interface. Usually "
+"the 'wan' interface should work for most users."
 msgstr ""
-"ã\83\88ã\83ªã\82¬ã\82\92é\99\90å®\9aã\81\99ã\82\8bã\81«ã\81¯ã\80\81é\81©å\88\87ã\81ªã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81®ã\81¿ã\82\92追å\8a ã\81\97ã\81¦ã\81\8fã\81 ã\81\95"
-"ã\81\84。"
+"ã\83\88ã\83ªã\82¬ã\82\92é\99\90å®\9aã\81\99ã\82\8bã\81«ã\81¯ã\80\81é\81©å\88\87ã\81ªã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\82\92é\81¸æ\8a\9eã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84ã\80\82é\80\9a常ã\80\81 'wan' "
+"ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81\8cã\81»ã\81¨ã\82\93ã\81©ã\81®ã\83¦ã\83¼ã\82¶ã\83¼ã\81«é\81©ã\81\97ã\81¦ã\81\84ã\81¾ã\81\99。"
 
-msgid "Usually the 'wan' interface should work for most users."
-msgstr "通常、 'wan' インターフェースがほとんどのユーザーに適しています。"
+msgid "Transfer Options To Dnsmasq"
+msgstr "Dnsmasq の転送オプション"
 
 msgid "View Logfile"
 msgstr "ログファイルの確認"
index ea83e7a1849e05bb5e48e4d57fa4b9a51199dfe9..59bded87b82d9522da6a77a95e88a3b5709ec7d4 100644 (file)
@@ -1,12 +1,19 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=UTF-8"
 
+msgid "-------"
+msgstr ""
+
 msgid "Advanced"
 msgstr ""
 
 msgid "Alternate Resolver List"
 msgstr ""
 
+msgid ""
+"Apply DNSCrypt-Proxy specific settings to the Dnsmasq configuration.<br />"
+msgstr ""
+
 msgid "Blacklist"
 msgstr ""
 
@@ -15,7 +22,7 @@ msgstr ""
 
 msgid ""
 "By default the DNSCrypt-Proxy startup will be triggered by ifup events of "
-"multiple network interfaces."
+"'All' available network interfaces.<br />"
 msgstr ""
 
 msgid "Configuration of the DNSCrypt-Proxy package."
@@ -23,13 +30,13 @@ msgstr ""
 
 msgid ""
 "Create '/etc/resolv-crypt.conf' with 'options timeout:1' to reduce DNS "
-"upstream timeouts with multiple DNSCrypt instances."
+"upstream timeouts with multiple DNSCrypt instances.<br />"
 msgstr ""
 
 msgid "Create Config File"
 msgstr ""
 
-msgid "Create custom config file"
+msgid "Create Custom Config File"
 msgstr ""
 
 msgid "DNS Query Logfile"
@@ -50,19 +57,25 @@ msgstr ""
 msgid "Disable IPv6 to speed up DNSCrypt-Proxy."
 msgstr ""
 
+msgid "Dnsmasq Options"
+msgstr ""
+
+msgid "Download the current resolver list from 'download.dnscrypt.org'."
+msgstr ""
+
 msgid "Edit DNSCrypt-Proxy Configuration"
 msgstr ""
 
 msgid "Edit Dnsmasq Configuration"
 msgstr ""
 
-msgid "Enable Caching to speed up DNSCcrypt-Proxy."
+msgid "Edit Resolvcrypt Configuration"
 msgstr ""
 
-msgid "Ephemeral Keys"
+msgid "Enable Caching to speed up DNSCcrypt-Proxy."
 msgstr ""
 
-msgid "Extra options"
+msgid "Ephemeral Keys"
 msgstr ""
 
 msgid "File Checksum"
@@ -76,7 +89,7 @@ msgid ""
 "online</a>"
 msgstr ""
 
-msgid "General options"
+msgid "General Options"
 msgstr ""
 
 msgid "IP Address"
@@ -88,10 +101,7 @@ msgstr ""
 msgid "Input file not found, please check your configuration."
 msgstr ""
 
-msgid "Instance options"
-msgstr ""
-
-msgid "Keep in mind to configure Dnsmasq as well."
+msgid "Instance Options"
 msgstr ""
 
 msgid "Local Cache"
@@ -106,16 +116,38 @@ msgid ""
 "is happening on the network."
 msgstr ""
 
-msgid "Name of the remote DNS service for resolving queries."
+msgid ""
+"Name of the remote DNS service for resolving queries incl. Location, DNSSEC- "
+"and NOLOG-Flag."
 msgstr ""
 
-msgid ""
-"Options for further tweaking in case the defaults are not suitable for you."
+msgid "No SSL support available.<br />"
+msgstr ""
+
+msgid "No default resolver list and no SSL support available.<br />"
 msgstr ""
 
 msgid "Overview"
 msgstr ""
 
+msgid "Please edit the file manually in the 'Advanced' section."
+msgstr ""
+
+msgid ""
+"Please install a 'libustream-ssl' library to download the current resolver "
+"list from 'download.dnscrypt.org'."
+msgstr ""
+
+msgid ""
+"Please install a resolver list to '/usr/share/dnscrypt-proxy/dnscrypt-"
+"resolvers.csv' to use this package."
+msgstr ""
+
+msgid ""
+"Please note: This may change the values for 'noresolv', 'resolvfile', "
+"'allservers' and the list 'server' settings."
+msgstr ""
+
 msgid "Port"
 msgstr ""
 
@@ -125,12 +157,7 @@ msgstr ""
 msgid "Refresh Resolver List"
 msgstr ""
 
-msgid "Resolver"
-msgstr ""
-
-msgid ""
-"SSL support not available, please install an libustream-ssl variant to use "
-"this package."
+msgid "Resolver (LOC/SEC/NOLOG)"
 msgstr ""
 
 msgid "Save"
@@ -142,6 +169,9 @@ msgstr ""
 msgid "Startup Trigger"
 msgstr ""
 
+msgid "The config file '/etc/resolv-crypt.conf' already exist.<br />"
+msgstr ""
+
 msgid "The listening port for DNS queries."
 msgstr ""
 
@@ -165,6 +195,11 @@ msgid ""
 "file (/etc/config/dhcp)."
 msgstr ""
 
+msgid ""
+"This form allows you to modify the content of the resolv-crypt configuration "
+"file (/etc/resolv-crypt.conf)."
+msgstr ""
+
 msgid "This form shows the content of the current DNSCrypt Resolver List."
 msgstr ""
 
@@ -178,10 +213,12 @@ msgid ""
 "server."
 msgstr ""
 
-msgid "To restrict the trigger, add only the relevant network interface(s)."
+msgid ""
+"To restrict the trigger, select only the relevant network interface. Usually "
+"the 'wan' interface should work for most users."
 msgstr ""
 
-msgid "Usually the 'wan' interface should work for most users."
+msgid "Transfer Options To Dnsmasq"
 msgstr ""
 
 msgid "View Logfile"
index 65ef012450ce7dc18d23fe3dfa59cc7887ce7b5d..9e5057e701a2d350726a7711c8b4e96df71706a7 100644 (file)
@@ -3,6 +3,7 @@
 #-- Licensed to the public under the GNU General Public License v2.
 . /lib/functions/network.sh
 
+[ "$(uci -q get fwknopd.@access[0].KEY)" != "CHANGEME" ] && exit 0
 uci batch <<EOF
        add ucitrack fwknopd
        set ucitrack.@fwknopd[-1].init=fwknopd
index abca5d3e5a3016506d0fbcc5332fc2aa06dee4a0..48850bd361ff4172f30ad259ad0dcd5860da7380 100644 (file)
@@ -4,23 +4,23 @@ if [ "$1" != "" ]; then
 entry_num=$1
 fi
 
-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)
+key_base64=$(uci -q get fwknopd.@access[$entry_num].KEY_BASE64)
+key=$(uci -q get fwknopd.@access[$entry_num].KEY)
+hmac_key_base64=$(uci -q get fwknopd.@access[$entry_num].HMAC_KEY_BASE64)
+hmac_key=$(uci -q get fwknopd.@access[$entry_num].HMAC_KEY)
 
-if [ $key_base64 != "" ]; then
+if [ "$key_base64" != "" ]; then
 qr="KEY_BASE64:$key_base64"
 fi
-if [ $key != "" ]; then
+if [ "$key" != "" ]; then
 qr="$qr KEY:$key"
 
 fi
-if [ $hmac_key_base64 != "" ]; then
+if [ "$hmac_key_base64" != "" ]; then
 qr="$qr HMAC_KEY_BASE64:$hmac_key_base64"
 fi
-if [ $hmac_key != "" ]; then
+if [ "$hmac_key" != "" ]; then
 qr="$qr HMAC_KEY:$hmac_key"
 fi
 
-qrencode -o - "$qr"
+qrencode -t svg -I -o - "$qr"
index bc467fde401f4f5accb853d8bbdf8632510df2c3..3f59e536434ed16b3ce9ea1caa62a3c92a687f26 100644 (file)
@@ -130,7 +130,7 @@ o:value("P", translate("Pictures"))
 
 
 s:taboption("general", DynamicList, "media_dir", translate("Media directories:"),
-       translate("Set this to the directory you want scanned. If you want to restrict the directory to a specific content type, you can prepend the type ('A' for audio, 'V' for video, 'P' for images), followed by a comma, to the directory (eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."))
+       translate("Set this to the directory you want scanned. If you want to restrict the directory to a specific content type, you can prepend the type ('A' for audio, 'V' for video, 'P' for images), followed by a comma, to the directory (eg. A,/mnt/media/Music). Multiple directories can be specified."))
 
 
 o = s:taboption("general", DynamicList, "album_art_names", translate("Album art names:"),
index 5b2915dc75d1cea75bf7a408c0ef095bf96b8b30..ed710e5a972d507b23b65bf36b2be68f0c48a99f 100644 (file)
@@ -134,7 +134,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index 3f0f87ccb2b1468848268ed177680063c4a56574..f642510776b78d7d40e225ec0f831df0de78dd84 100644 (file)
@@ -136,7 +136,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index 3d866e88244e04fa2dadc651b52611a869be0cb0..4d20ec2a8deafa312bab257b389f22882d72aff1 100644 (file)
@@ -152,7 +152,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Spezifiziert die zu durchsuchenden Medienverzeichnisse. Durch Voranstellung "
 "eines Buchstaben gefolgt von einem Komma kann ein Verzeichnis auf einen "
index b6780c3ce48ae298cbac6f0ee69b09bb8400b447..d7af11cd5d54336b940ed62b252e333575e38509 100644 (file)
@@ -131,7 +131,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index ef1ebe2f6feecb83b3490249bb62a01acdf73d32..fefcfcc94671c28d249425346314a9798c414691 100644 (file)
@@ -148,12 +148,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 
 msgid "Specify the path to the MiniSSDPd socket."
 msgstr "Specify the path to the MiniSSDPd socket."
index ea0605624f4f1cbba82563cbed7d031df16be2a2..e08fff7efc8a6084fae111180ab792cc84986a26 100644 (file)
@@ -145,11 +145,11 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Directorio a explorar. Si quiere restringir el directorio a un contenido "
 "específico puede añadir el tipo ('A' par audio, 'V' para vídeo o 'P' para "
-"imágenes), seguido por una coma al nombre del directorio (ej. media_dir=A,/"
+"imágenes), seguido por una coma al nombre del directorio (ej. A,/"
 "mnt/media/Music). Se puede establecer varios directorios."
 
 msgid "Specify the path to the MiniSSDPd socket."
index dde8f1bcef7628ac5b5e5af14af2a0f8f8bacf11..5eb2e1bba29c05c6fd3146226cb3a41ab9692b82 100644 (file)
@@ -131,7 +131,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index b6780c3ce48ae298cbac6f0ee69b09bb8400b447..d7af11cd5d54336b940ed62b252e333575e38509 100644 (file)
@@ -131,7 +131,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index dcb6064eb7cd7be7517a02a1974fb8fe2e1e6e30..4f259c10280159248acd1fab0c608994ec18123c 100644 (file)
@@ -150,12 +150,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Állítsa be a vizsgálandó könyvtárra. Ha a könyvtárat egy adott típusú "
 "tartalom szerint szeretné korlátozni, akkor a neve előtt vesszővel "
 "elválasztva megadhatja a típust ('A' az audió, 'V' a videó, 'P' a képek "
-"számára. pl.: media_dir=A,/mnt/media/Music). Több könyvtár is megadható."
+"számára. pl.: A,/mnt/media/Music). Több könyvtár is megadható."
 
 msgid "Specify the path to the MiniSSDPd socket."
 msgstr "A MiniSSDPd socket elérési útját határozza meg."
index 3adb8c1e99758fd29357e1d6fd21291f7ec60da1..b118916f6a54c19a40d3374e72df191b77235805 100644 (file)
@@ -152,12 +152,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Impostare la cartella che si desidera sottoporre a scansione. Se si desidera "
 "limitare la directory per un tipo di contenuto specifico, è possibile "
 "anteporre il tipo ('A' per l'audio, 'V' per video, 'P' per le immagini), "
-"seguito da una virgola, nella cartella (es. media_dir = A,/mnt/media/Music). "
+"seguito da una virgola, nella cartella (es. A,/mnt/media/Music). "
 "Cartelle multiple possono essere specificate."
 
 msgid "Specify the path to the MiniSSDPd socket."
index c29c10d75eae8312a24f907be3c037bd7e68692f..66bc503a248b313e4cc7b9f239ed15bd631435b3 100644 (file)
@@ -146,12 +146,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "miniDLNA がスキャンするディレクトリを設定します。ディレクトリを特定のコンテン"
 "ツに制限したい場合、タイプをパスのはじめに付け、コンマ記号で区切ることで設定"
 "できます ('A'=オーディオ \"audio\", 'V'=ビデオ \"video\", 'P'=写真 \"images"
-"\", 例: media_dir=A,/mnt/media/Music)。また、このオプションは複数のディレクト"
+"\", 例: A,/mnt/media/Music)。また、このオプションは複数のディレクト"
 "リを登録可能です。"
 
 msgid "Specify the path to the MiniSSDPd socket."
index f0e6bb25e4ce5c9e1ec4e5ed2a87ae36693e2d77..a9f875e1bb0a6e9e8d5a3d5286c250155c3d6fba 100644 (file)
@@ -130,7 +130,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index dac9c4be4c9f67ae2278cc4ad666e8ad15db8dda..4d70e39c5bebe7bb2299f8cfce0d00358dee2ece 100644 (file)
@@ -150,12 +150,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Her kan en velge den katalogen som blir skannet. Om du ønsker å begrense "
 "katalogen til en spesifikk innholdstype kan sette en bokstav foran ('A' for "
 "lyd, 'V' for video, 'P' for bilder), etterfulgt av et komma og katalogen. "
-"(f.eks media_dir=A,/mnt/media/Musikk). Flere kataloger kan brukes."
+"(f.eks A,/mnt/media/Musikk). Flere kataloger kan brukes."
 
 msgid "Specify the path to the MiniSSDPd socket."
 msgstr "Angi banen til MiniSSDPd socketen."
index c06bfc3cd64e1472cc8181b2b2f2b48fe4cf4d37..6215dc8f15d63e69c797bda022921fb6b0130d9b 100644 (file)
@@ -149,11 +149,11 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Ustaw tu folder, który chcesz skanować. Jeśli chcesz ograniczyć folder do "
 "konkretnego typu zawartości, możesz poprzedzić ścieżkę typem (\"A\" dla "
-"audio, \"V\" dla wideo, \"P\" dla obrazów) i przecinkiem (np media_dir=A,/"
+"audio, \"V\" dla wideo, \"P\" dla obrazów) i przecinkiem (np A,/"
 "mnt/media/Muzyka). Możesz podać kilka folderów."
 
 msgid "Specify the path to the MiniSSDPd socket."
index 583bb3d80632e862ccc197a0a2a1e653e10f105d..29c7a7ca158ee45a2b5e7e59804cd798c861d6d3 100644 (file)
@@ -151,12 +151,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Defina esta opção para o diretório que você deseja verificar. Se você quiser "
 "restringir o diretório para um tipo específico de conteúdo, você pode "
 "prefixar o tipo ('A' para áudio, 'V' para o vídeo, 'P' para imagens), "
-"seguido por uma vírgula, para o diretório (por exemplo media_dir = A, / "
+"seguido por uma vírgula, para o diretório (por exemplo A, / "
 "mnt / media / Música). Vários diretórios podem ser especificados."
 
 msgid "Specify the path to the MiniSSDPd socket."
index 30b4e1ddfb6208084d7252935632b38361c6d029..95d6b32666eeeadec85ac767b29ff490ae81b2c0 100644 (file)
@@ -138,7 +138,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index 65737c40024fe49a26ccc4deb5110bc90c3d643f..786ac98489fc095b4118d13215b2fd3c9aa5d2f6 100644 (file)
@@ -135,7 +135,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index f97ed05cce46624e20f5954dbdda5567b50d906e..893fc71a89796c41b46f2b71a5f6cfd296bc488d 100644 (file)
@@ -151,12 +151,12 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "Директории, которые необходимо сканировать. Если вы хотите установить "
 "ограничение на определённый тип содержимого в директории, вы можете написать "
 "тип ('A' для аудио, 'V' для видео, 'P' для изображений) перед путём к "
-"директории, за которым следует запятая (напр. media_dir=A,/mnt/media/Music). "
+"директории, за которым следует запятая (напр. A,/mnt/media/Music). "
 "Может быть указано несколько директорий."
 
 msgid "Specify the path to the MiniSSDPd socket."
index 8ae7cb3ae7bfdd13cf5a2063cb93220b7f4f725c..0ea592e24960740d10708be3698675b1f72e5596 100644 (file)
@@ -131,7 +131,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index 7140555048ae82fc7046134d70c2dd920b3116f5..169d55ab6bbe566cb8554f9739b69260bc18af2c 100644 (file)
@@ -132,7 +132,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index 033dfa5264d5acda7057753a5d14d29fa73516bf..d5658249d0e3d84d850bd3772c652e316cf8b6cc 100644 (file)
@@ -124,7 +124,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index a819da5b4f63217c8a893541172331bd1c295579..973dbd0791e083f3852b3cd519f9de895d42e0cb 100644 (file)
@@ -131,7 +131,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index 2eb83bd75d41a0c6ab2c2227cacd1b1f31cdb391..8bf5160f37eeda3e9c16c92b8a3c13bdf9d4b23a 100644 (file)
@@ -132,7 +132,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index a819da5b4f63217c8a893541172331bd1c295579..973dbd0791e083f3852b3cd519f9de895d42e0cb 100644 (file)
@@ -131,7 +131,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
index bd569344e92e5600b2bfd3b4ea9d49f5a5437261..393b116e34259eecb330f97df9061ddb980ba8b0 100644 (file)
@@ -132,12 +132,12 @@ msgstr ""
 "设定严格遵守DLNA标准。这将允许服务器端降小大尺寸JPEG图像,在(至少)索尼DLNA"
 "的产品这可能会降低JPEG服务性能。"
 
-# 如果写成media_dir=A,/mnt/media/Music,uci会报错。实际上应该是A,/mnt/media/Music,这样生成的minidlna.conf刚好是media_dir=A,/mnt/media/Music
+# 如果写成A,/mnt/media/Music,uci会报错。实际上应该是A,/mnt/media/Music,这样生成的minidlna.conf刚好是A,/mnt/media/Music
 msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 "设置要扫描的目录。如果你想限制特定内容类型的目录,你可以在前面加上类型(用于音频'A','V'视频,'P'图片),其次是用逗号分隔的目录(如A,/mnt"
 "/媒体/音乐)。可以指定多个目录。"
index c563adbb3484b943447c9b50f07084a2b0d3c325..5dad93e5839a7a540d182ff826b242067aa34f7b 100644 (file)
@@ -134,7 +134,7 @@ msgid ""
 "Set this to the directory you want scanned. If you want to restrict the "
 "directory to a specific content type, you can prepend the type ('A' for "
 "audio, 'V' for video, 'P' for images), followed by a comma, to the directory "
-"(eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified."
+"(eg. A,/mnt/media/Music). Multiple directories can be specified."
 msgstr ""
 
 msgid "Specify the path to the MiniSSDPd socket."
diff --git a/applications/luci-app-noddos/Makefile b/applications/luci-app-noddos/Makefile
new file mode 100644 (file)
index 0000000..4c2b904
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright (C) 2017 Steven Hessing (steven.hessing@gmail.com)
+# Based on initial implementation by Stan Grishin (stangri@melmac.net)
+# This is free software, licensed under the GNU General Public License v3.
+
+include $(TOPDIR)/rules.mk
+
+PKG_LICENSE:=GPLv3
+PKG_MAINTAINER:=Steven Hessing <steven.hessing@gmail.com>
+
+LUCI_TITLE:=Noddos Service Web UI
+LUCI_DESCRIPTION:=Provides Web UI for Noddos service.
+LUCI_DEPENDS:=+luci +noddos
+LUCI_PKGARCH:=all
+PKG_RELEASE:=1
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/luci-app-noddos/htdocs/cgi-bin/clientdetails b/applications/luci-app-noddos/htdocs/cgi-bin/clientdetails
new file mode 100755 (executable)
index 0000000..6ff4ce5
--- /dev/null
@@ -0,0 +1,91 @@
+#!/usr/bin/lua
+
+-- clientdetails.lua : Provides details about client devices discovered by Noddos
+-- Copyright (C) 2017 Steven Hessing (steven.hessing@gmail.com)
+-- This is free software, licensed under the GNU General Public License v3.
+
+require "nixio.fs"
+
+print ("Content-type: Text/html\n")
+local info = os.getenv("QUERY_STRING")
+
+local params = {}
+local echo = {}
+
+function print_row(key)
+       print ("<tr><th>")
+       print (key)
+       print ("</th><td>")
+       print (device[key])
+       print ("</td></tr>")
+end
+
+for name, value in string.gmatch(info .. '&', '(.-)%=(.-)%&') do
+    value = string.gsub(value , '%+', ' ')
+    value = string.gsub(value , '%%(%x%x)', function(dpc)
+        return string.char(tonumber(dpc,16))
+               end )
+       params[name] = value
+
+    value = string.gsub(value, "%&", "&amp;")
+    value = string.gsub(value, "%<", "&lt;")
+    value = string.gsub(value, '%"', "&quot;")
+    echo[name] = value
+end
+
+device = {}
+profile = {}
+
+if nixio.fs.access("/var/lib/noddos/DeviceDump.json") then
+        io.input("/var/lib/noddos/DeviceDump.json")
+        local t = io.read("*all")
+       local json = require "luci.jsonc"
+        local devdump = json.parse(t)
+        for i, v in ipairs(devdump) do
+                               if v.MacAddress == params["mac"] then
+                        device = v
+                end
+        end
+        io.input("/var/lib/noddos/DeviceProfiles.json")
+        t = io.read("*all")
+        local temp = json.parse(t)
+        for i, v in ipairs(temp) do
+                if device.DeviceProfileUuid == v.DeviceProfileUuid then
+                        profile = v
+                end
+        end
+end
+pagetop = [[
+<html>
+  <head>
+    <title>Client Details by Noddos</title>
+    <meta charset="utf-8">
+    <!--[if lt IE 9]><script src="/luci-static/bootstrap/html5.js?v=git-17.100.70571-29fabe2"></script><![endif]-->
+    <meta name="viewport" content="initial-scale=1.0">
+    <link rel="stylesheet" href="/luci-static/bootstrap/cascade.css?v=git-17.100.70571-29fabe2">
+    <link rel="stylesheet" media="only screen and (max-device-width: 854px)" href="/luci-static/bootstrap/mobile.css?v=git-17.100.70571-29fabe2" type="text/css" />
+    <link rel="shortcut icon" href="/luci-static/bootstrap/favicon.ico">
+    <script src="/luci-static/resources/xhr.js?v=git-17.100.70571-29fabe2"></script>
+  </head>
+  <body text=blue>
+    <h1>Client Details</h1>
+]]
+print (pagetop)
+
+if params["mac"] ~= nil then
+       print ("<table>")
+       for i, key in ipairs{"MacAddress", "Ipv4Address", "Ipv6Address", "DeviceProfileUuid", "DhcpHostname", "DhcpVendor", "SsdpFriendlyName", "SsdpLocation", "SsdpManufacturer", "SsdpModelName", "SsdpModelUrl", "SsdpSerialNumber", "SsdpServer","SsdpUserAgent", "MdnsDeviceUrl", "MdnsHw", "MdnsManufacturer", "MdnsModelName", "MdnsOs", "WsDiscoveryTypes", "WsDiscoveryXaddrs", "DnsQueries"} do
+               print_row(key)
+       end
+       print ("</table>")
+else 
+       print ("no mac address specified")
+end
+
+pagebase = [[<br><br>
+Client Details by
+<a href=http://www.noddos.io>Noddos</a>
+</body></html>
+]]
+
+print (pagebase)
diff --git a/applications/luci-app-noddos/luasrc/controller/noddos.lua b/applications/luci-app-noddos/luasrc/controller/noddos.lua
new file mode 100644 (file)
index 0000000..c45e24b
--- /dev/null
@@ -0,0 +1,10 @@
+-- Copyright 2017 Steven Hessing (steven.hessing@gmail.com)
+-- This is free software, licensed under the GNU General Public License v3.
+-- /usr/lib/lua/luci/controller/noddos.lua
+
+module("luci.controller.noddos", package.seeall)
+function index()
+    entry({"admin", "status", "noddos"}, template("noddos/clients"), _("Noddos Clients"), 3)
+    entry({"admin", "network", "noddos"}, cbi("noddos"), _("Noddos Client Tracking"), 55)
+end
+
diff --git a/applications/luci-app-noddos/luasrc/model/cbi/noddos.lua b/applications/luci-app-noddos/luasrc/model/cbi/noddos.lua
new file mode 100644 (file)
index 0000000..3abb73b
--- /dev/null
@@ -0,0 +1,46 @@
+-- Copyright 2017 Steven Hessing (steven.hessing@gmail.com)
+-- This is free software, licensed under the GNU General Public License v3.
+-- /usr/lib/lua/luci/model/cbi/noddos.lua
+
+m = Map("noddos", translate("Client Firewall"),
+    translate("Noddos controls traffic from the clients on your network to the Internet. " ..
+        "This helps protect your network, the bandwidth on your Internet connection and " ..
+        "the Internet"))
+
+s = m:section(TypedSection, "noddos", translate("Server Settings"))
+s.anonymous = true
+s.addremove = false
+
+s:option(Flag, "rfc1918",
+    translate("Private networks"),
+    translate("Report traffic to private networks (10/8, 172.16/12, 192.168/16, fd75:6b5d:352c:ed05::/64)")).default=false
+
+s:option(Flag, "upload",
+    translate("Upload anonimized traffic stats"),
+    translate("Uploading your statistics helps improving device recognition " ..
+        "and discovering hacked devices & botnets"))
+
+o = s:option(DynamicList, "whitelistipv4",
+    translate("Excluded IPv4 addresses"),
+    translate("Don't monitor these IPv4 addresses"))
+o.optional = true
+o.placeholder = "127.0.0.1 192.168.1.1"
+o.delimiter = " "
+o.datatype="list(ip4addr)"
+
+o = s:option(DynamicList, "whitelistipv6",
+    translate("Excluded IPv6 addresses"),
+    translate("Don't monitor these IPv6 addresses"))
+o.optional = true
+o.delimiter = " "
+o.datatype="list(ip6addr)"
+
+o = s:option(DynamicList, "whitelistmac",
+    translate("Excluded MAC addresses"),
+    translate("Don't monitor these MAC addresses"))
+o.optional = true
+o.delimiter = " "
+o.datatype="list(macaddr)"
+
+return m
+
diff --git a/applications/luci-app-noddos/luasrc/view/noddos/clients.htm b/applications/luci-app-noddos/luasrc/view/noddos/clients.htm
new file mode 100644 (file)
index 0000000..f2fb931
--- /dev/null
@@ -0,0 +1,111 @@
+<%#
+ Copyright (C) 2017 Steven Hessing <steven.hessing@gmail.com>
+  This is free software, licensed under the GNU General Public License v3.
+ /usr/lib/lua/luci/view/clients.htm
+-%>
+
+<%-
+
+    require "nixio.fs"
+    require "os"
+
+    local last_modified = "<boottime>"
+    local style = true
+    local v
+    local devdump
+
+    if nixio.fs.access("/var/lib/noddos/DeviceDump.json") then
+        last_modified = os.date("%c", nixio.fs.stat("/var/lib/noddos/DeviceDump.json")['mtime'])
+        io.input("/var/lib/noddos/DeviceDump.json")
+        t = io.read("*all")
+        devdump = luci.jsonc.parse(t)
+        io.input("/var/lib/noddos/DeviceProfiles.json")
+        t = io.read("*all")
+        temp = luci.jsonc.parse(t)
+        devicevalues = {}
+        for i, v in ipairs(temp) do
+            devicevalues[v.DeviceProfileUuid] = v
+        end
+    end
+-%>
+
+<%+header%>
+
+<div class="cbi-map" id="cbi-network">
+    <h2 name="content"><%:Clients%></h2>
+    <div class="cbi-map-descr"><%:The following clients have been discovered on the network. The last discovery was completed at %><%=last_modified%></div>
+
+    <fieldset class="cbi-section">
+        <legend><%:Recognized Clients%></legend>
+        <div class="cbi-section-node">
+            <table class="cbi-section-table">
+                <tr class="cbi-section-table-titles">
+                    <th class="cbi-section-table-cell"><%:Hostname%></th>
+                    <th class="cbi-section-table-cell"><%:IPv4%></th>
+                    <th class="cbi-section-table-cell"><%:MAC%></th>
+                    <th class="cbi-section-table-cell"><%:Manufacturer%></th>
+                    <th class="cbi-section-table-cell"><%:Model%></th>
+                    <th class="cbi-section-table-cell"><%:Class%></th>
+                </tr>
+
+                <%
+                    for i,v in ipairs(devdump) do
+                        if v.DeviceProfileUuid ~= "" then
+                %>
+                <tr class="cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
+                    <td class="cbi-value-field"><%=v.Hostname%></td>
+                    <td class="cbi-value-field"><%=v.Ipv4Address%></td>
+                    <td class="cbi-value-field"><a href="/cgi-bin/clientdetails?mac=<%=v.MacAddress%>"><%=v.MacAddress%></a></td>
+                    <td class="cbi-value-field"><%=devicevalues[v.DeviceProfileUuid].Manufacturer%></td>
+                    <td class="cbi-value-field"><%=devicevalues[v.DeviceProfileUuid].Model%></td>
+                    <td class="cbi-value-field"><%=devicevalues[v.DeviceProfileUuid].ThingClass%></td>
+                </tr>
+                <%
+                            style=false
+                        end
+                    end
+                %>
+            </table>
+        </div>
+    </fieldset>
+    <br />
+    <fieldset class="cbi-section">
+        <legend><%:Unrecognized Clients%></legend>
+        <div class="cbi-section-node">
+            <table class="cbi-section-table">
+                <tr class="cbi-section-table-titles">
+                    <th class="cbi-section-table-cell"><%:Hostname%></th>
+                    <th class="cbi-section-table-cell"><%:IPv4%></th>
+                    <th class="cbi-section-table-cell"><%:MAC%></th>
+                    <th class="cbi-section-table-cell"><%:Manufacturer%></th>
+                    <th class="cbi-section-table-cell"><%:Model%></th>
+                    <th class="cbi-section-table-cell"><%:DhcpVendor%></th>
+                    <th class="cbi-section-table-cell"><%:DhcpHostname%></th>
+                </tr>
+
+                <%
+                    for i,v in ipairs(devdump) do
+                        if v.DeviceProfileUuid == "" then
+                %>
+                <tr class="cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
+                    <td class="cbi-value-field"><%=v.Hostname%></td>
+                    <td class="cbi-value-field"><%=v.Ipv4Address%></td>
+                    <td class="cbi-value-field"><a href="/cgi-bin/clientdetails?mac=<%=v.MacAddress%>"><%=v.MacAddress%></a></td>
+                    <td class="cbi-value-field"><%=v.SsdpManufacturer%></td>
+                    <td class="cbi-value-field"><%=v.SsdpModelName%></td>
+                    <td class="cbi-value-field"><%=v.DhcpVendor1%></td>
+                    <td class="cbi-value-field"><%=v.DhcpHostname%></td>
+                </tr>
+                <%
+                            style=false
+                        end
+                    end
+                %>
+            </table>
+        </div>
+    </fieldset>
+
+</div>
+
+<%+footer%>
+
diff --git a/applications/luci-app-noddos/po/ja/noddos.po b/applications/luci-app-noddos/po/ja/noddos.po
new file mode 100644 (file)
index 0000000..c6b4617
--- /dev/null
@@ -0,0 +1,111 @@
+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.4\n"
+"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Language: ja\n"
+
+msgid "Class"
+msgstr "クラス"
+
+msgid "Client Firewall"
+msgstr "クライアント ファイアウォール"
+
+msgid "Clients"
+msgstr "クライアント"
+
+msgid "DhcpHostname"
+msgstr "DHCP ホスト名"
+
+msgid "DhcpVendor"
+msgstr "DHCP ベンダー"
+
+msgid "Don't monitor these IPv4 addresses"
+msgstr "これらの IPv4 アドレスを監視しません。"
+
+msgid "Don't monitor these IPv6 addresses"
+msgstr "これらの IPv6 アドレスを監視しません。"
+
+msgid "Don't monitor these MAC addresses"
+msgstr "これらの MAC アドレスを監視しません。"
+
+msgid "Excluded IPv4 addresses"
+msgstr "除外する IPv4 アドレス"
+
+msgid "Excluded IPv6 addresses"
+msgstr "除外する IPv6 アドレス"
+
+msgid "Excluded MAC addresses"
+msgstr "除外する MAC アドレス"
+
+msgid "Hostname"
+msgstr "ホスト名"
+
+msgid "IPv4"
+msgstr "IPv4"
+
+msgid "MAC"
+msgstr "MAC"
+
+msgid "Manufacturer"
+msgstr "製造元"
+
+msgid "Model"
+msgstr "モデル"
+
+msgid "Noddos Client Tracking"
+msgstr "Noddos クライアント トラッキング"
+
+msgid "Noddos Clients"
+msgstr "Noddos クライアント"
+
+msgid ""
+"Noddos controls traffic from the clients on your network to the Internet. "
+"This helps protect your network, the bandwidth on your Internet connection "
+"and the Internet"
+msgstr ""
+"Noddos は、ネットワーク内のクライアントからインターネットへのトラフィックを制"
+"御します。これは、ネットワークとインターネット接続の帯域幅、インターネットの"
+"保護に役立ちます。"
+
+msgid "Private networks"
+msgstr "プライベート ネットワーク"
+
+msgid "Recognized Clients"
+msgstr "識別済クライアント"
+
+msgid ""
+"Report traffic to private networks (10/8, 172.16/12, 192.168/16, "
+"fd75:6b5d:352c:ed05::/64)"
+msgstr ""
+"プライベート ネットワークへのトラフィックについてのレポート(10/8, "
+"172.16/12, 192.168/16, fd75:6b5d:352c:ed05::/64)"
+
+msgid "Server Settings"
+msgstr "サーバー設定"
+
+msgid ""
+"The following clients have been discovered on the network. The last "
+"discovery was completed at"
+msgstr ""
+"以下のクライアントがネットワーク内で見つかりました。探索の最終実行日時:"
+
+msgid "Unrecognized Clients"
+msgstr "未識別クライアント"
+
+msgid "Upload anonimized traffic stats"
+msgstr "匿名トラフィック状況のアップロード"
+
+msgid ""
+"Uploading your statistics helps improving device recognition and discovering "
+"hacked devices & botnets"
+msgstr ""
+"デバイスの識別や、ハックされたデバイスとボットネットの発見の改善に役立てるた"
+"め、統計をアップロードします。"
diff --git a/applications/luci-app-noddos/po/templates/noddos.pot b/applications/luci-app-noddos/po/templates/noddos.pot
new file mode 100644 (file)
index 0000000..69d1357
--- /dev/null
@@ -0,0 +1,92 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8"
+
+msgid "Class"
+msgstr ""
+
+msgid "Client Firewall"
+msgstr ""
+
+msgid "Clients"
+msgstr ""
+
+msgid "DhcpHostname"
+msgstr ""
+
+msgid "DhcpVendor"
+msgstr ""
+
+msgid "Don't monitor these IPv4 addresses"
+msgstr ""
+
+msgid "Don't monitor these IPv6 addresses"
+msgstr ""
+
+msgid "Don't monitor these MAC addresses"
+msgstr ""
+
+msgid "Excluded IPv4 addresses"
+msgstr ""
+
+msgid "Excluded IPv6 addresses"
+msgstr ""
+
+msgid "Excluded MAC addresses"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv4"
+msgstr ""
+
+msgid "MAC"
+msgstr ""
+
+msgid "Manufacturer"
+msgstr ""
+
+msgid "Model"
+msgstr ""
+
+msgid "Noddos Client Tracking"
+msgstr ""
+
+msgid "Noddos Clients"
+msgstr ""
+
+msgid ""
+"Noddos controls traffic from the clients on your network to the Internet. "
+"This helps protect your network, the bandwidth on your Internet connection "
+"and the Internet"
+msgstr ""
+
+msgid "Private networks"
+msgstr ""
+
+msgid "Recognized Clients"
+msgstr ""
+
+msgid ""
+"Report traffic to private networks (10/8, 172.16/12, 192.168/16, "
+"fd75:6b5d:352c:ed05::/64)"
+msgstr ""
+
+msgid "Server Settings"
+msgstr ""
+
+msgid ""
+"The following clients have been discovered on the network. The last "
+"discovery was completed at"
+msgstr ""
+
+msgid "Unrecognized Clients"
+msgstr ""
+
+msgid "Upload anonimized traffic stats"
+msgstr ""
+
+msgid ""
+"Uploading your statistics helps improving device recognition and discovering "
+"hacked devices & botnets"
+msgstr ""
diff --git a/applications/luci-app-noddos/root/etc/uci-defaults/40_luci-noddos b/applications/luci-app-noddos/root/etc/uci-defaults/40_luci-noddos
new file mode 100644 (file)
index 0000000..17abbc4
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+# Copyright (C) 2017 Steven Hessing (steven.hessing@live.com)
+# This is free software, licensed under the GNU General Public License v3
+
+uci -q batch <<-EOF >/dev/null
+       delete ucitrack.@noddos[-1]
+       add ucitrack noddos
+       set ucitrack.@noddos[-1].init=noddos
+       commit ucitrack
+EOF
+
+rm -f /tmp/luci-indexcache
+exit 0
index 7865881cb6a2dcf8406cd0ad33ea7fc504e9a1ab..dc7718217c04e66dc83e43ab40d55ab645f75aec 100644 (file)
@@ -685,6 +685,10 @@ local knownParams = {
                        "tls_auth",
                        "/etc/openvpn/tlsauth.key",
                        translate("Additional authentication over TLS") },
+               { Value,
+                       "tls_crypt",
+                       "/etc/openvpn/tlscrypt.key",
+                       translate("Encrypt and authenticate all control channel packets with the key") },
        --      { Value,
        --              "askpass",
        --              "[file]",
index 1b75fe6cd7b334d79d09eb6b5a271921983c10ac..d75646907803762d44d94f7d317bbd5a9dd476a4 100644 (file)
@@ -199,6 +199,9 @@ msgstr "Activa la interfície de gestió a <em>IP</em> <em>port</em>"
 msgid "Enabled"
 msgstr "Activat"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Xifra d'encriptació per paquets"
 
index c68742217e894544837f504d6f79fd976ad044e1..4fba010530363dc22bce72f95f3bf357bd642f76 100644 (file)
@@ -194,6 +194,9 @@ msgstr ""
 msgid "Enabled"
 msgstr "Povoleno"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index dc382ee44d35c86d92cc6b8ba88f172b9d297d62..a203c92e79b0e2e07f68d40c34d1c605892520c6 100644 (file)
@@ -197,6 +197,9 @@ msgstr "Administratorschnittstelle aktivieren"
 msgid "Enabled"
 msgstr "Einschalten"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Verschlüsselungsalgorithmus für Pakete"
 
index 2c787d816c04c9a0955ab0f6d47c6a183d605a8d..63dd8985a89aee32a09c85007b73e3c0b0af3524 100644 (file)
@@ -198,6 +198,9 @@ msgstr ""
 msgid "Enabled"
 msgstr "Ενεργοποιημένο"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index a5994dc2929eaa33e51b43469cf629c90cc3ff71..51819f6b09e236e7880c3ada4a78e8388efe50a4 100644 (file)
@@ -197,6 +197,9 @@ msgstr "Enable management interface on <em>IP</em> <em>port</em>"
 msgid "Enabled"
 msgstr "Enabled"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr "Encrypt and authenticate all control channel packets with the key"
+
 msgid "Encryption cipher for packets"
 msgstr "Encryption cipher for packets"
 
index a5141831ce11309516d554a5a67f49818182ccef..819e7ee509a8f2c9ac4516a65f6cf2980fdc0731 100644 (file)
@@ -196,6 +196,9 @@ msgstr "Interfaz de gestión en <em>IP</em> <em>puerto</em>"
 msgid "Enabled"
 msgstr "Activado"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Cifra de encriptación de paquetes"
 
index e2f33dc16438d782b9d639a6abb56877eedc2dbd..331d1931e890314cd7f7d252e8974a336a6da3bb 100644 (file)
@@ -206,6 +206,9 @@ msgstr "Activer l'interface de gestion sur <em>IP</em> <em>port</em>"
 msgid "Enabled"
 msgstr "Activé"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Méthode de chiffrement des paquets"
 
index 3528444199fa41f3ecb57dc0f3ed9e2dbb0bb280..517da49080a1b78aaaf467401334695715e94cc4 100644 (file)
@@ -192,6 +192,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 1f9d691d046a419c9ffc5400164e0c318878a194..67a8217b1ace5a16fd5a51bc09825f554c7f893c 100644 (file)
@@ -196,6 +196,9 @@ msgstr ""
 msgid "Enabled"
 msgstr "Engedélyezve"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 233c144c57a66101d3be0285b6ae848647bc36c2..834015b8e835b85aa038171814aea911e5d9b493 100644 (file)
@@ -198,6 +198,9 @@ msgstr ""
 msgid "Enabled"
 msgstr "Abilitato"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 5474008682e247958b751d56eb3562a4e3f8c94a..232ae27e1fbfd2a8c7dfeb95e8f692bfe732157c 100644 (file)
@@ -196,6 +196,9 @@ msgstr ""
 msgid "Enabled"
 msgstr "有効"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index c439c3eb1539c8b8ca4f91ba94832b40d68a1185..6c6e0d604635715fd39c1b0d9e9c4948eb3f938d 100644 (file)
@@ -191,6 +191,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 3528444199fa41f3ecb57dc0f3ed9e2dbb0bb280..517da49080a1b78aaaf467401334695715e94cc4 100644 (file)
@@ -192,6 +192,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index e289a80fc112a80c5e72840abe21b1afac3347de..bef5a13a1ac7ad450b1fa083ac06b985b6cdbea4 100644 (file)
@@ -197,6 +197,9 @@ msgstr "Włącz interfejs zarządzalny na <em>IP</em> <em>port</em>"
 msgid "Enabled"
 msgstr "Włączone"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Szyfrowanie dla pakietów"
 
index 84b0540581dc9b073838d6e79f56cfd2175942c1..26642e2c46362697c867b95f08610177c3997d1b 100644 (file)
@@ -198,6 +198,9 @@ msgstr "Ativar o interface de gestão em <em>IP</em> <em>porta</em>"
 msgid "Enabled"
 msgstr "Ativado"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Cifra de encriptação para pacotes"
 
index 95c50a571a6e4cf7d6058dfbe94616614b0113e3..d74b0a690dc3ca131550dc2536060d2bf576e81b 100644 (file)
@@ -198,6 +198,9 @@ msgstr "Activar o interface de gestão em <em>IP</em> <em>porta</em>"
 msgid "Enabled"
 msgstr "Activado"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Cifra de encriptação para pacotes"
 
index 4a7a5b7515d20d9954f1aa43967831adfeda1ef1..ef5e7ce379cb0a2d9f14b385f696607d6ef65783 100644 (file)
@@ -193,6 +193,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 00e585c3744106d570b72afe6fc68ea9fe70eb35..89cf1161cc3c0b2f2aa16030e287d22782e1952e 100644 (file)
@@ -200,6 +200,9 @@ msgstr "Включить интерфейс управления на <em>IP</em
 msgid "Enabled"
 msgstr "Включено"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr "Шифровать и аутентифициоровать ключом все пакеты канала управления"
+
 msgid "Encryption cipher for packets"
 msgstr "Шифрование для пакетов"
 
index f001c12eaf95c29e1af26783339a87bebbbf9606..9005529762771464d64af5d73ac18a7dca5e3887 100644 (file)
@@ -191,6 +191,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index c03e1495cb47a9431007f35cf092707968fdc1b8..838f4650dd5f9e664286ed51bea4010fa96d1ff7 100644 (file)
@@ -192,6 +192,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index f2e4011662ccf96f3ba87e15a3abb21cbac6701b..126cab076f9ac9c6b92a183846e70d06c0b2cb7a 100644 (file)
@@ -184,6 +184,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 7b8ffad34cbb2b6e21b966bbe263134fbbbfa182..917c36d561830929ad63667d34e7da93b9829f5d 100644 (file)
@@ -191,6 +191,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index a6910c23099f187365819476ccd396007d21981e..e98b52a8aeea7863113affff10cbba82f9ee1ea6 100644 (file)
@@ -195,6 +195,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index 8e8b96dc7f6d4f4e9520e5a9daf25caff5b8ca9a..f3873b068fe45c456689f8d41fab4705f33a4621 100644 (file)
@@ -197,6 +197,9 @@ msgstr "Kích hoạt giao diện điều hành trên <em>IP</em> <em>cổng</em>
 msgid "Enabled"
 msgstr "Kích hoạt "
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "Encryption cipher cho các gói"
 
index 3904ac4bf842fb4bcf287e7e1833825d9e02cfc8..093a9cd071b5570cf1b37b7ffb1d82786dc48a3d 100644 (file)
@@ -196,6 +196,9 @@ msgstr "在<em>IP</em> <em>port</em>上启用可管理接口"
 msgid "Enabled"
 msgstr "启用"
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr "加密数据包"
 
index f26aeb097a1de8067cececf9190f4073b6f50cac..556fb9b8f015644a34de39a2824b6e89bab45aa2 100644 (file)
@@ -190,6 +190,9 @@ msgstr ""
 msgid "Enabled"
 msgstr ""
 
+msgid "Encrypt and authenticate all control channel packets with the key"
+msgstr ""
+
 msgid "Encryption cipher for packets"
 msgstr ""
 
index de3638164ec109d23a0ea80802e2db91dd7c7d48..8ebac375f2623328643e3334051e4b68342c0a9a 100644 (file)
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
 msgid "Block Time"
 msgstr "Tempo de bloqueio"
 
index 67bf586908eadf2b91936ffff9f4901c24baf9a6..17417fa49990db23513f039f36ed80c8d426b3b2 100644 (file)
@@ -14,11 +14,15 @@ msgstr ""
 
 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."
+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"
+msgstr ""
+"'NomeDoEquipamento:porta' ou 'IPv4:Porta' ou '[IPv6]:Porta' em que o "
+"Radicale deve escutar"
 
 msgid "AUTO"
 msgstr "AUTO"
@@ -48,7 +52,9 @@ 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'."
+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"
@@ -68,7 +74,9 @@ 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."
+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"
@@ -76,7 +84,9 @@ 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."
+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"
@@ -95,7 +105,11 @@ 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."
+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"
@@ -108,7 +122,9 @@ 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"
+msgstr ""
+"Atraso (em segundos) durante a inicialização do sistema antes do Radicale "
+"iniciar"
 
 #, fuzzy
 msgid "Directory"
@@ -131,7 +147,9 @@ 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"
+msgstr ""
+"Ativar/Desativar iniciação automática do Radicale na iniciação do sistema e "
+"em eventos de interface"
 
 msgid "Encoding"
 msgstr "Codificação"
@@ -164,7 +182,9 @@ 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)."
+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"
@@ -228,7 +248,8 @@ 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"
+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"
@@ -242,7 +263,9 @@ 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."
+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!"
@@ -263,7 +286,9 @@ 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."
+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."
@@ -307,7 +332,9 @@ 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)."
+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."
@@ -349,18 +376,23 @@ 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)."
+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."
+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!"
+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"
@@ -384,7 +416,9 @@ 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"
+msgstr ""
+"AVISO: Apenas 'Sistema de Arquivos está documentado e testado pelo "
+"desenvolvimento do Radicale"
 
 #, fuzzy
 msgid "Warning"
@@ -393,12 +427,16 @@ 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."
+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."
+msgstr ""
+"Você pode usar a interpolação de valores %(login)s e %(path)s do "
+"ConfigParser do Python."
 
 msgid "crypt"
 msgstr "cifrar"
@@ -429,4 +467,3 @@ msgstr "necessário"
 
 msgid "salted SHA-1"
 msgstr "SHA-1 com salto"
-
diff --git a/applications/luci-app-simple-adblock/po/sv/simple-adblock.po b/applications/luci-app-simple-adblock/po/sv/simple-adblock.po
new file mode 100644 (file)
index 0000000..e95f95f
--- /dev/null
@@ -0,0 +1,80 @@
+msgid ""
+msgstr "Content-Type: text/plain; charset=UTF-8\n"
+
+msgid "Blacklisted Domain URLs"
+msgstr "Svartlistade domänadresser"
+
+msgid "Blacklisted Domains"
+msgstr "Svartlistade domäner"
+
+msgid "Blacklisted Hosts URLs"
+msgstr "Svartlistade värdadresser"
+
+msgid "Controls system log and console output verbosity"
+msgstr "Kontrollerar systemloggar och detaljnivån för konsoll-utmatningen"
+
+msgid "Enable/start service"
+msgstr "Aktivera/starta tjänsten"
+
+msgid "Force Router DNS"
+msgstr ""
+
+msgid "Force Router DNS server to all local devices"
+msgstr ""
+
+msgid "Forces Router DNS use on local devices, also known as DNS Hijacking"
+msgstr ""
+
+msgid "Individual domains to be blacklisted"
+msgstr "Individuella domäner som ska svartlistas"
+
+msgid "Individual domains to be whitelisted"
+msgstr "Individulla domäner som ska svartlistas"
+
+msgid "LED to indicate status"
+msgstr "LED för att indikera status"
+
+msgid "Let local devices use their own DNS servers if set"
+msgstr ""
+
+msgid "Output Verbosity Setting"
+msgstr ""
+
+msgid "Pick the LED not already used in"
+msgstr ""
+
+msgid "Simple AdBlock"
+msgstr "Simple AdBlock"
+
+msgid "Simple AdBlock Settings"
+msgstr "Inställningar för Simple AdBlock"
+
+msgid "Some output"
+msgstr "Viss utmatning"
+
+msgid "Suppress output"
+msgstr "Förträng utmatning"
+
+msgid "System LED Configuration"
+msgstr ""
+
+msgid "URLs to lists of domains to be blacklisted"
+msgstr ""
+
+msgid "URLs to lists of domains to be whitelisted"
+msgstr ""
+
+msgid "URLs to lists of hosts to be blacklisted"
+msgstr ""
+
+msgid "Verbose output"
+msgstr "Utförlig utmatning"
+
+msgid "Whitelisted Domain URLs"
+msgstr "Vitlistade domänadresser"
+
+msgid "Whitelisted Domains"
+msgstr "Vitlistade domäner"
+
+msgid "none"
+msgstr "ingen"
index 055c67b866959b0992fb2b56686ea007b40f14d7..a5ebcb7efeb78c7bbeb28a571c44cb811b2fc10a 100644 (file)
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Project-Id-Version: PACKAGE VERSION\n"
-"Last-Translator: Automatically generated\n"
+"Last-Translator: Kristoffer Grundström <hamnisdude@gmail.com>\n"
 "Language-Team: none\n"
 "Language: sv\n"
 "MIME-Version: 1.0\n"
@@ -45,6 +45,8 @@ msgstr ""
 msgid ""
 "Become an active member of this community and help by operating your own node"
 msgstr ""
+"Bli en aktiv medlem av det här sällskapet och hjälp till genom att "
+"tillhandahålla en egen nod"
 
 msgid "Blacklist"
 msgstr "Svartlista"
index 693bbc12e9f89e768554a8c0aeb6e0e74613abe4..022e16ec00e221aab8881a12220b64f8c0e7f021 100644 (file)
@@ -82,7 +82,7 @@ msgid "External ports"
 msgstr "外部端口"
 
 msgid "General Settings"
-msgstr "ä¸\80è\88¬è®¾ç½®"
+msgstr "å\9fºæ\9c¬è®¾ç½®"
 
 msgid "Internal addresses"
 msgstr "内部地址"
index 291789cb6464d805b5575f19f9f5cf3384f86e52..6393195e59d6cd9b975684bb71cef8576f3abc17 100644 (file)
@@ -16,7 +16,7 @@ LUCI_DEPENDS:=+lua +libuci-lua +luci-lib-nixio +luci-lib-ip +rpcd +libubus-lua +
 
 PKG_SOURCE:=LuaSrcDiet-0.12.1.tar.bz2
 PKG_SOURCE_URL:=https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luasrcdiet
-PKG_MD5SUM:=ed7680f2896269ae8633756e7edcf09050812f78c8f49e280e63c30d14f35aea
+PKG_HASH:=ed7680f2896269ae8633756e7edcf09050812f78c8f49e280e63c30d14f35aea
 PKG_LICENSE:=Apache-2.0
 
 HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/LuaSrcDiet-0.12.1
index 5573a9b86cae3ed90e4f50b232fc54e8c20a23f5..feff0855c4a5c0600b09a3c429695203b768da30 100644 (file)
@@ -498,11 +498,13 @@ function forwarding.dest(self)
 end
 
 function forwarding.src_zone(self)
-       return zone(self:src())
+       local z = zone(self:src())
+       return z.sid and z
 end
 
 function forwarding.dest_zone(self)
-       return zone(self:dest())
+       local z = zone(self:dest())
+       return z.sid and z
 end
 
 
index 2a433b5696872aa112d96d42be200d10f54d04ab..546fd8e85a53c4edfaeefff9fb3c0f405ffb8a0c 100644 (file)
        &#160;&#8658;&#160;
        <% for _, fwd in ipairs(zone:get_forwardings_by("src")) do
                fz = fwd:dest_zone()
-               empty = false %>
+               if fz then
+                       empty = false %>
                <label class="zonebadge" style="background-color:<%=fz:get_color()%>">
                        <strong><%=fz:name()%></strong>
                </label>&#160;
-       <% end %>
+       <% end end %>
        <% if empty then %>
                <label class="zonebadge zonebadge-empty">
                        <strong><%=zone:forward():upper()%></strong>
index 45c221eac1def5d9c1e26c777eb76c0255b664d9..971d1a88a577e1b4995aca26757d2a22d28b86b4 100644 (file)
@@ -301,7 +301,8 @@ msgstr "Permetre el localhost"
 
 msgid "Allow remote hosts to connect to local SSH forwarded ports"
 msgstr ""
-"Permetre a màquines remotes de connectar-se als ports reenviats de l'SSH local"
+"Permetre a màquines remotes de connectar-se als ports reenviats de l'SSH "
+"local"
 
 msgid "Allow root logins with password"
 msgstr "Accés d'administrador amb contrasenya"
@@ -638,7 +639,7 @@ msgid ""
 msgstr ""
 "Fes clic a \"Genera l'arxiu\" per obtenir un fitxer .tar.gz amb els fitxers "
 "de configuració actuals. Per restablir el microprogramari al seu estat "
-"inicial, fes clic a "\"Restableix la configuració\" (només funciona amb "
+"inicial, fes clic a \"Restableix la configuració\" (només funciona amb "
 "imatges squashfs)."
 
 msgid "Client"
@@ -954,9 +955,8 @@ msgid ""
 "Dropbear offers <abbr title=\"Secure Shell\">SSH</abbr> network shell access "
 "and an integrated <abbr title=\"Secure Copy\">SCP</abbr> server"
 msgstr ""
-"El Dropbear ofereix accés a una consola <abbr title=\"Secure Shell\">SSH"
-"</abbr> per xarxa i un servidor <abbr title=\"Secure Copy\">SCP</abbr> "
-"integrat"
+"El Dropbear ofereix accés a una consola <abbr title=\"Secure Shell\">SSH</"
+"abbr> per xarxa i un servidor <abbr title=\"Secure Copy\">SCP</abbr> integrat"
 
 msgid "Dual-Stack Lite (RFC6333)"
 msgstr ""
@@ -1029,6 +1029,9 @@ msgstr "Habilita la funcionalitat VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Habilita l'aprenentatge i l'envelliment"
 
@@ -1330,7 +1333,6 @@ msgid ""
 msgstr ""
 "Aquí pots afegir-hi les claus SSH públiques (una per línia) per entrar per "
 "SSH amb autenticació per clau."
-"
 
 msgid "Hermes 802.11b Wireless Controller"
 msgstr "Controlador sense fil Hermes 802.11b"
@@ -1480,7 +1482,7 @@ msgstr "IPv6-sobre-IPv4 (6to4)"
 msgid "Identity"
 msgstr "Identitat"
 
-msgid "If checked, 1DES is enaled"
+msgid "If checked, 1DES is enabled"
 msgstr ""
 
 msgid "If checked, encryption is disabled"
@@ -1770,8 +1772,8 @@ msgstr ""
 
 msgid "Listen only on the given interface or, if unspecified, on all"
 msgstr ""
-"Habilita el servei en totes les interfícies o, si no se n'especifica cap, "
-"en totes"
+"Habilita el servei en totes les interfícies o, si no se n'especifica cap, en "
+"totes"
 
 msgid "Listening port for inbound DNS queries"
 msgstr ""
@@ -3148,7 +3150,7 @@ msgid ""
 msgstr ""
 "S'ha pujat la imatge per a la memòria flaix. A sota hi ha llistades la suma "
 "de verificació i la mida del fitxer per assegurar la integritat de les dades."
-"<br />Fes clic a "\"Procedeix\" a continuació per començar el procés "
+"<br />Fes clic a \"Procedeix\" a continuació per començar el procés "
 "d'escriptura a la memòria flaix."
 
 msgid "The following changes have been committed"
@@ -3251,8 +3253,8 @@ msgid ""
 "There is no password set on this router. Please configure a root password to "
 "protect the web interface and enable SSH."
 msgstr ""
-"No s'ha establert cap contrasenya en aquest encaminador. Si us plau, configura "
-"una contrasenya per protegir la interfície web i l'accés SSH."
+"No s'ha establert cap contrasenya en aquest encaminador. Si us plau, "
+"configura una contrasenya per protegir la interfície web i l'accés SSH."
 
 msgid "This IPv4 address of the relay"
 msgstr ""
@@ -3278,8 +3280,9 @@ 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 ""
-"Aquest és el contingut de /etc/rc.local. Afegeix-hi les teves comandes (abans "
-"de la línia 'exit 0') per executar-les en finalitzar el procés d'arrencada."
+"Aquest és el contingut de /etc/rc.local. Afegeix-hi les teves comandes "
+"(abans de la línia 'exit 0') per executar-les en finalitzar el procés "
+"d'arrencada."
 
 msgid ""
 "This is the local endpoint address assigned by the tunnel broker, it usually "
@@ -3452,7 +3455,7 @@ msgid ""
 msgstr ""
 "Puja aquí una imatge compatible amb sysupgrade per reemplaçar el "
 "microprogramari actual. Activa \"Mantenir la configuració\" per retenir la "
-"configuració actual (requereix una imatge de microprogramari compatible).""
+"configuració actual (requereix una imatge de microprogramari compatible)."
 
 msgid "Upload archive..."
 msgstr "Puja un arxiu..."
@@ -3670,6 +3673,13 @@ msgstr "Sense fils reinciat"
 msgid "Wireless shut down"
 msgstr "Sense fils aturat"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Escriure les peticions DNS rebudes al registre del sistema"
 
index d754cfe4d6a669d9ee524af366716b0397489988..8f5044d50536d66d03924c823ae88634fa6b3a53 100644 (file)
@@ -1029,6 +1029,9 @@ msgstr "Povolit funkcionalitu VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Povolit ARP učení a stárnutí"
 
@@ -3713,6 +3716,13 @@ msgstr "Bezdrátová síť restartována"
 msgid "Wireless shut down"
 msgstr "Bezdrátová síť vypnuta"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Zapisovat přijaté požadavky DNS do systemového logu"
 
index d95a600991d5c629f7bc03a223523667107896d6..dc0f7f2bd824db8ed741145909123611f9ca5e5e 100644 (file)
@@ -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-26 17:57+0200\n"
-"PO-Revision-Date: 2017-03-06 11:15+0200\n"
+"PO-Revision-Date: 2017-10-17 22:46+0200\n"
 "Last-Translator: JoeSemler <josef.semler@gmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\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.6\n"
+"X-Generator: Poedit 2.0.4\n"
+"Language-Team: \n"
 
 msgid "%s is untagged in multiple VLANs!"
 msgstr ""
@@ -1047,6 +1047,10 @@ msgstr "VLAN-Funktionalität aktivieren"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr "WPS-via-Knopfdruck aktivieren, erfordert WPA(2)-PSK"
 
+#, fuzzy
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr "Key Reinstallation (KRACK) Gegenmaßnahmen aktivieren "
+
 msgid "Enable learning and aging"
 msgstr "Learning und Aging aktivieren"
 
@@ -3838,6 +3842,17 @@ msgstr "WLAN neu gestartet"
 msgid "Wireless shut down"
 msgstr "WLAN heruntergefahren"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+"Deaktiviert bestimmte EAPOL-Key-Retransmissionen um Key-Reinstallation "
+"(KRACK) Angriffe auf Client-Seite zu erschweren. Diese Abhilfemaßnahme kann "
+"Kompatibilitätsprobleme verursachen und die Zuverlässigkeit von "
+"Schlüsselerneuerungen in ausgelasteten Umgebungen verringern."
+
 msgid "Write received DNS requests to syslog"
 msgstr "Empfangene DNS-Anfragen in das Systemprotokoll schreiben"
 
index 4460938b8d170000b04564c322a5754d6c5319e0..7135314f2e891f9c32a63c36a331c296c8c9df6f 100644 (file)
@@ -1041,6 +1041,9 @@ msgstr "Ενεργοποίηση λειτουργίας VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Ένεργοποίηση learning and aging"
 
@@ -3664,6 +3667,13 @@ msgstr "Το ασύρματο δίκτυο επανεκκινήθηκε"
 msgid "Wireless shut down"
 msgstr "Το ασύρματο δίκτυο τερματίστηκε"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Καταγραφή των ληφθέντων DNS αιτήσεων στο syslog"
 
index 0b50d4b32b00654ce16ae99ad2e416e73917a48b..9cae494b57ac20762fb14469d80d167b6d800354 100644 (file)
@@ -1020,6 +1020,9 @@ msgstr ""
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3623,6 +3626,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index 18adcfa8aa1a84d04a1a1861f0abb12ee5c1636e..3e71d4f436075db195f8db0e14abaa3e99b1ff73 100644 (file)
@@ -1035,6 +1035,9 @@ msgstr "Activar funcionalidad VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Activar aprendizaje y envejecimiento"
 
@@ -3739,6 +3742,13 @@ msgstr "Red inalámbrica rearrancada"
 msgid "Wireless shut down"
 msgstr "Apagando red inalámbrica"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Escribir las peticiones de DNS recibidas en el registro del sistema"
 
index 704acfa89b867a6c9749aa13eb24d9899679083a..0acfcef72a24803f2799217caac161be49aeddfb 100644 (file)
@@ -1045,6 +1045,9 @@ msgstr "Acviter la gestion des VLANs"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Activer l'apprentissage et la péremption"
 
@@ -3758,6 +3761,13 @@ msgstr "Wi-Fi ré-initialisé"
 msgid "Wireless shut down"
 msgstr "Wi-Fi arrêté"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Écrire les requêtes DNS reçues dans syslog"
 
index 7c956b8db05ed445e25a966635b66e3ce1360197..a261f8782cb189a1ce33f470edfa8f35b9db4a7c 100644 (file)
@@ -1005,6 +1005,9 @@ msgstr "אפשר תפקוד VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "אפשר למידה והזדקנות"
 
@@ -3579,6 +3582,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index 0fb435c71f0a73de0540e2831f920ce145e4e8d4..bd2e4eeecac4f70521f8623832cba96e6b960ee1 100644 (file)
@@ -1038,6 +1038,9 @@ msgstr "VLAN funkció engedélyezése"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Tanulás és aging engedélyezése"
 
@@ -3745,6 +3748,13 @@ msgstr "Vezetéknélküli rész újraindítva"
 msgid "Wireless shut down"
 msgstr "Vezetéknélküli rész leállítása"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "A kapott DNS kéréseket írja a rendszernaplóba"
 
index 8bb0da666db134f5868b4c30164a73de5b1ef6b8..c3590b0e4cb865bb75768ba2b146e1fcfd48f219 100644 (file)
@@ -1041,6 +1041,9 @@ msgstr "Abilita la funzionalità VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr "Abilita pulsante WPS, richiede WPA(2)-PSK"
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Attivare l'apprendimento e l'invecchiamento"
 
@@ -2298,8 +2301,8 @@ msgid ""
 "Override the netmask sent to clients. Normally it is calculated from the "
 "subnet that is served."
 msgstr ""
-"Sovrascrivi la netmask data ai clienti. Normalmente è calcolata dalla "
-"subnet servita."
+"Sovrascrivi la netmask data ai clienti. Normalmente è calcolata dalla subnet "
+"servita."
 
 msgid "Override the table used for internal routes"
 msgstr "Sovrascrivi la tabella usata per le route interne"
@@ -3033,10 +3036,10 @@ msgid ""
 "to DHCP clients. They are also required for non-dynamic interface "
 "configurations where only hosts with a corresponding lease are served."
 msgstr ""
-"I contratti statici vengono utilizzati per assegnare indirizzi IP fissi e nomi "
-"host simbolici ai client DHCP. Essi sono necessari anche per interfacce di "
-"configurazione non dinamici, dove solo gli host col contratto corrispondente "
-"vengono serviti."
+"I contratti statici vengono utilizzati per assegnare indirizzi IP fissi e "
+"nomi host simbolici ai client DHCP. Essi sono necessari anche per interfacce "
+"di configurazione non dinamici, dove solo gli host col contratto "
+"corrispondente vengono serviti."
 
 msgid "Status"
 msgstr "Stato"
@@ -3368,8 +3371,8 @@ msgid ""
 "To restore configuration files, you can upload a previously generated backup "
 "archive here."
 msgstr ""
-"Per ripristinare i file configurazione, puoi inviare un archivio di backup generato "
-"precedentemente qui."
+"Per ripristinare i file configurazione, puoi inviare un archivio di backup "
+"generato precedentemente qui."
 
 msgid "Tone"
 msgstr ""
@@ -3544,8 +3547,8 @@ msgstr ""
 "contratto. L'<em>Indirizzo-MAC</em> identifica l'host, l'<em>Indirizzo-IPv4</"
 "em> specifica l'indirizzo fisso da utilizzare e il <em>Nome Host</em> è "
 "assegnato come nome simbolico alla richiesta dell'host. L'opzionale "
-"<em>tempo di Contratto</em> può essere usato per impostare un tempo di contratto "
-"non-standard a uno specifico host, p.e. 12h, 3d o infinito."
+"<em>tempo di Contratto</em> può essere usato per impostare un tempo di "
+"contratto non-standard a uno specifico host, p.e. 12h, 3d o infinito."
 
 msgid "Used"
 msgstr "Usato"
@@ -3643,7 +3646,8 @@ msgstr ""
 msgid ""
 "Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)"
 msgstr ""
-"Attendi sincro NTP quei dati secondi, immetti 0 per disabilitare l'attesa (opzionale)"
+"Attendi sincro NTP quei dati secondi, immetti 0 per disabilitare l'attesa "
+"(opzionale)"
 
 msgid "Waiting for changes to be applied..."
 msgstr "In attesa delle modifiche da applicare ..."
@@ -3705,6 +3709,13 @@ msgstr "Wireless riavviato"
 msgid "Wireless shut down"
 msgstr "Wireless spento"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Scrittura delle richiesta DNS ricevute nel syslog"
 
index 7639f4b619dfd76fca659d59acc8a1cfb518eb9d..212f56522f78e5ce9e56b5e53814129e23f5aa81 100644 (file)
@@ -3,14 +3,14 @@ msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2009-06-10 03:40+0200\n"
-"PO-Revision-Date: 2017-07-28 12:17+0900\n"
+"PO-Revision-Date: 2017-10-20 13: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: Poedit 2.0.3\n"
+"X-Generator: Poedit 2.0.4\n"
 "Language-Team: \n"
 
 msgid "%s is untagged in multiple VLANs!"
@@ -161,19 +161,19 @@ msgstr ""
 "を行う必要があります。"
 
 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"
@@ -298,7 +298,7 @@ msgstr "ローカルホストを許可する"
 
 msgid "Allow remote hosts to connect to local SSH forwarded ports"
 msgstr ""
-"リモートホストがSSH転送されたローカルのポートに接続することを許可します"
+"リモートホストがSSH転送されたローカルのポートに接続することを許可します"
 
 msgid "Allow root logins with password"
 msgstr "パスワードでの root ログインを許可"
@@ -409,7 +409,7 @@ msgid ""
 msgstr ""
 
 msgid "Assign interfaces..."
-msgstr ""
+msgstr "インターフェースの割当て..."
 
 msgid ""
 "Assign prefix parts using this hexadecimal subprefix ID for this interface."
@@ -561,8 +561,8 @@ msgid ""
 "Build/distribution specific feed definitions. This file will NOT be "
 "preserved in any sysupgrade."
 msgstr ""
-"ビルド/ディストリビューション固有のフィード定義です。このファイルはsysupgrade"
-"の際に引き継がれません。"
+"ビルド / ディストリビューション固有のフィード定義です。このファイルは"
+"sysupgradeの際に引き継がれません。"
 
 msgid "Buttons"
 msgstr "ボタン"
@@ -1037,14 +1037,17 @@ msgstr "VLAN機能を有効にする"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr "WPS プッシュボタンを有効化するには、WPA(2)-PSKが必要です。"
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr "Key Reinstallation (KRACK) 対策の有効化"
+
 msgid "Enable learning and aging"
 msgstr "ラーニング エイジング機能を有効にする"
 
 msgid "Enable mirroring of incoming packets"
-msgstr ""
+msgstr "受信パケットのミラーリングを有効化"
 
 msgid "Enable mirroring of outgoing packets"
-msgstr ""
+msgstr "送信パケットのミラーリングを有効化"
 
 msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
 msgstr ""
@@ -1945,10 +1948,10 @@ msgid "Minimum hold time"
 msgstr "最短保持時間"
 
 msgid "Mirror monitor port"
-msgstr ""
+msgstr "ミラー監視ポート"
 
 msgid "Mirror source port"
-msgstr ""
+msgstr "ミラー元ポート"
 
 msgid "Missing protocol extension for proto %q"
 msgstr "プロトコル %qのプロトコル拡張が見つかりません"
@@ -2066,7 +2069,7 @@ msgid "Network boot image"
 msgstr "ネットワークブート用イメージ"
 
 msgid "Network without interfaces."
-msgstr ""
+msgstr "インターフェースの無いネットワークです。"
 
 msgid "Next »"
 msgstr "次 »"
@@ -2129,7 +2132,7 @@ msgid "Normal"
 msgstr "標準"
 
 msgid "Not Found"
-msgstr ""
+msgstr "見つかりません"
 
 msgid "Not associated"
 msgstr "アソシエーションされていません"
@@ -2302,7 +2305,7 @@ msgstr ""
 "ネットから計算されます。"
 
 msgid "Override the table used for internal routes"
-msgstr ""
+msgstr "内部ルートに使用されるテーブルを上書きします。"
 
 msgid "Overview"
 msgstr "概要"
@@ -2377,7 +2380,7 @@ msgid "Password of Private Key"
 msgstr "秘密鍵のパスワード"
 
 msgid "Password of inner Private Key"
-msgstr ""
+msgstr "秘密鍵のパスワード"
 
 msgid "Password successfully changed!"
 msgstr "パスワードを変更しました"
@@ -2398,13 +2401,13 @@ 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 "ピーク:"
@@ -3178,7 +3181,7 @@ msgstr ""
 "<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."
@@ -3230,7 +3233,7 @@ msgid ""
 msgstr ""
 
 msgid "The length of the IPv6 prefix in bits"
-msgstr ""
+msgstr "IPv6 プレフィクスの長さ (bit) です。"
 
 msgid "The local IPv4 address over which the tunnel is created (optional)."
 msgstr ""
@@ -3243,12 +3246,18 @@ 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> は、異なるネット"
+"ワーク セグメントの分離にしばしば用いられます。通常、インターネットなどより上"
+"位のネットワークへの接続に使用するアップリンク ポートと、ローカル ネットワー"
+"ク用のその他のポートが存在します。"
 
 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 "
@@ -3473,7 +3482,7 @@ msgid "UUID"
 msgstr "UUID"
 
 msgid "Unable to dispatch"
-msgstr ""
+msgstr "ディスパッチできません"
 
 msgid "Unavailable Seconds (UAS)"
 msgstr ""
@@ -3558,7 +3567,7 @@ msgid "Use gateway metric"
 msgstr "ゲートウェイ メトリックを使用する"
 
 msgid "Use routing table"
-msgstr ""
+msgstr "ルーティング テーブルの使用"
 
 msgid ""
 "Use the <em>Add</em> Button to add a new lease entry. The <em>MAC-Address</"
@@ -3584,10 +3593,10 @@ msgid ""
 msgstr ""
 
 msgid "User certificate (PEM encoded)"
-msgstr ""
+msgstr "ユーザー証明書(PEM エンコード)"
 
 msgid "User key (PEM encoded)"
-msgstr ""
+msgstr "ユーザー秘密鍵(PEM エンコード)"
 
 msgid "Username"
 msgstr "ユーザー名"
@@ -3599,7 +3608,7 @@ msgid "VDSL"
 msgstr "VDSL"
 
 msgid "VLANs on %q"
-msgstr "%q上のVLANs"
+msgstr "%q上のVLAN"
 
 msgid "VLANs on %q (%s)"
 msgstr "%q上のVLAN (%s)"
@@ -3629,7 +3638,7 @@ msgid "Vendor Class to send when requesting DHCP"
 msgstr "DHCPリクエスト送信時のベンダークラスを設定"
 
 msgid "Verbose"
-msgstr ""
+msgstr "詳細"
 
 msgid "Verbose logging by aiccu daemon"
 msgstr ""
@@ -3677,7 +3686,7 @@ msgid "Waiting for command to complete..."
 msgstr "コマンド実行中です..."
 
 msgid "Waiting for device..."
-msgstr "ã\83\87ã\83\90ã\82¤ã\82¹ã\81®èµ·å\8b\95ã\82\92å¾\85ã\81£ã\81¦ã\81\84ã\81¾す..."
+msgstr "ã\83\87ã\83\90ã\82¤ã\82¹ã\82\92èµ·å\8b\95中ã\81§す..."
 
 msgid "Warning"
 msgstr "警告"
@@ -3730,6 +3739,17 @@ msgstr "無線LAN機能の再起動"
 msgid "Wireless shut down"
 msgstr "無線LAN機能停止"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+"キーのインストールに使用される EAPOL キーフレームの再送信を無効にすることによ"
+"り、クライアント サイドの Key Reinstallation Attacks (KRACK) を困難にします。"
+"この回避策は、相互運用性の問題や、特に高負荷のトラフィック環境下におけるキー "
+"ネゴシエーションの信頼性低下の原因となることがあります。"
+
 msgid "Write received DNS requests to syslog"
 msgstr "受信したDNSリクエストをsyslogへ記録します"
 
@@ -3839,7 +3859,7 @@ msgid "minimum 1280, maximum 1480"
 msgstr "最小値 1280、最大値 1480"
 
 msgid "minutes"
-msgstr ""
+msgstr ""
 
 msgid "no"
 msgstr "いいえ"
@@ -3909,78 +3929,3 @@ msgstr "はい"
 
 msgid "« Back"
 msgstr "« 戻る"
-
-#~ msgid "Leasetime"
-#~ msgstr "リース時間"
-
-#~ msgid "Optional."
-#~ msgstr "(オプション)"
-
-#~ msgid "automatic"
-#~ 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 "チェックボックスがオフの場合、追加のネットワークが作成されます。"
-
-#~ msgid "Join Network: Settings"
-#~ msgstr "ネットワークに接続する: 設定"
-
-#~ msgid "CPU"
-#~ msgstr "CPU"
-
-#~ msgid "Port %d"
-#~ msgstr "ポート %d"
-
-#~ msgid "VLAN Interface"
-#~ msgstr "VLANインターフェース"
index 0352004f59f0741526447ec3bf08015a67f12500..ddc27587cb9edc6b3aee7422ff8e4ad68abc2b2c 100644 (file)
@@ -1018,6 +1018,9 @@ msgstr "VLAN 기능 활성화"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3631,6 +3634,13 @@ msgstr "무선랜이 재시작되었습니다"
 msgid "Wireless shut down"
 msgstr "무선랜이 shutdown 되었습니다"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "받은 DNS 요청 내용을 systlog 에 기록합니다"
 
index 63c4e0bc2a16230401577d4b66ede8b77ffa187d..23f97a70bea58972725de61edd919a4da073512f 100644 (file)
@@ -990,6 +990,9 @@ msgstr ""
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3599,6 +3602,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index db2ece292d595f7545e32a822e0b521f70cf5435..d0048fb4fee97d481d5fed7eaaf3bf354f7c0b09 100644 (file)
@@ -1025,6 +1025,9 @@ msgstr "Aktiver VLAN funksjonalitet"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Aktiver 'læring' og 'aldring'"
 
@@ -3711,6 +3714,13 @@ msgstr "Trådløst startet på nytt"
 msgid "Wireless shut down"
 msgstr "Trådløst er slått av"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Skriv mottatte DNS forespørsler til syslog"
 
index 77ab4bf193f19e66898e345e08a8ba814fd3e1a0..9342214d5938d2a09390b96187ad564788336872 100644 (file)
@@ -1051,6 +1051,9 @@ msgstr "Włącz funkcjonalność VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Włącz uczenie się i starzenie"
 
@@ -3775,6 +3778,13 @@ msgstr "Zrestartowano sieć bezprzewodową"
 msgid "Wireless shut down"
 msgstr "Wyłączanie sieci bezprzewodowej"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Zapisz otrzymane żądania DNS do syslog'a"
 
index 4012349cfb0fea371808c38df4e2b4b444c65286..df0e915d650220080eccbca90366fe982e738810 100644 (file)
@@ -1087,6 +1087,9 @@ msgstr "Ativar funcionalidade de VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr "Habilite o botão WPS. requer WPA(2)-PSK"
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Ativar o aprendizado e obsolescência"
 
@@ -3901,6 +3904,13 @@ msgstr "A rede sem fio reiniciou"
 msgid "Wireless shut down"
 msgstr "Rede sem fio desligada"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Escreva as requisições DNS para o servidor de registro (syslog)"
 
index 88614179850e93f5254050f9309558f4ecbaac2b..c6db76867c4e843e6ffc9bdcbbbb15e593786c8e 100644 (file)
@@ -1041,6 +1041,9 @@ msgstr "Ativar a funcionalidade VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Ativar aprendizagem e envelhecimento"
 
@@ -3705,6 +3708,13 @@ msgstr "Rede wireless reiniciada"
 msgid "Wireless shut down"
 msgstr "Desligar wireless"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Escrever os pedidos de DNS para o syslog"
 
index 305d723615469d63a0b458cca3c90c11078b95e6..d7e860c4191f1aa4c727f0c64f5b7378174fb778 100644 (file)
@@ -996,6 +996,9 @@ msgstr "Activeaza VLAN-urile"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3572,6 +3575,13 @@ msgstr "Wireless-ul restartat"
 msgid "Wireless shut down"
 msgstr "Wireless-ul oprit"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Scrie cererile DNS primite in syslog"
 
index 51f8feb8c7083642b76140a476b44180c599de68..fdbe3842aac7db7b157ac0863c182179829aeea3 100644 (file)
@@ -1042,6 +1042,9 @@ msgstr "Включить поддержку VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Включить изучение и устаревание (learning/aging)"
 
@@ -3747,6 +3750,13 @@ msgstr "Беспроводная сеть перезапущена"
 msgid "Wireless shut down"
 msgstr "Выключение беспроводной сети"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Записывать полученные DNS-запросы в системный журнал"
 
index 5b434b9cf7d255c7b744e582c1309e0fd33ba154..09f32727a7b7fc9706865a9ec21289015b889e76 100644 (file)
@@ -977,6 +977,9 @@ msgstr ""
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3540,6 +3543,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index 058fcb56aa6265ca041ce1c14511c09ed894521d..c3f407ddd4598c156da291d19ca3540765391301 100644 (file)
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "PO-Revision-Date: 2014-04-28 09:22+0200\n"
-"Last-Translator: EricJ <ericj@acc.umu.se>\n"
+"Last-Translator: Kristoffer Grundström <hamnisdude@gmail.com>\n"
 "Language-Team: none\n"
 "Language: sv\n"
 "MIME-Version: 1.0\n"
@@ -12,10 +12,10 @@ msgstr ""
 "X-Generator: Pootle 2.0.6\n"
 
 msgid "%s is untagged in multiple VLANs!"
-msgstr ""
+msgstr "%s är inte taggad i flera VLAN!"
 
 msgid "(%d minute window, %d second interval)"
-msgstr ""
+msgstr "(%d minut-fönster, %d sekundintervall)"
 
 msgid "(%s available)"
 msgstr "(%s tillgängligt)"
@@ -27,22 +27,22 @@ msgid "(no interfaces attached)"
 msgstr "(inga gränssnitt har bifogats)"
 
 msgid "-- Additional Field --"
-msgstr ""
+msgstr "-- Ytterligare fält --"
 
 msgid "-- Please choose --"
-msgstr ""
+msgstr "-- Vänligen välj --"
 
 msgid "-- custom --"
 msgstr "-- anpassad --"
 
 msgid "-- match by device --"
-msgstr ""
+msgstr "-- matcha enligt enhet --"
 
 msgid "-- match by label --"
-msgstr ""
+msgstr "-- matcha enligt märke --"
 
 msgid "-- match by uuid --"
-msgstr ""
+msgstr "-- matcha enligt uuid --"
 
 msgid "1 Minute Load:"
 msgstr "Belastning senaste minuten:"
@@ -63,7 +63,7 @@ msgid "6-octet identifier as a hex string - no colons"
 msgstr ""
 
 msgid "802.11r Fast Transition"
-msgstr ""
+msgstr "802.11r Snabb förvandling"
 
 msgid "802.11w Association SA Query maximum timeout"
 msgstr ""
@@ -143,30 +143,32 @@ msgid "<abbr title=\"maximal\">Max.</abbr> concurrent queries"
 msgstr ""
 
 msgid "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>"
-msgstr ""
+msgstr "<abbr title='Pairvis: %s / Grupp: %s'>%s - %s</abbr>"
 
 msgid ""
 "<br/>Note: you need to manually restart the cron service if the crontab file "
 "was empty before editing."
 msgstr ""
+"<br/>Notera att: du måste starta om cron-tjänsten om crontab-filen "
+"var tom innan den ändrades."
 
 msgid "A43C + J43 + A43"
-msgstr ""
+msgstr "A43C + J43 + A43"
 
 msgid "A43C + J43 + A43 + V43"
-msgstr ""
+msgstr "A43C + J43 + A43 + V43"
 
 msgid "ADSL"
-msgstr ""
+msgstr "ADSL"
 
 msgid "AICCU (SIXXS)"
-msgstr ""
+msgstr "AICCU (SIXXS)"
 
 msgid "ANSI T1.413"
-msgstr ""
+msgstr "ANSI T1.413"
 
 msgid "APN"
-msgstr ""
+msgstr "APN"
 
 msgid "ARP retry threshold"
 msgstr ""
@@ -175,7 +177,7 @@ msgid "ATM (Asynchronous Transfer Mode)"
 msgstr ""
 
 msgid "ATM Bridges"
-msgstr ""
+msgstr "ATM-bryggor"
 
 msgid "ATM Virtual Channel Identifier (VCI)"
 msgstr ""
@@ -196,109 +198,111 @@ msgid "ATU-C System Vendor ID"
 msgstr ""
 
 msgid "AYIYA"
-msgstr ""
+msgstr "AYIYA"
 
 msgid "Access Concentrator"
 msgstr ""
 
 msgid "Access Point"
-msgstr ""
+msgstr "Accesspunkt"
 
 msgid "Action"
-msgstr ""
+msgstr "Åtgärd"
 
 msgid "Actions"
-msgstr ""
+msgstr "Åtgärder"
 
 msgid "Activate this network"
-msgstr ""
+msgstr "Aktivera det här nätverket"
 
 msgid "Active <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Routes"
-msgstr ""
+msgstr "Aktiva <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-rutter"
 
 msgid "Active <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Routes"
-msgstr ""
+msgstr "Aktiva <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-rutter"
 
 msgid "Active Connections"
-msgstr ""
+msgstr "Aktiva anslutningar"
 
 msgid "Active DHCP Leases"
-msgstr ""
+msgstr "Aktiva DHCP-kontrakt"
 
 msgid "Active DHCPv6 Leases"
-msgstr ""
+msgstr "Aktiva DHCPv6-kontrakt"
 
 msgid "Ad-Hoc"
-msgstr ""
+msgstr "Ad-Hoc"
 
 msgid "Add"
-msgstr ""
+msgstr "Lägg till"
 
 msgid "Add local domain suffix to names served from hosts files"
 msgstr ""
 
 msgid "Add new interface..."
-msgstr ""
+msgstr "Lägg till ett nytt gränssnitt"
 
 msgid "Additional Hosts files"
-msgstr ""
+msgstr "Ytterligare värdfiler"
 
 msgid "Additional servers file"
-msgstr ""
+msgstr "Ytterligare server-filer"
 
 msgid "Address"
-msgstr ""
+msgstr "Adress"
 
 msgid "Address to access local relay bridge"
-msgstr ""
+msgstr "Adress för att komma åt lokal reläbrygga"
 
 msgid "Administration"
-msgstr ""
+msgstr "Administration"
 
 msgid "Advanced Settings"
-msgstr ""
+msgstr "Avancerade inställningar"
 
 msgid "Aggregate Transmit Power(ACTATP)"
 msgstr ""
 
 msgid "Alert"
-msgstr ""
+msgstr "Varning"
 
 msgid ""
 "Allocate IP addresses sequentially, starting from the lowest available "
 "address"
 msgstr ""
+"Allokera IP-adresser sekventiellt med start från den lägsta möjliga "
+"adressen"
 
 msgid "Allocate IP sequentially"
-msgstr ""
+msgstr "Allokera IP sekventiellt"
 
 msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication"
-msgstr ""
+msgstr "Tillåt <abbr title=\"Secure Shell\">SSH</abbr> lösenordsautentisering"
 
 msgid "Allow all except listed"
-msgstr ""
+msgstr "Tillåt alla utom listade"
 
 msgid "Allow listed only"
-msgstr ""
+msgstr "Tillåt enbart listade"
 
 msgid "Allow localhost"
-msgstr ""
+msgstr "Tillåt localhost"
 
 msgid "Allow remote hosts to connect to local SSH forwarded ports"
-msgstr ""
+msgstr "Tillåt fjärrstyrda värdar att ansluta via SSH till lokalt vidarebefordrade portar"
 
 msgid "Allow root logins with password"
-msgstr ""
+msgstr "Tillåt root-inloggningar med lösenord"
 
 msgid "Allow the <em>root</em> user to login with password"
-msgstr ""
+msgstr "Tillåt <em>root</em>-användaren att logga in med lösenord"
 
 msgid ""
 "Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services"
 msgstr ""
 
 msgid "Allowed IPs"
-msgstr ""
+msgstr "Tillåtna IP-adresser"
 
 msgid ""
 "Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison"
@@ -357,78 +361,78 @@ msgid "Announce as default router even if no public prefix is available."
 msgstr ""
 
 msgid "Announced DNS domains"
-msgstr ""
+msgstr "Aviserade DNS-domäner"
 
 msgid "Announced DNS servers"
-msgstr ""
+msgstr "Aviserade DNS-servrar"
 
 msgid "Anonymous Identity"
-msgstr ""
+msgstr "Anonym identitet"
 
 msgid "Anonymous Mount"
-msgstr ""
+msgstr "Anonym montering"
 
 msgid "Anonymous Swap"
-msgstr ""
+msgstr "Anonym Swap"
 
 msgid "Antenna 1"
-msgstr ""
+msgstr "Antenn 1"
 
 msgid "Antenna 2"
-msgstr ""
+msgstr "Antenn 2"
 
 msgid "Antenna Configuration"
-msgstr ""
+msgstr "Konfiguration av antenn"
 
 msgid "Any zone"
-msgstr ""
+msgstr "Någon zon"
 
 msgid "Apply"
-msgstr ""
+msgstr "Verkställ"
 
 msgid "Applying changes"
-msgstr ""
+msgstr "Verkställer ändringar"
 
 msgid ""
 "Assign a part of given length of every public IPv6-prefix to this interface"
 msgstr ""
 
 msgid "Assign interfaces..."
-msgstr ""
+msgstr "Tilldela gränssnitten..."
 
 msgid ""
 "Assign prefix parts using this hexadecimal subprefix ID for this interface."
 msgstr ""
 
 msgid "Associated Stations"
-msgstr ""
+msgstr "Associerade stationer"
 
 msgid "Auth Group"
-msgstr ""
+msgstr "Autentiseringsgrupp"
 
 msgid "Authentication"
-msgstr ""
+msgstr "Autentisering"
 
 msgid "Authentication Type"
-msgstr ""
+msgstr "Typ av autentisering"
 
 msgid "Authoritative"
-msgstr ""
+msgstr "Auktoritiv"
 
 msgid "Authorization Required"
-msgstr ""
+msgstr "Tillstånd krävs"
 
 msgid "Auto Refresh"
-msgstr ""
+msgstr "Uppdatera automatiskt"
 
 msgid "Automatic"
-msgstr ""
+msgstr "Automatisk"
 
 msgid "Automatic Homenet (HNCP)"
-msgstr ""
+msgstr "Automatiskt hemnet (HNCP)"
 
 msgid "Automatically check filesystem for errors before mounting"
-msgstr ""
+msgstr "Kolla efter fel i filsystemet automatiskt innan det monteras"
 
 msgid "Automatically mount filesystems on hotplug"
 msgstr ""
@@ -437,64 +441,64 @@ msgid "Automatically mount swap on hotplug"
 msgstr ""
 
 msgid "Automount Filesystem"
-msgstr ""
+msgstr "Monstera filsystem automatiskt"
 
 msgid "Automount Swap"
-msgstr ""
+msgstr "Montera Swap automatiskt"
 
 msgid "Available"
-msgstr ""
+msgstr "Tillgänglig"
 
 msgid "Available packages"
-msgstr ""
+msgstr "Tillgängliga paket"
 
 msgid "Average:"
-msgstr ""
+msgstr "Snitt:"
 
 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 ""
+msgstr "BSSID"
 
 msgid "Back"
-msgstr ""
+msgstr "Bakåt"
 
 msgid "Back to Overview"
-msgstr ""
+msgstr "Backa till Överblick"
 
 msgid "Back to configuration"
-msgstr ""
+msgstr "Backa till konfiguration"
 
 msgid "Back to overview"
-msgstr ""
+msgstr "Backa till överblick"
 
 msgid "Back to scan results"
-msgstr ""
+msgstr "Backa till skanningsresultat"
 
 msgid "Backup / Flash Firmware"
-msgstr ""
+msgstr "Säkerhetskopiera / Flasha inre mjukvara"
 
 msgid "Backup / Restore"
-msgstr ""
+msgstr "Säkerhetskopiera / Återställ"
 
 msgid "Backup file list"
-msgstr ""
+msgstr "Säkerhetskopiera fillista"
 
 msgid "Bad address specified!"
-msgstr ""
+msgstr "Fel adress angiven!"
 
 msgid "Band"
-msgstr ""
+msgstr "Band"
 
 msgid "Behind NAT"
-msgstr ""
+msgstr "Bakom NAT"
 
 msgid ""
 "Below is the determined list of files to backup. It consists of changed "
@@ -503,7 +507,7 @@ msgid ""
 msgstr ""
 
 msgid "Bind interface"
-msgstr ""
+msgstr "Bind gränssnitt"
 
 msgid "Bind only to specific interfaces rather than wildcard address."
 msgstr ""
@@ -512,16 +516,16 @@ msgid "Bind the tunnel to this interface (optional)."
 msgstr ""
 
 msgid "Bitrate"
-msgstr ""
+msgstr "Bithastighet"
 
 msgid "Bogus NX Domain Override"
 msgstr ""
 
 msgid "Bridge"
-msgstr ""
+msgstr "Brygga"
 
 msgid "Bridge interfaces"
-msgstr ""
+msgstr "Brygga gränssnitt"
 
 msgid "Bridge unit number"
 msgstr ""
@@ -530,13 +534,13 @@ msgid "Bring up on boot"
 msgstr ""
 
 msgid "Broadcom 802.11%s Wireless Controller"
-msgstr ""
+msgstr "Broadcom 802.11%s Trådlös kontroller"
 
 msgid "Broadcom BCM%04x 802.11 Wireless Controller"
-msgstr ""
+msgstr "Broadcom BCM%04x 802.11 Trådlös kontroller"
 
 msgid "Buffered"
-msgstr ""
+msgstr "Buffrad"
 
 msgid ""
 "Build/distribution specific feed definitions. This file will NOT be "
@@ -544,46 +548,46 @@ msgid ""
 msgstr ""
 
 msgid "Buttons"
-msgstr ""
+msgstr "Knappar"
 
 msgid "CA certificate; if empty it will be saved after the first connection."
-msgstr ""
+msgstr "CA-certifikat; om tom så kommer den att sparas efter första anslutningen."
 
 msgid "CPU usage (%)"
-msgstr ""
+msgstr "CPU-användning (%)"
 
 msgid "Cancel"
-msgstr ""
+msgstr "Avbryt"
 
 msgid "Category"
-msgstr ""
+msgstr "Kategori"
 
 msgid "Chain"
-msgstr ""
+msgstr "Kedja"
 
 msgid "Changes"
-msgstr ""
+msgstr "Ändringar"
 
 msgid "Changes applied."
-msgstr ""
+msgstr "Tillämpade ändringar"
 
 msgid "Changes the administrator password for accessing the device"
-msgstr ""
+msgstr "Ändrar administratörens lösenord för att få tillgång till enheten"
 
 msgid "Channel"
-msgstr ""
+msgstr "Kanal"
 
 msgid "Check"
-msgstr ""
+msgstr "Kontrollera"
 
 msgid "Check fileystems before mount"
-msgstr ""
+msgstr "Kontrollera filsystemen innan de monteras"
 
 msgid "Check this option to delete the existing networks from this radio."
-msgstr ""
+msgstr "Bocka för det här alternativet för att ta bort befintliga nätverk från den här radion."
 
 msgid "Checksum"
-msgstr ""
+msgstr "Checksumma"
 
 msgid ""
 "Choose the firewall zone you want to assign to this interface. Select "
@@ -598,7 +602,7 @@ msgid ""
 msgstr ""
 
 msgid "Cipher"
-msgstr ""
+msgstr "Chiffer"
 
 msgid "Cisco UDP encapsulation"
 msgstr ""
@@ -610,10 +614,10 @@ msgid ""
 msgstr ""
 
 msgid "Client"
-msgstr ""
+msgstr "Klient"
 
 msgid "Client ID to send when requesting DHCP"
-msgstr ""
+msgstr "Klient-ID att skicka vid DHCP-förfrågning"
 
 msgid ""
 "Close inactive connection after the given amount of seconds, use 0 to "
@@ -621,49 +625,49 @@ msgid ""
 msgstr ""
 
 msgid "Close list..."
-msgstr ""
+msgstr "Stäng ner lista..."
 
 msgid "Collecting data..."
-msgstr ""
+msgstr "Samlar in data..."
 
 msgid "Command"
-msgstr ""
+msgstr "Kommando"
 
 msgid "Common Configuration"
-msgstr ""
+msgstr "Vanlig konfiguration"
 
 msgid "Configuration"
-msgstr ""
+msgstr "Konfiguration"
 
 msgid "Configuration applied."
-msgstr ""
+msgstr "Konfigurationen tillämpades"
 
 msgid "Configuration files will be kept."
-msgstr ""
+msgstr "Konfigurationsfiler kommer att behållas."
 
 msgid "Confirmation"
-msgstr ""
+msgstr "Bekräftelse"
 
 msgid "Connect"
-msgstr ""
+msgstr "Anslut"
 
 msgid "Connected"
-msgstr ""
+msgstr "Ansluten"
 
 msgid "Connection Limit"
-msgstr ""
+msgstr "Anslutningsgräns"
 
 msgid "Connection to server fails when TLS cannot be used"
 msgstr ""
 
 msgid "Connections"
-msgstr ""
+msgstr "Anslutningar"
 
 msgid "Country"
-msgstr ""
+msgstr "Land"
 
 msgid "Country Code"
-msgstr ""
+msgstr "Landskod"
 
 msgid "Cover the following interface"
 msgstr ""
@@ -675,19 +679,19 @@ msgid "Create / Assign firewall-zone"
 msgstr ""
 
 msgid "Create Interface"
-msgstr ""
+msgstr "Skapa gränssnitt"
 
 msgid "Create a bridge over multiple interfaces"
-msgstr ""
+msgstr "Skapa en brygga över flera gränssnitt"
 
 msgid "Critical"
-msgstr ""
+msgstr "Kritisk"
 
 msgid "Cron Log Level"
-msgstr ""
+msgstr "Loggnivå för Cron"
 
 msgid "Custom Interface"
-msgstr ""
+msgstr "Anpassat gränssnitt"
 
 msgid "Custom delegated IPv6-prefix"
 msgstr ""
@@ -698,7 +702,7 @@ msgid ""
 msgstr ""
 
 msgid "Custom feeds"
-msgstr ""
+msgstr "Anpassade flöden"
 
 msgid ""
 "Customizes the behaviour of the device <abbr title=\"Light Emitting Diode"
@@ -706,34 +710,34 @@ msgid ""
 msgstr ""
 
 msgid "DHCP Leases"
-msgstr ""
+msgstr "DHCP-kontrakt"
 
 msgid "DHCP Server"
-msgstr ""
+msgstr "DHCP-server"
 
 msgid "DHCP and DNS"
-msgstr ""
+msgstr "DHCP och DNS"
 
 msgid "DHCP client"
-msgstr ""
+msgstr "DHCP-klient"
 
 msgid "DHCP-Options"
-msgstr ""
+msgstr "DHCP-alternativ"
 
 msgid "DHCPv6 Leases"
-msgstr ""
+msgstr "DHCPv6-kontrakt"
 
 msgid "DHCPv6 client"
-msgstr ""
+msgstr "DHCPv6-klient"
 
 msgid "DHCPv6-Mode"
-msgstr ""
+msgstr "DHCPv6-läge"
 
 msgid "DHCPv6-Service"
-msgstr ""
+msgstr "DHCPv6-tjänst"
 
 msgid "DNS"
-msgstr ""
+msgstr "DNS"
 
 msgid "DNS forwardings"
 msgstr ""
@@ -754,10 +758,10 @@ msgid "DS-Lite AFTR address"
 msgstr ""
 
 msgid "DSL"
-msgstr ""
+msgstr "DSL"
 
 msgid "DSL Status"
-msgstr ""
+msgstr "DSL-status"
 
 msgid "DSL line mode"
 msgstr ""
@@ -766,28 +770,28 @@ msgid "DUID"
 msgstr ""
 
 msgid "Data Rate"
-msgstr ""
+msgstr "Datahastighet"
 
 msgid "Debug"
-msgstr ""
+msgstr "Avlusa"
 
 msgid "Default %d"
-msgstr ""
+msgstr "Standard %d"
 
 msgid "Default gateway"
-msgstr ""
+msgstr "Standard gateway"
 
 msgid "Default is stateless + stateful"
 msgstr ""
 
 msgid "Default route"
-msgstr ""
+msgstr "Standardrutt"
 
 msgid "Default state"
 msgstr ""
 
 msgid "Define a name for this network."
-msgstr ""
+msgstr "Ange ett namn för det här nätverket."
 
 msgid ""
 "Define additional DHCP options, for example "
@@ -796,60 +800,63 @@ msgid ""
 msgstr ""
 
 msgid "Delete"
-msgstr ""
+msgstr "Radera"
 
 msgid "Delete this network"
-msgstr ""
+msgstr "Ta bort det här nätverket"
 
 msgid "Description"
-msgstr ""
+msgstr "Beskrivning"
 
 msgid "Design"
 msgstr ""
 
 msgid "Destination"
-msgstr ""
+msgstr "Plats"
 
 msgid "Device"
-msgstr ""
+msgstr "Enhet"
 
 msgid "Device Configuration"
-msgstr ""
+msgstr "Enhetskonfiguration"
 
 msgid "Device is rebooting..."
-msgstr ""
+msgstr "Enheten startar om..."
 
 msgid "Device unreachable"
-msgstr ""
+msgstr "Enheten kan inte nås"
 
 msgid "Diagnostics"
 msgstr ""
 
 msgid "Dial number"
-msgstr ""
+msgstr "Slå nummer"
 
 msgid "Directory"
-msgstr ""
+msgstr "Mapp"
 
 msgid "Disable"
-msgstr ""
+msgstr "Inaktivera"
 
 msgid ""
 "Disable <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr> for "
 "this interface."
 msgstr ""
+"Inaktivera <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr> för "
+"det här gränssnittet."
+
 
 msgid "Disable DNS setup"
 msgstr ""
 
 msgid "Disable Encryption"
-msgstr ""
+msgstr "Inaktivera kryptering"
 
 msgid "Disabled"
-msgstr ""
+msgstr "Inaktiverad"
 
 msgid "Disabled (default)"
-msgstr ""
+msgstr "Inaktiverad (standard)"
 
 msgid "Discard upstream RFC1918 responses"
 msgstr ""
@@ -858,16 +865,16 @@ msgid "Displaying only packages containing"
 msgstr ""
 
 msgid "Distance Optimization"
-msgstr ""
+msgstr "Avståndsoptimering"
 
 msgid "Distance to farthest network member in meters."
-msgstr ""
+msgstr "Avstånd till nätverksmledlemmen längst bort i metrar."
 
 msgid "Distribution feeds"
 msgstr ""
 
 msgid "Diversity"
-msgstr ""
+msgstr "Mångfald"
 
 msgid ""
 "Dnsmasq is a combined <abbr title=\"Dynamic Host Configuration Protocol"
@@ -877,36 +884,38 @@ msgid ""
 msgstr ""
 
 msgid "Do not cache negative replies, e.g. for not existing domains"
-msgstr ""
+msgstr "Cachea inte negativa svar, t.ex för icke-existerade domäner"
 
 msgid "Do not forward requests that cannot be answered by public name servers"
-msgstr ""
+msgstr "Vidarebefordra inte förfrågningar som inte kan ta emot svar från publika namnservrar"
 
 msgid "Do not forward reverse lookups for local networks"
 msgstr ""
 
 msgid "Domain required"
-msgstr ""
+msgstr "Domän krävs"
 
 msgid "Domain whitelist"
-msgstr ""
+msgstr "Vitlista för domäner"
 
 msgid "Don't Fragment"
-msgstr ""
+msgstr "Fragmentera inte"
 
 msgid ""
 "Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without "
 "<abbr title=\"Domain Name System\">DNS</abbr>-Name"
 msgstr ""
+"Vidarebefordra inte <abbr title=\"Domain Name System\">DNS</abbr>-förfrågningar utan "
+"<abbr title=\"Domain Name System\">DNS</abbr>-namn"
 
 msgid "Download and install package"
-msgstr ""
+msgstr "Ladda ner och installera paket"
 
 msgid "Download backup"
-msgstr ""
+msgstr "Ladda ner säkerhetskopia"
 
 msgid "Dropbear Instance"
-msgstr ""
+msgstr "Dropbear-instans"
 
 msgid ""
 "Dropbear offers <abbr title=\"Secure Shell\">SSH</abbr> network shell access "
@@ -920,7 +929,7 @@ msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>"
 msgstr ""
 
 msgid "Dynamic tunnel"
-msgstr ""
+msgstr "Dynamisk tunnel"
 
 msgid ""
 "Dynamically allocate DHCP addresses for clients. If disabled, only clients "
@@ -931,10 +940,10 @@ msgid "EA-bits length"
 msgstr ""
 
 msgid "EAP-Method"
-msgstr ""
+msgstr "EAP-metod"
 
 msgid "Edit"
-msgstr ""
+msgstr "Redigera"
 
 msgid ""
 "Edit the raw configuration data above to fix any error and hit \"Save\" to "
@@ -942,19 +951,19 @@ msgid ""
 msgstr ""
 
 msgid "Edit this interface"
-msgstr ""
+msgstr "Redigera det här gränssnittet"
 
 msgid "Edit this network"
-msgstr ""
+msgstr "Redigera det här nätverket"
 
 msgid "Emergency"
-msgstr ""
+msgstr "Nödsituation"
 
 msgid "Enable"
-msgstr ""
+msgstr "Aktivera"
 
 msgid "Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
-msgstr ""
+msgstr "Aktivera <abbr title=\"Spanning Tree Protocol\">STP</abbr>"
 
 msgid "Enable HE.net dynamic endpoint update"
 msgstr ""
@@ -969,19 +978,22 @@ msgid "Enable Jumbo Frame passthrough"
 msgstr ""
 
 msgid "Enable NTP client"
-msgstr ""
+msgstr "Aktivera NTP-klient"
 
 msgid "Enable Single DES"
 msgstr ""
 
 msgid "Enable TFTP server"
-msgstr ""
+msgstr "Aktivera TFTP-server"
 
 msgid "Enable VLAN functionality"
-msgstr ""
+msgstr "Aktivera VLAN-funktionalitet"
 
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
-msgstr ""
+msgstr "Aktivera WPS-tryckknapp, kräver WPA(2)-PSK"
+
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr "Kräver ominstallation av nyckel (KRACK) motåtgärder"
 
 msgid "Enable learning and aging"
 msgstr ""
@@ -996,16 +1008,16 @@ msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets."
 msgstr ""
 
 msgid "Enable this mount"
-msgstr ""
+msgstr "Aktivera den här monteringen"
 
 msgid "Enable this swap"
-msgstr ""
+msgstr "Aktivera den här swap"
 
 msgid "Enable/Disable"
-msgstr ""
+msgstr "Aktivera/Inaktivera"
 
 msgid "Enabled"
-msgstr ""
+msgstr "Aktiverad"
 
 msgid ""
 "Enables fast roaming among access points that belong to the same Mobility "
@@ -1019,7 +1031,7 @@ msgid "Encapsulation mode"
 msgstr ""
 
 msgid "Encryption"
-msgstr ""
+msgstr "Kryptering"
 
 msgid "Endpoint Host"
 msgstr ""
@@ -1028,35 +1040,35 @@ msgid "Endpoint Port"
 msgstr ""
 
 msgid "Erasing..."
-msgstr ""
+msgstr "Raderar..."
 
 msgid "Error"
-msgstr ""
+msgstr "Fel"
 
 msgid "Errored seconds (ES)"
 msgstr ""
 
 msgid "Ethernet Adapter"
-msgstr ""
+msgstr "Ethernet-adapter"
 
 msgid "Ethernet Switch"
 msgstr ""
 
 msgid "Exclude interfaces"
-msgstr ""
+msgstr "Inkludera inte dessa gränssnitt"
 
 msgid "Expand hosts"
-msgstr ""
+msgstr "Expandera värdar"
 
 msgid "Expires"
-msgstr ""
+msgstr "Löper ut"
 
 msgid ""
 "Expiry time of leased addresses, minimum is 2 minutes (<code>2m</code>)."
 msgstr ""
 
 msgid "External"
-msgstr ""
+msgstr "Externt"
 
 msgid "External R0 Key Holder List"
 msgstr ""
@@ -1074,25 +1086,25 @@ msgid "External system log server protocol"
 msgstr ""
 
 msgid "Extra SSH command options"
-msgstr ""
+msgstr "Extra alternativ för SSH-kommandot"
 
 msgid "File"
-msgstr ""
+msgstr "Fil"
 
 msgid "Filename of the boot image advertised to clients"
 msgstr ""
 
 msgid "Filesystem"
-msgstr ""
+msgstr "Filsystem"
 
 msgid "Filter"
-msgstr ""
+msgstr "Filtrera"
 
 msgid "Filter private"
-msgstr ""
+msgstr "Filtrera privata"
 
 msgid "Filter useless"
-msgstr ""
+msgstr "Filtrera icke-användbara"
 
 msgid ""
 "Find all currently attached filesystems and swap and replace configuration "
@@ -1100,31 +1112,31 @@ msgid ""
 msgstr ""
 
 msgid "Find and join network"
-msgstr ""
+msgstr "Hitta och anslut till nätverk"
 
 msgid "Find package"
-msgstr ""
+msgstr "Hitta paket"
 
 msgid "Finish"
-msgstr ""
+msgstr "Avsluta"
 
 msgid "Firewall"
-msgstr ""
+msgstr "Brandvägg"
 
 msgid "Firewall Mark"
 msgstr ""
 
 msgid "Firewall Settings"
-msgstr ""
+msgstr "Inställningar för brandvägg"
 
 msgid "Firewall Status"
-msgstr ""
+msgstr "Status för brandvägg"
 
 msgid "Firmware File"
 msgstr ""
 
 msgid "Firmware Version"
-msgstr ""
+msgstr "Version för inre mjukvara"
 
 msgid "Fixed source port for outbound DNS queries"
 msgstr ""
@@ -1142,34 +1154,34 @@ msgid "Flash operations"
 msgstr ""
 
 msgid "Flashing..."
-msgstr ""
+msgstr "Skriver..."
 
 msgid "Force"
-msgstr ""
+msgstr "Tvinga"
 
 msgid "Force CCMP (AES)"
-msgstr ""
+msgstr "Tvinga CCMP (AES)"
 
 msgid "Force DHCP on this network even if another server is detected."
-msgstr ""
+msgstr "Tvinga DHCP på det här nätverket även om en annan server är upptäckt."
 
 msgid "Force TKIP"
-msgstr ""
+msgstr "Tvinga TKIP"
 
 msgid "Force TKIP and CCMP (AES)"
-msgstr ""
+msgstr "Tvinga TKIP och CCMP (AES)"
 
 msgid "Force link"
-msgstr ""
+msgstr "Tvinga länk"
 
 msgid "Force use of NAT-T"
-msgstr ""
+msgstr "Tvinga användning av NAT-T"
 
 msgid "Form token mismatch"
 msgstr ""
 
 msgid "Forward DHCP traffic"
-msgstr ""
+msgstr "Vidarebefordra DHCP-trafik"
 
 msgid "Forward Error Correction Seconds (FECS)"
 msgstr ""
@@ -1178,7 +1190,7 @@ msgid "Forward broadcast traffic"
 msgstr ""
 
 msgid "Forwarding mode"
-msgstr ""
+msgstr "Vidarebefordringsläge"
 
 msgid "Fragmentation Threshold"
 msgstr ""
@@ -1187,10 +1199,10 @@ msgid "Frame Bursting"
 msgstr ""
 
 msgid "Free"
-msgstr ""
+msgstr "Fritt"
 
 msgid "Free space"
-msgstr ""
+msgstr "Fritt utrymme"
 
 msgid ""
 "Further information about WireGuard interfaces and peers at <a href=\"http://"
@@ -1198,76 +1210,76 @@ msgid ""
 msgstr ""
 
 msgid "GHz"
-msgstr ""
+msgstr "GHz"
 
 msgid "GPRS only"
-msgstr ""
+msgstr "Endast GPRS"
 
 msgid "Gateway"
-msgstr ""
+msgstr "Gateway"
 
 msgid "Gateway ports"
-msgstr ""
+msgstr "Gateway-portar"
 
 msgid "General Settings"
-msgstr ""
+msgstr "Generella inställningar"
 
 msgid "General Setup"
 msgstr ""
 
 msgid "General options for opkg"
-msgstr ""
+msgstr "Generella alternativ för opkg"
 
 msgid "Generate Config"
-msgstr ""
+msgstr "Generera konfig"
 
 msgid "Generate archive"
-msgstr ""
+msgstr "Generera arkiv"
 
 msgid "Generic 802.11%s Wireless Controller"
 msgstr ""
 
 msgid "Given password confirmation did not match, password not changed!"
-msgstr ""
+msgstr "Angiven lösenordsbekräftelse matchade inte, lösenordet ändrades inte!"
 
 msgid "Global Settings"
-msgstr ""
+msgstr "Globala inställningar"
 
 msgid "Global network options"
-msgstr ""
+msgstr "Globala nätverksalternativ"
 
 msgid "Go to password configuration..."
-msgstr ""
+msgstr "Gå till lösenordskonfiguration..."
 
 msgid "Go to relevant configuration page"
-msgstr ""
+msgstr "Gå till relevant konfigurationssida"
 
 msgid "Group Password"
-msgstr ""
+msgstr "Grupplösenord"
 
 msgid "Guest"
-msgstr ""
+msgstr "Gäst"
 
 msgid "HE.net password"
-msgstr ""
+msgstr "HE.net-lösenord"
 
 msgid "HE.net username"
-msgstr ""
+msgstr "HE.net-användarnamn"
 
 msgid "HT mode (802.11n)"
-msgstr ""
+msgstr "HT-läge (802.11n)"
 
 msgid "Handler"
 msgstr ""
 
 msgid "Hang Up"
-msgstr ""
+msgstr "Lägg på"
 
 msgid "Header Error Code Errors (HEC)"
 msgstr ""
 
 msgid "Heartbeat"
-msgstr ""
+msgstr "Hjärtslag"
 
 msgid ""
 "Here you can configure the basic aspects of your device like its hostname or "
@@ -1283,10 +1295,10 @@ msgid "Hermes 802.11b Wireless Controller"
 msgstr ""
 
 msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
-msgstr ""
+msgstr "Göm <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>"
 
 msgid "Host"
-msgstr ""
+msgstr "Värd"
 
 msgid "Host entries"
 msgstr ""
@@ -1295,43 +1307,43 @@ msgid "Host expiry timeout"
 msgstr ""
 
 msgid "Host-<abbr title=\"Internet Protocol Address\">IP</abbr> or Network"
-msgstr ""
+msgstr "Host-<abbr title=\"Internet Protocol Address\">IP</abbr> eller Nätverk"
 
 msgid "Hostname"
-msgstr ""
+msgstr "Värdnamn"
 
 msgid "Hostname to send when requesting DHCP"
-msgstr ""
+msgstr "Värdnamn att skicka vid DHCP-förfrågningar"
 
 msgid "Hostnames"
-msgstr ""
+msgstr "Värdnamn"
 
 msgid "Hybrid"
-msgstr ""
+msgstr "Hybrid"
 
 msgid "IKE DH Group"
 msgstr ""
 
 msgid "IP Addresses"
-msgstr ""
+msgstr "IP-adresser"
 
 msgid "IP address"
-msgstr ""
+msgstr "IP-adress"
 
 msgid "IPv4"
-msgstr ""
+msgstr "IPv4"
 
 msgid "IPv4 Firewall"
-msgstr ""
+msgstr "IPv4-brandvägg"
 
 msgid "IPv4 WAN Status"
 msgstr ""
 
 msgid "IPv4 address"
-msgstr ""
+msgstr "IPv4-adress"
 
 msgid "IPv4 and IPv6"
-msgstr ""
+msgstr "IPv4 och IPv6"
 
 msgid "IPv4 assignment length"
 msgstr ""
@@ -1340,13 +1352,13 @@ msgid "IPv4 broadcast"
 msgstr ""
 
 msgid "IPv4 gateway"
-msgstr ""
+msgstr "IPv4-gateway"
 
 msgid "IPv4 netmask"
-msgstr ""
+msgstr "IPv4-nätmask"
 
 msgid "IPv4 only"
-msgstr ""
+msgstr "Endast IPv4"
 
 msgid "IPv4 prefix"
 msgstr ""
@@ -1355,22 +1367,22 @@ msgid "IPv4 prefix length"
 msgstr ""
 
 msgid "IPv4-Address"
-msgstr ""
+msgstr "IPv4-Adress"
 
 msgid "IPv4-in-IPv4 (RFC2003)"
-msgstr ""
+msgstr "IPv4-i-IPv4 (RFC2003)"
 
 msgid "IPv6"
-msgstr ""
+msgstr "IPv6"
 
 msgid "IPv6 Firewall"
-msgstr ""
+msgstr "IPv6-brandvägg"
 
 msgid "IPv6 Neighbours"
-msgstr ""
+msgstr "IPV6-grannar"
 
 msgid "IPv6 Settings"
-msgstr ""
+msgstr "IPv6-inställningar"
 
 msgid "IPv6 ULA-Prefix"
 msgstr ""
@@ -1379,7 +1391,7 @@ msgid "IPv6 WAN Status"
 msgstr ""
 
 msgid "IPv6 address"
-msgstr ""
+msgstr "IPv6-adress"
 
 msgid "IPv6 address delegated to the local tunnel endpoint (optional)"
 msgstr ""
@@ -1391,10 +1403,10 @@ msgid "IPv6 assignment length"
 msgstr ""
 
 msgid "IPv6 gateway"
-msgstr ""
+msgstr "IPv6-gateway"
 
 msgid "IPv6 only"
-msgstr ""
+msgstr "Endast IPv6"
 
 msgid "IPv6 prefix"
 msgstr ""
@@ -1409,22 +1421,22 @@ msgid "IPv6 suffix"
 msgstr ""
 
 msgid "IPv6-Address"
-msgstr ""
+msgstr "IPv6-adress"
 
 msgid "IPv6-PD"
 msgstr ""
 
 msgid "IPv6-in-IPv4 (RFC4213)"
-msgstr ""
+msgstr "IPv6-i-IPv4 (RFC4213)"
 
 msgid "IPv6-over-IPv4 (6rd)"
-msgstr ""
+msgstr "IPv6-över-IPv4 (6rd)"
 
 msgid "IPv6-over-IPv4 (6to4)"
-msgstr ""
+msgstr "IPv6-över-IPv4 (6till4)"
 
 msgid "Identity"
-msgstr ""
+msgstr "Identitet"
 
 msgid "If checked, 1DES is enabled"
 msgstr ""
@@ -1456,19 +1468,19 @@ msgid ""
 msgstr ""
 
 msgid "Ignore <code>/etc/hosts</code>"
-msgstr ""
+msgstr "Ignorera <code>/etc/hosts</code>"
 
 msgid "Ignore interface"
-msgstr ""
+msgstr "Ignorera gränssnitt"
 
 msgid "Ignore resolve file"
-msgstr ""
+msgstr "Ignorera resolv-fil"
 
 msgid "Image"
-msgstr ""
+msgstr "Bild"
 
 msgid "In"
-msgstr ""
+msgstr "I"
 
 msgid ""
 "In order to prevent unauthorized access to the system, your request has been "
@@ -1479,73 +1491,73 @@ msgid "Inactivity timeout"
 msgstr ""
 
 msgid "Inbound:"
-msgstr ""
+msgstr "Ankommande"
 
 msgid "Info"
-msgstr ""
+msgstr "Info"
 
 msgid "Initscript"
-msgstr ""
+msgstr "Initskript"
 
 msgid "Initscripts"
-msgstr ""
+msgstr "Initskripten"
 
 msgid "Install"
-msgstr ""
+msgstr "Installera"
 
 msgid "Install iputils-traceroute6 for IPv6 traceroute"
-msgstr ""
+msgstr "Installera iputils-traceroute6 för IPv6-traceroute"
 
 msgid "Install package %q"
-msgstr ""
+msgstr "Installera paketet %q"
 
 msgid "Install protocol extensions..."
-msgstr ""
+msgstr "Installera protokoll-förlängningar..."
 
 msgid "Installed packages"
-msgstr ""
+msgstr "Installerade paket"
 
 msgid "Interface"
-msgstr ""
+msgstr "Gränssnitt"
 
 msgid "Interface %q device auto-migrated from %q to %q."
 msgstr ""
 
 msgid "Interface Configuration"
-msgstr ""
+msgstr "Konfiguration av gränssnitt"
 
 msgid "Interface Overview"
-msgstr ""
+msgstr "Överblick av gränssnitt"
 
 msgid "Interface is reconnecting..."
-msgstr ""
+msgstr "Gränssnittet återansluter..."
 
 msgid "Interface is shutting down..."
-msgstr ""
+msgstr "Gränssnittet stänger ner..."
 
 msgid "Interface name"
-msgstr ""
+msgstr "Gränssnittets namn"
 
 msgid "Interface not present or not connected yet."
-msgstr ""
+msgstr "Gränssnittet är inte närvarande eller är inte anslutet än."
 
 msgid "Interface reconnected"
-msgstr ""
+msgstr "Gränssnittet återanslöt"
 
 msgid "Interface shut down"
-msgstr ""
+msgstr "Gränssnittet stängdes ner"
 
 msgid "Interfaces"
-msgstr ""
+msgstr "Gränssnitten"
 
 msgid "Internal"
-msgstr ""
+msgstr "Interna"
 
 msgid "Internal Server Error"
-msgstr ""
+msgstr "Internt server-fel"
 
 msgid "Invalid"
-msgstr ""
+msgstr "Ogiltig"
 
 msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed."
 msgstr ""
@@ -1554,10 +1566,10 @@ msgid "Invalid VLAN ID given! Only unique IDs are allowed"
 msgstr ""
 
 msgid "Invalid username and/or password! Please try again."
-msgstr ""
+msgstr "Ogiltigt användarnamn och/eller lösenord! Vänligen försök igen."
 
 msgid "Isolate Clients"
-msgstr ""
+msgstr "Isolera klienter"
 
 msgid ""
 "It appears that you are trying to flash an image that does not fit into the "
@@ -1565,40 +1577,40 @@ msgid ""
 msgstr ""
 
 msgid "JavaScript required!"
-msgstr ""
+msgstr "JavaScript krävs!"
 
 msgid "Join Network"
-msgstr ""
+msgstr "Anslut till nätverk"
 
 msgid "Join Network: Wireless Scan"
-msgstr ""
+msgstr "Anslut till nätverk: Trådlös skanning"
 
 msgid "Joining Network: %q"
-msgstr ""
+msgstr "Ansluter till nätverk: %q"
 
 msgid "Keep settings"
-msgstr ""
+msgstr "Behåll inställningar"
 
 msgid "Kernel Log"
-msgstr ""
+msgstr "Kernel-logg"
 
 msgid "Kernel Version"
-msgstr ""
+msgstr "Kernel-version"
 
 msgid "Key"
-msgstr ""
+msgstr "Nyckel"
 
 msgid "Key #%d"
-msgstr ""
+msgstr "Nyckel #%d"
 
 msgid "Kill"
-msgstr ""
+msgstr "Döda"
 
 msgid "L2TP"
-msgstr ""
+msgstr "L2TP"
 
 msgid "L2TP Server"
-msgstr ""
+msgstr "L2TP-server"
 
 msgid "LCP echo failure threshold"
 msgstr ""
@@ -1607,46 +1619,46 @@ msgid "LCP echo interval"
 msgstr ""
 
 msgid "LLC"
-msgstr ""
+msgstr "LLC"
 
 msgid "Label"
-msgstr ""
+msgstr "Märke"
 
 msgid "Language"
-msgstr ""
+msgstr "Språk"
 
 msgid "Language and Style"
-msgstr ""
+msgstr "Språk och Stil"
 
 msgid "Latency"
-msgstr ""
+msgstr "Latens"
 
 msgid "Leaf"
-msgstr ""
+msgstr "Löv"
 
 msgid "Lease time"
-msgstr ""
+msgstr "Kontraktstid"
 
 msgid "Lease validity time"
-msgstr ""
+msgstr "Giltighetstid för kontrakt"
 
 msgid "Leasefile"
-msgstr ""
+msgstr "Kontraktsfil"
 
 msgid "Leasetime remaining"
-msgstr ""
+msgstr "Återstående kontraktstid"
 
 msgid "Leave empty to autodetect"
-msgstr ""
+msgstr "Lämna tom för att upptäcka automatiskt"
 
 msgid "Leave empty to use the current WAN address"
-msgstr ""
+msgstr "Lämna tom för att använda den nuvarande WAN-adressen"
 
 msgid "Legend:"
 msgstr ""
 
 msgid "Limit"
-msgstr ""
+msgstr "Begränsa"
 
 msgid "Limit DNS service to subnets interfaces on which we are serving DNS."
 msgstr ""
@@ -1667,7 +1679,7 @@ msgid "Line Uptime"
 msgstr ""
 
 msgid "Link On"
-msgstr ""
+msgstr "Länk På"
 
 msgid ""
 "List of <abbr title=\"Domain Name System\">DNS</abbr> servers to forward "
@@ -1691,7 +1703,7 @@ msgid ""
 msgstr ""
 
 msgid "List of SSH key files for auth"
-msgstr ""
+msgstr "Lista över SSH-nyckelfiler för auth"
 
 msgid "List of domains to allow RFC1918 responses for"
 msgstr ""
@@ -1703,43 +1715,43 @@ msgid "Listen Interfaces"
 msgstr ""
 
 msgid "Listen Port"
-msgstr ""
+msgstr "Lyssningsportar"
 
 msgid "Listen only on the given interface or, if unspecified, on all"
-msgstr ""
+msgstr "Lyssna endast på det angivna gränssnittet eller, om o-specificerat på alla"
 
 msgid "Listening port for inbound DNS queries"
-msgstr ""
+msgstr "Lyssningsportar för ankommande DNS-förfrågningar"
 
 msgid "Load"
-msgstr ""
+msgstr "Belastning"
 
 msgid "Load Average"
-msgstr ""
+msgstr "Snitt-belastning"
 
 msgid "Loading"
-msgstr ""
+msgstr "Laddar"
 
 msgid "Local IP address to assign"
 msgstr ""
 
 msgid "Local IPv4 address"
-msgstr ""
+msgstr "Lokal IPv4-adress"
 
 msgid "Local IPv6 address"
-msgstr ""
+msgstr "Lokal IPv6-adress"
 
 msgid "Local Service Only"
-msgstr ""
+msgstr "Enbart lokal tjänst"
 
 msgid "Local Startup"
-msgstr ""
+msgstr "Lokal uppstart"
 
 msgid "Local Time"
-msgstr ""
+msgstr "Lokal tid"
 
 msgid "Local domain"
-msgstr ""
+msgstr "Lokal domän"
 
 msgid ""
 "Local domain specification. Names matching this domain are never forwarded "
@@ -1750,7 +1762,7 @@ msgid "Local domain suffix appended to DHCP names and hosts file entries"
 msgstr ""
 
 msgid "Local server"
-msgstr ""
+msgstr "Lokal server"
 
 msgid ""
 "Localise hostname depending on the requesting subnet if multiple IPs are "
@@ -1758,10 +1770,10 @@ msgid ""
 msgstr ""
 
 msgid "Localise queries"
-msgstr ""
+msgstr "Lokalisera förfrågningar"
 
 msgid "Locked to channel %s used by: %s"
-msgstr ""
+msgstr "Låst till kanalen %s som används av: %s"
 
 msgid "Log output level"
 msgstr ""
@@ -1773,10 +1785,10 @@ msgid "Logging"
 msgstr ""
 
 msgid "Login"
-msgstr ""
+msgstr "Logga in"
 
 msgid "Logout"
-msgstr ""
+msgstr "Logga ut"
 
 msgid "Loss of Signal Seconds (LOSS)"
 msgstr ""
@@ -1785,31 +1797,31 @@ msgid "Lowest leased address as offset from the network address."
 msgstr ""
 
 msgid "MAC-Address"
-msgstr ""
+msgstr "MAC-adress"
 
 msgid "MAC-Address Filter"
-msgstr ""
+msgstr "Filter för MAC-adress"
 
 msgid "MAC-Filter"
-msgstr ""
+msgstr "MAC-filter"
 
 msgid "MAC-List"
-msgstr ""
+msgstr "MAC-lista"
 
 msgid "MAP / LW4over6"
-msgstr ""
+msgstr "MAP / LW4över6"
 
 msgid "MB/s"
-msgstr ""
+msgstr "MB/s"
 
 msgid "MD5"
-msgstr ""
+msgstr "MD5"
 
 msgid "MHz"
-msgstr ""
+msgstr "MHz"
 
 msgid "MTU"
-msgstr ""
+msgstr "MTU"
 
 msgid ""
 "Make sure to clone the root filesystem using something like the commands "
@@ -1817,7 +1829,7 @@ msgid ""
 msgstr ""
 
 msgid "Manual"
-msgstr ""
+msgstr "Manuell"
 
 msgid "Max. Attainable Data Rate (ATTNDR)"
 msgstr ""
@@ -1846,16 +1858,16 @@ msgid "Maximum number of leased addresses."
 msgstr ""
 
 msgid "Mbit/s"
-msgstr ""
+msgstr "Mbit/s"
 
 msgid "Memory"
-msgstr ""
+msgstr "Minne"
 
 msgid "Memory usage (%)"
-msgstr ""
+msgstr "Minnesanvändning (%)"
 
 msgid "Metric"
-msgstr ""
+msgstr "Metrisk"
 
 msgid "Minimum hold time"
 msgstr ""
@@ -1873,28 +1885,28 @@ msgid "Mobility Domain"
 msgstr ""
 
 msgid "Mode"
-msgstr ""
+msgstr "Läge"
 
 msgid "Model"
-msgstr ""
+msgstr "Modell"
 
 msgid "Modem device"
-msgstr ""
+msgstr "Modem-enhet"
 
 msgid "Modem init timeout"
 msgstr ""
 
 msgid "Monitor"
-msgstr ""
+msgstr "Övervaka"
 
 msgid "Mount Entry"
 msgstr ""
 
 msgid "Mount Point"
-msgstr ""
+msgstr "Monteringspunkt"
 
 msgid "Mount Points"
-msgstr ""
+msgstr "Monteringspunkter"
 
 msgid "Mount Points - Mount Entry"
 msgstr ""
@@ -1911,124 +1923,124 @@ msgid "Mount filesystems not specifically configured"
 msgstr ""
 
 msgid "Mount options"
-msgstr ""
+msgstr "Monteringsalternativ"
 
 msgid "Mount point"
-msgstr ""
+msgstr "Monteringspunkt"
 
 msgid "Mount swap not specifically configured"
 msgstr ""
 
 msgid "Mounted file systems"
-msgstr ""
+msgstr "Monterade filsystem"
 
 msgid "Move down"
-msgstr ""
+msgstr "Flytta ner"
 
 msgid "Move up"
-msgstr ""
+msgstr "Flytta upp"
 
 msgid "Multicast address"
 msgstr ""
 
 msgid "NAS ID"
-msgstr ""
+msgstr "NAS-ID"
 
 msgid "NAT-T Mode"
-msgstr ""
+msgstr "NAT-T-läge"
 
 msgid "NAT64 Prefix"
 msgstr ""
 
 msgid "NCM"
-msgstr ""
+msgstr "NCM"
 
 msgid "NDP-Proxy"
 msgstr ""
 
 msgid "NT Domain"
-msgstr ""
+msgstr "NT-domän"
 
 msgid "NTP server candidates"
-msgstr ""
+msgstr "NTP-serverkandidater"
 
 msgid "NTP sync time-out"
 msgstr ""
 
 msgid "Name"
-msgstr ""
+msgstr "Namn"
 
 msgid "Name of the new interface"
-msgstr ""
+msgstr "Namn på det nya gränssnittet"
 
 msgid "Name of the new network"
-msgstr ""
+msgstr "Namnet på det nya nätverket"
 
 msgid "Navigation"
-msgstr ""
+msgstr "Navigering"
 
 msgid "Netmask"
-msgstr ""
+msgstr "Nätmask"
 
 msgid "Network"
-msgstr ""
+msgstr "Nätverk"
 
 msgid "Network Utilities"
-msgstr ""
+msgstr "Nätverksverktyg"
 
 msgid "Network boot image"
-msgstr ""
+msgstr "Uppstartsbild för nätverket"
 
 msgid "Network without interfaces."
-msgstr ""
+msgstr "Nätverk utan gränssnitt"
 
 msgid "Next »"
-msgstr ""
+msgstr "Nästa »"
 
 msgid "No DHCP Server configured for this interface"
-msgstr ""
+msgstr "Det finns ingen DHCP-server inställd för det här gränssnittet"
 
 msgid "No NAT-T"
-msgstr ""
+msgstr "Ingen NAT-T"
 
 msgid "No chains in this table"
-msgstr ""
+msgstr "Inga kedjor i den här tabellen"
 
 msgid "No files found"
-msgstr ""
+msgstr "Inga filer hittades"
 
 msgid "No information available"
-msgstr ""
+msgstr "Ingen information tillgänglig"
 
 msgid "No negative cache"
-msgstr ""
+msgstr "Ingen negativ cache"
 
 msgid "No network configured on this device"
-msgstr ""
+msgstr "Det finns inget nätverk inställt på den här enheten"
 
 msgid "No network name specified"
-msgstr ""
+msgstr "Inget nätverksnamn angavs"
 
 msgid "No package lists available"
-msgstr ""
+msgstr "Ingen paketlista tillgänglig"
 
 msgid "No password set!"
-msgstr ""
+msgstr "Inget lösenord inställt!"
 
 msgid "No rules in this chain"
-msgstr ""
+msgstr "Inga regler i den här kedjan"
 
 msgid "No zone assigned"
 msgstr ""
 
 msgid "Noise"
-msgstr ""
+msgstr "Buller"
 
 msgid "Noise Margin (SNR)"
 msgstr ""
 
 msgid "Noise:"
-msgstr ""
+msgstr "Buller:"
 
 msgid "Non Pre-emtive CRC errors (CRC_P)"
 msgstr ""
@@ -2037,34 +2049,34 @@ msgid "Non-wildcard"
 msgstr ""
 
 msgid "None"
-msgstr ""
+msgstr "Ingen"
 
 msgid "Normal"
-msgstr ""
+msgstr "Normal"
 
 msgid "Not Found"
-msgstr ""
+msgstr "Hittades inte"
 
 msgid "Not associated"
-msgstr ""
+msgstr "Inte associerad"
 
 msgid "Not connected"
-msgstr ""
+msgstr "Inte ansluten"
 
 msgid "Note: Configuration files will be erased."
-msgstr ""
+msgstr "Notera: Konfigurationsfiler kommer att raderas."
 
 msgid "Note: interface name length"
-msgstr ""
+msgstr "Notera: längden på gränssnittets namn"
 
 msgid "Notice"
-msgstr ""
+msgstr "Avisering"
 
 msgid "Nslookup"
-msgstr ""
+msgstr "Nslookup"
 
 msgid "OK"
-msgstr ""
+msgstr "OK"
 
 msgid "OPKG-Configuration"
 msgstr ""
@@ -2091,34 +2103,34 @@ msgid "On-State Delay"
 msgstr ""
 
 msgid "One of hostname or mac address must be specified!"
-msgstr ""
+msgstr "En utav värdnamn eller MAC-adress måste anges!"
 
 msgid "One or more fields contain invalid values!"
-msgstr ""
+msgstr "En eller fler fält innehåller ogiltiga värden!"
 
 msgid "One or more invalid/required values on tab"
 msgstr ""
 
 msgid "One or more required fields have no value!"
-msgstr ""
+msgstr "En eller fler fält som krävs har inget värde!"
 
 msgid "Open list..."
-msgstr ""
+msgstr "Öppna lista..."
 
 msgid "OpenConnect (CISCO AnyConnect)"
-msgstr ""
+msgstr "OpenConnect (CISCO AnyConnect)"
 
 msgid "Operating frequency"
 msgstr ""
 
 msgid "Option changed"
-msgstr ""
+msgstr "Alternativet ändrades"
 
 msgid "Option removed"
-msgstr ""
+msgstr "Alternativet togs bort"
 
 msgid "Optional"
-msgstr ""
+msgstr "Valfri"
 
 msgid "Optional, specify to override default server (tic.sixxs.net)"
 msgstr ""
@@ -2166,16 +2178,16 @@ msgid "Optional. UDP port used for outgoing and incoming packets."
 msgstr ""
 
 msgid "Options"
-msgstr ""
+msgstr "Alternativ"
 
 msgid "Other:"
-msgstr ""
+msgstr "Andra:"
 
 msgid "Out"
-msgstr ""
+msgstr "Ut"
 
 msgid "Outbound:"
-msgstr ""
+msgstr "Utgående"
 
 msgid "Output Interface"
 msgstr ""
@@ -2207,43 +2219,43 @@ msgid "Override the table used for internal routes"
 msgstr ""
 
 msgid "Overview"
-msgstr ""
+msgstr "Överblick"
 
 msgid "Owner"
-msgstr ""
+msgstr "Ägare"
 
 msgid "PAP/CHAP password"
-msgstr ""
+msgstr "PAP/CHAP-lösenord"
 
 msgid "PAP/CHAP username"
-msgstr ""
+msgstr "PAP/CHAP-användarnamn"
 
 msgid "PID"
-msgstr ""
+msgstr "PID"
 
 msgid "PIN"
-msgstr ""
+msgstr "PIN-kod"
 
 msgid "PMK R1 Push"
 msgstr ""
 
 msgid "PPP"
-msgstr ""
+msgstr "PPP"
 
 msgid "PPPoA Encapsulation"
 msgstr ""
 
 msgid "PPPoATM"
-msgstr ""
+msgstr "PPPoATM"
 
 msgid "PPPoE"
-msgstr ""
+msgstr "PPPoE"
 
 msgid "PPPoSSH"
-msgstr ""
+msgstr "PPPoSSH"
 
 msgid "PPtP"
-msgstr ""
+msgstr "PPtP"
 
 msgid "PSID offset"
 msgstr ""
@@ -2255,58 +2267,58 @@ msgid "PTM/EFM (Packet Transfer Mode)"
 msgstr ""
 
 msgid "Package libiwinfo required!"
-msgstr ""
+msgstr "Paketet libiwinfo krävs!"
 
 msgid "Package lists are older than 24 hours"
-msgstr ""
+msgstr "Paket-listor är äldre än 24 timmar"
 
 msgid "Package name"
-msgstr ""
+msgstr "Paketnamn"
 
 msgid "Packets"
-msgstr ""
+msgstr "Paket"
 
 msgid "Part of zone %q"
-msgstr ""
+msgstr "Del av zon %q"
 
 msgid "Password"
-msgstr ""
+msgstr "Lösenord"
 
 msgid "Password authentication"
-msgstr ""
+msgstr "Lösenordsautentisering"
 
 msgid "Password of Private Key"
-msgstr ""
+msgstr "Den privata nyckelns lösenord"
 
 msgid "Password of inner Private Key"
-msgstr ""
+msgstr "Lösenordet för den inre privata nyckeln"
 
 msgid "Password successfully changed!"
-msgstr ""
+msgstr "Ändring av lösenordet lyckades!"
 
 msgid "Password2"
-msgstr ""
+msgstr "Lösenord2"
 
 msgid "Path to CA-Certificate"
-msgstr ""
+msgstr "Genväg till CA-certifikat"
 
 msgid "Path to Client-Certificate"
-msgstr ""
+msgstr "Genväg till klient-certifikat"
 
 msgid "Path to Private Key"
-msgstr ""
+msgstr "Genväg till privat nyckel"
 
 msgid "Path to executable which handles the button event"
 msgstr ""
 
 msgid "Path to inner CA-Certificate"
-msgstr ""
+msgstr "Genväg till det inre CA-certifikatet"
 
 msgid "Path to inner Client-Certificate"
-msgstr ""
+msgstr "Genväg till det inre klient-certifikatet"
 
 msgid "Path to inner Private Key"
-msgstr ""
+msgstr "Genväg till den inre privata nyckeln"
 
 msgid "Peak:"
 msgstr ""
@@ -2321,10 +2333,10 @@ msgid "Perfect Forward Secrecy"
 msgstr ""
 
 msgid "Perform reboot"
-msgstr ""
+msgstr "Utför omstart"
 
 msgid "Perform reset"
-msgstr ""
+msgstr "Utför återställning"
 
 msgid "Persistent Keep Alive"
 msgstr ""
@@ -2333,25 +2345,25 @@ msgid "Phy Rate:"
 msgstr ""
 
 msgid "Physical Settings"
-msgstr ""
+msgstr "Fysiska inställningar"
 
 msgid "Ping"
-msgstr ""
+msgstr "Ping"
 
 msgid "Pkts."
-msgstr ""
+msgstr "Pkt."
 
 msgid "Please enter your username and password."
-msgstr ""
+msgstr "Vänligen ange ditt användarnamn och lösenord."
 
 msgid "Policy"
 msgstr ""
 
 msgid "Port"
-msgstr ""
+msgstr "Port"
 
 msgid "Port status:"
-msgstr ""
+msgstr "Port-status:"
 
 msgid "Power Management Mode"
 msgstr ""
@@ -2360,10 +2372,10 @@ msgid "Pre-emtive CRC errors (CRCP_P)"
 msgstr ""
 
 msgid "Prefer LTE"
-msgstr ""
+msgstr "Föredra LTE"
 
 msgid "Prefer UMTS"
-msgstr ""
+msgstr "Föredra UMTS"
 
 msgid "Prefix Delegated"
 msgstr ""
@@ -2377,40 +2389,40 @@ msgid ""
 msgstr ""
 
 msgid "Prevent listening on these interfaces."
-msgstr ""
+msgstr "Förhindra lyssning på dessa gränssnitt."
 
 msgid "Prevents client-to-client communication"
-msgstr ""
+msgstr "Förhindrar kommunikation klient-till-klient"
 
 msgid "Prism2/2.5/3 802.11b Wireless Controller"
 msgstr ""
 
 msgid "Private Key"
-msgstr ""
+msgstr "Privat nyckel"
 
 msgid "Proceed"
-msgstr ""
+msgstr "Fortsätt"
 
 msgid "Processes"
-msgstr ""
+msgstr "Processer"
 
 msgid "Profile"
-msgstr ""
+msgstr "Profil"
 
 msgid "Prot."
-msgstr ""
+msgstr "Prot."
 
 msgid "Protocol"
-msgstr ""
+msgstr "Protokoll"
 
 msgid "Protocol family"
-msgstr ""
+msgstr "Protokoll-familj"
 
 msgid "Protocol of the new interface"
-msgstr ""
+msgstr "Det nya gränssnittets protokoll"
 
 msgid "Protocol support is not installed"
-msgstr ""
+msgstr "Stöd för protokoll är inte installerat"
 
 msgid "Provide NTP server"
 msgstr ""
@@ -2422,16 +2434,16 @@ msgid "Pseudo Ad-Hoc (ahdemo)"
 msgstr ""
 
 msgid "Public Key"
-msgstr ""
+msgstr "Publik nyckel"
 
 msgid "Public prefix routed to this device for distribution to clients."
 msgstr ""
 
 msgid "QMI Cellular"
-msgstr ""
+msgstr "QMI-telefoni"
 
 msgid "Quality"
-msgstr ""
+msgstr "Kvalité"
 
 msgid "R0 Key Lifetime"
 msgstr ""
@@ -2446,10 +2458,10 @@ msgid "RTS/CTS Threshold"
 msgstr ""
 
 msgid "RX"
-msgstr ""
+msgstr "RT"
 
 msgid "RX Rate"
-msgstr ""
+msgstr "RX-hastighet"
 
 msgid "RaLink 802.11%s Wireless Controller"
 msgstr ""
@@ -2476,6 +2488,8 @@ msgid ""
 "Read <code>/etc/ethers</code> to configure the <abbr title=\"Dynamic Host "
 "Configuration Protocol\">DHCP</abbr>-Server"
 msgstr ""
+"Läs <code>/etc/ethers</code> för att ställa in <abbr title=\"Dynamic Host "
+"Configuration Protocol\">DHCP</abbr>-servern"
 
 msgid ""
 "Really delete this interface? The deletion cannot be undone!\\nYou might "
@@ -2488,7 +2502,7 @@ msgid ""
 msgstr ""
 
 msgid "Really reset all changes?"
-msgstr ""
+msgstr "Verkligen återställa alla ändringar?"
 
 msgid ""
 "Really shut down network?\\nYou might lose access to this device if you are "
@@ -2501,22 +2515,22 @@ msgid ""
 msgstr ""
 
 msgid "Really switch protocol?"
-msgstr ""
+msgstr "Verkligen byta protokoll?"
 
 msgid "Realtime Connections"
-msgstr ""
+msgstr "Anslutningar i realtid"
 
 msgid "Realtime Graphs"
-msgstr ""
+msgstr "Realtidsgrafer"
 
 msgid "Realtime Load"
 msgstr ""
 
 msgid "Realtime Traffic"
-msgstr ""
+msgstr "Trafik i realtid"
 
 msgid "Realtime Wireless"
-msgstr ""
+msgstr "Trådlöst i realtid"
 
 msgid "Reassociation Deadline"
 msgstr ""
@@ -2525,43 +2539,43 @@ msgid "Rebind protection"
 msgstr ""
 
 msgid "Reboot"
-msgstr ""
+msgstr "Starta om"
 
 msgid "Rebooting..."
-msgstr ""
+msgstr "Startar om..."
 
 msgid "Reboots the operating system of your device"
-msgstr ""
+msgstr "Startar om din enhets operativsystem"
 
 msgid "Receive"
-msgstr ""
+msgstr "Ta emot"
 
 msgid "Receiver Antenna"
-msgstr ""
+msgstr "Mottagningsantenn"
 
 msgid "Recommended. IP addresses of the WireGuard interface."
-msgstr ""
+msgstr "Rekommenderad. WireGuard-gränssnittets IP-adress"
 
 msgid "Reconnect this interface"
-msgstr ""
+msgstr "Återanslut det här gränssnittet"
 
 msgid "Reconnecting interface"
-msgstr ""
+msgstr "Återansluter gränssnittet"
 
 msgid "References"
-msgstr ""
+msgstr "Referens"
 
 msgid "Relay"
-msgstr ""
+msgstr "Relä"
 
 msgid "Relay Bridge"
-msgstr ""
+msgstr "Relä-brygga"
 
 msgid "Relay between networks"
-msgstr ""
+msgstr "Relä mellan nätverk"
 
 msgid "Relay bridge"
-msgstr ""
+msgstr "Relä-brygga"
 
 msgid "Remote IPv4 address"
 msgstr ""
@@ -2570,16 +2584,16 @@ msgid "Remote IPv4 address or FQDN"
 msgstr ""
 
 msgid "Remove"
-msgstr ""
+msgstr "Ta bort"
 
 msgid "Repeat scan"
-msgstr ""
+msgstr "Repetera skanning"
 
 msgid "Replace entry"
 msgstr ""
 
 msgid "Replace wireless configuration"
-msgstr ""
+msgstr "Ersätt trådlös konfiguration"
 
 msgid "Request IPv6-address"
 msgstr ""
@@ -2588,10 +2602,10 @@ msgid "Request IPv6-prefix of length"
 msgstr ""
 
 msgid "Require TLS"
-msgstr ""
+msgstr "Kräv TLS"
 
 msgid "Required"
-msgstr ""
+msgstr "Krävs!"
 
 msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3"
 msgstr ""
@@ -2619,49 +2633,49 @@ msgid ""
 msgstr ""
 
 msgid "Reset"
-msgstr ""
+msgstr "Återställ"
 
 msgid "Reset Counters"
-msgstr ""
+msgstr "Återställ räknare"
 
 msgid "Reset to defaults"
-msgstr ""
+msgstr "Återställ till standard"
 
 msgid "Resolv and Hosts Files"
-msgstr ""
+msgstr "Resolv och Värd-filer"
 
 msgid "Resolve file"
-msgstr ""
+msgstr "Resolv-fil"
 
 msgid "Restart"
-msgstr ""
+msgstr "Starta om"
 
 msgid "Restart Firewall"
-msgstr ""
+msgstr "Starta om brandvägg"
 
 msgid "Restore backup"
-msgstr ""
+msgstr "Återställ säkerhetskopian"
 
 msgid "Reveal/hide password"
-msgstr ""
+msgstr "Visa/göm lösenord"
 
 msgid "Revert"
-msgstr ""
+msgstr "Återgå"
 
 msgid "Root"
-msgstr ""
+msgstr "Root"
 
 msgid "Root directory for files served via TFTP"
-msgstr ""
+msgstr "Root-mappen för filer som skickas via TFTP"
 
 msgid "Root preparation"
-msgstr ""
+msgstr "Root-förberedelse"
 
 msgid "Route Allowed IPs"
 msgstr ""
 
 msgid "Route type"
-msgstr ""
+msgstr "Typ av rutt"
 
 msgid "Routed IPv6 prefix for downstream interfaces"
 msgstr ""
@@ -2670,10 +2684,10 @@ msgid "Router Advertisement-Service"
 msgstr ""
 
 msgid "Router Password"
-msgstr ""
+msgstr "Router-lösenord"
 
 msgid "Routes"
-msgstr ""
+msgstr "Rutter"
 
 msgid ""
 "Routes specify over which interface and gateway a certain host or network "
@@ -2681,13 +2695,13 @@ msgid ""
 msgstr ""
 
 msgid "Run a filesystem check before mounting the device"
-msgstr ""
+msgstr "Kör en filsystemskontroll innan enheten monteras"
 
 msgid "Run filesystem check"
-msgstr ""
+msgstr "Kör filsystemskontrollen"
 
 msgid "SHA256"
-msgstr ""
+msgstr "SHA256"
 
 msgid ""
 "SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) "
@@ -2698,46 +2712,46 @@ msgid "SIXXS-handle[/Tunnel-ID]"
 msgstr ""
 
 msgid "SNR"
-msgstr ""
+msgstr "SNR"
 
 msgid "SSH Access"
-msgstr ""
+msgstr "SSH-åtkomst"
 
 msgid "SSH server address"
-msgstr ""
+msgstr "SSH-serverns adress"
 
 msgid "SSH server port"
-msgstr ""
+msgstr "SSH-serverns port"
 
 msgid "SSH username"
-msgstr ""
+msgstr "Användarnamn för SSH"
 
 msgid "SSH-Keys"
-msgstr ""
+msgstr "SSH-nycklar"
 
 msgid "SSID"
-msgstr ""
+msgstr "SSID"
 
 msgid "Save"
-msgstr ""
+msgstr "Spara"
 
 msgid "Save & Apply"
-msgstr ""
+msgstr "Spara och Verkställ"
 
 msgid "Save &#38; Apply"
-msgstr ""
+msgstr "Spara &#38; Verkställ"
 
 msgid "Scan"
-msgstr ""
+msgstr "Skanna"
 
 msgid "Scheduled Tasks"
-msgstr ""
+msgstr "Schemalagda uppgifter"
 
 msgid "Section added"
-msgstr ""
+msgstr "Sektionen lades till"
 
 msgid "Section removed"
-msgstr ""
+msgstr "Sektionen togs bort"
 
 msgid "See \"mount\" manpage for details"
 msgstr ""
@@ -2748,13 +2762,13 @@ msgid ""
 msgstr ""
 
 msgid "Separate Clients"
-msgstr ""
+msgstr "Separera klienter"
 
 msgid "Server Settings"
-msgstr ""
+msgstr "Inställningar för server"
 
 msgid "Server password"
-msgstr ""
+msgstr "Lösenordet för servern"
 
 msgid ""
 "Server password, enter the specific password of the tunnel when the username "
@@ -2762,16 +2776,16 @@ msgid ""
 msgstr ""
 
 msgid "Server username"
-msgstr ""
+msgstr "Användarnamnet för servern"
 
 msgid "Service Name"
-msgstr ""
+msgstr "Namn på tjänst"
 
 msgid "Service Type"
-msgstr ""
+msgstr "Typ av tjänst"
 
 msgid "Services"
-msgstr ""
+msgstr "Tjänster"
 
 msgid ""
 "Set interface properties regardless of the link carrier (If set, carrier "
@@ -2779,10 +2793,10 @@ msgid ""
 msgstr ""
 
 msgid "Set up Time Synchronization"
-msgstr ""
+msgstr "Ställ in Tidssynkronisering"
 
 msgid "Setup DHCP Server"
-msgstr ""
+msgstr "Ställ in DHCP-server"
 
 msgid "Severely Errored Seconds (SES)"
 msgstr ""
@@ -2794,52 +2808,52 @@ msgid "Show current backup file list"
 msgstr ""
 
 msgid "Shutdown this interface"
-msgstr ""
+msgstr "Stäng ner det här gränssnittet"
 
 msgid "Shutdown this network"
-msgstr ""
+msgstr "Stäng ner det här nätverket"
 
 msgid "Signal"
-msgstr ""
+msgstr "Signal"
 
 msgid "Signal Attenuation (SATN)"
 msgstr ""
 
 msgid "Signal:"
-msgstr ""
+msgstr "Signal:"
 
 msgid "Size"
-msgstr ""
+msgstr "Storlek"
 
 msgid "Size (.ipk)"
-msgstr ""
+msgstr "Storlek (.ipk)"
 
 msgid "Skip"
-msgstr ""
+msgstr "Hoppa över"
 
 msgid "Skip to content"
-msgstr ""
+msgstr "Hoppa över till innehåll"
 
 msgid "Skip to navigation"
-msgstr ""
+msgstr "Hoppa över till navigering"
 
 msgid "Slot time"
 msgstr ""
 
 msgid "Software"
-msgstr ""
+msgstr "Mjukvara"
 
 msgid "Software VLAN"
 msgstr ""
 
 msgid "Some fields are invalid, cannot save values!"
-msgstr ""
+msgstr "Några fält är ogiltiga, kan inte spara värden!"
 
 msgid "Sorry, the object you requested was not found."
-msgstr ""
+msgstr "Tyvärr, objektet som du frågade efter kunde inte hittas."
 
 msgid "Sorry, the server encountered an unexpected error."
-msgstr ""
+msgstr "Tyvärr, servern stötte på ett oväntat fel."
 
 msgid ""
 "Sorry, there is no sysupgrade support present; a new firmware image must be "
@@ -2848,10 +2862,10 @@ msgid ""
 msgstr ""
 
 msgid "Sort"
-msgstr ""
+msgstr "Sortera"
 
 msgid "Source"
-msgstr ""
+msgstr "Källa"
 
 msgid "Source routing"
 msgstr ""
@@ -2863,7 +2877,7 @@ msgid "Specifies the directory the device is attached to"
 msgstr ""
 
 msgid "Specifies the listening port of this <em>Dropbear</em> instance"
-msgstr ""
+msgstr "Anger lyssningsporten för den här <em>Dropbear</em>-instansen"
 
 msgid ""
 "Specifies the maximum amount of failed ARP requests until hosts are presumed "
@@ -2876,7 +2890,7 @@ msgid ""
 msgstr ""
 
 msgid "Specify a TOS (Type of Service)."
-msgstr ""
+msgstr "Ange en TaT (Typ av Tjänst)."
 
 msgid ""
 "Specify a TTL (Time to Live) for the encapsulating packet other than the "
@@ -2889,7 +2903,7 @@ msgid ""
 msgstr ""
 
 msgid "Specify the secret encryption key here."
-msgstr ""
+msgstr "Ange den hemliga krypteringsnyckeln här."
 
 msgid "Start"
 msgstr ""
@@ -2901,19 +2915,19 @@ msgid "Startup"
 msgstr ""
 
 msgid "Static IPv4 Routes"
-msgstr ""
+msgstr "Statiska IPv4-rutter"
 
 msgid "Static IPv6 Routes"
-msgstr ""
+msgstr "Statiska IPv6-rutter"
 
 msgid "Static Leases"
 msgstr ""
 
 msgid "Static Routes"
-msgstr ""
+msgstr "Statiska rutter"
 
 msgid "Static address"
-msgstr ""
+msgstr "Statiska adresser"
 
 msgid ""
 "Static leases are used to assign fixed IP addresses and symbolic hostnames "
@@ -2922,16 +2936,16 @@ msgid ""
 msgstr ""
 
 msgid "Status"
-msgstr ""
+msgstr "Status"
 
 msgid "Stop"
 msgstr ""
 
 msgid "Strict order"
-msgstr ""
+msgstr "Strikt sortering"
 
 msgid "Submit"
-msgstr ""
+msgstr "Skicka in"
 
 msgid "Suppress logging"
 msgstr ""
@@ -2940,71 +2954,71 @@ msgid "Suppress logging of the routine operation of these protocols"
 msgstr ""
 
 msgid "Swap"
-msgstr ""
+msgstr "Swap"
 
 msgid "Swap Entry"
 msgstr ""
 
 msgid "Switch"
-msgstr ""
+msgstr "Byt"
 
 msgid "Switch %q"
-msgstr ""
+msgstr "Byt %q"
 
 msgid "Switch %q (%s)"
-msgstr ""
+msgstr "Byt %q (%s)"
 
 msgid ""
 "Switch %q has an unknown topology - the VLAN settings might not be accurate."
 msgstr ""
 
 msgid "Switch VLAN"
-msgstr ""
+msgstr "Byt VLAN"
 
 msgid "Switch protocol"
-msgstr ""
+msgstr "Byt protokoll"
 
 msgid "Sync with browser"
-msgstr ""
+msgstr "Synkronisera med webbläsare"
 
 msgid "Synchronizing..."
-msgstr ""
+msgstr "Synkroniserar..."
 
 msgid "System"
-msgstr ""
+msgstr "System"
 
 msgid "System Log"
-msgstr ""
+msgstr "Systemlogg"
 
 msgid "System Properties"
-msgstr ""
+msgstr "Systemets egenskaper"
 
 msgid "System log buffer size"
 msgstr ""
 
 msgid "TCP:"
-msgstr ""
+msgstr "TCP:"
 
 msgid "TFTP Settings"
-msgstr ""
+msgstr "Inställningar för TFTP"
 
 msgid "TFTP server root"
-msgstr ""
+msgstr "Root för TFTP-server"
 
 msgid "TX"
-msgstr ""
+msgstr "TX"
 
 msgid "TX Rate"
-msgstr ""
+msgstr "TX-hastighet"
 
 msgid "Table"
-msgstr ""
+msgstr "Tabell"
 
 msgid "Target"
-msgstr ""
+msgstr "Mål"
 
 msgid "Target network"
-msgstr ""
+msgstr "Målnätverk"
 
 msgid "Terminate"
 msgstr ""
@@ -3061,7 +3075,7 @@ msgid ""
 msgstr ""
 
 msgid "The following changes have been committed"
-msgstr ""
+msgstr "Följande ändringar har skickats in"
 
 msgid "The following changes have been reverted"
 msgstr ""
@@ -3070,7 +3084,7 @@ msgid "The following rules are currently active on this system."
 msgstr ""
 
 msgid "The given network name is not unique"
-msgstr ""
+msgstr "Det angivna nätverksnamnet är inte unikt"
 
 msgid ""
 "The hardware is not multi-SSID capable and the existing configuration will "
@@ -3126,16 +3140,16 @@ msgid ""
 msgstr ""
 
 msgid "There are no active leases."
-msgstr ""
+msgstr "Det finns inga aktiva kontrakt."
 
 msgid "There are no pending changes to apply!"
-msgstr ""
+msgstr "Det finns inga pendlande ändringar att verkställa!"
 
 msgid "There are no pending changes to revert!"
-msgstr ""
+msgstr "Det finns inga pendlande ändringar att återkalla"
 
 msgid "There are no pending changes!"
-msgstr ""
+msgstr "Det finns inga pendlande ändringar!"
 
 msgid ""
 "There is no device assigned yet, please attach a network device in the "
@@ -3146,6 +3160,8 @@ msgid ""
 "There is no password set on this router. Please configure a root password to "
 "protect the web interface and enable SSH."
 msgstr ""
+"Det finns inget lösenord inställt på den här routern. Vänligen ställ in ett root-lösenord för att "
+"skydda webbgränssnittet och för att aktivera SSH."
 
 msgid "This IPv4 address of the relay"
 msgstr ""
@@ -3211,39 +3227,40 @@ msgid "This section contains no values yet"
 msgstr ""
 
 msgid "Time Synchronization"
-msgstr ""
+msgstr "Synkronisering av tid"
 
 msgid "Time Synchronization is not configured yet."
-msgstr ""
+msgstr "Synkronisering av tid är inte inställd än."
 
 msgid "Timezone"
-msgstr ""
+msgstr "Tidszon"
 
 msgid ""
 "To restore configuration files, you can upload a previously generated backup "
 "archive here."
-msgstr ""
+msgstr "För att återställa konfigurationsfiler så kan du ladda upp ett tidigare genererat säkerhetskopierings "
+"arkiv här."
 
 msgid "Tone"
-msgstr ""
+msgstr "Ton"
 
 msgid "Total Available"
-msgstr ""
+msgstr "Totalt tillgängligt"
 
 msgid "Traceroute"
-msgstr ""
+msgstr "Traceroute"
 
 msgid "Traffic"
-msgstr ""
+msgstr "Trafik"
 
 msgid "Transfer"
-msgstr ""
+msgstr "Överför"
 
 msgid "Transmission Rate"
-msgstr ""
+msgstr "Överföringshastighet"
 
 msgid "Transmit"
-msgstr ""
+msgstr "Överför"
 
 msgid "Transmit Power"
 msgstr ""
@@ -3258,13 +3275,13 @@ msgid "Trigger Mode"
 msgstr ""
 
 msgid "Tunnel ID"
-msgstr ""
+msgstr "Tunnel-ID"
 
 msgid "Tunnel Interface"
-msgstr ""
+msgstr "Tunnelgränssnitt"
 
 msgid "Tunnel Link"
-msgstr ""
+msgstr "Tunnel-länk"
 
 msgid "Tunnel broker protocol"
 msgstr ""
@@ -3273,58 +3290,58 @@ msgid "Tunnel setup server"
 msgstr ""
 
 msgid "Tunnel type"
-msgstr ""
+msgstr "Tunnel-typ"
 
 msgid "Tx-Power"
 msgstr ""
 
 msgid "Type"
-msgstr ""
+msgstr "Typ"
 
 msgid "UDP:"
-msgstr ""
+msgstr "UDP:"
 
 msgid "UMTS only"
-msgstr ""
+msgstr "Endast UMTS"
 
 msgid "UMTS/GPRS/EV-DO"
-msgstr ""
+msgstr "UMTS/GPRS/EV-DO"
 
 msgid "USB Device"
-msgstr ""
+msgstr "USB-enhet"
 
 msgid "USB Ports"
-msgstr ""
+msgstr "USB-portar"
 
 msgid "UUID"
-msgstr ""
+msgstr "UUID"
 
 msgid "Unable to dispatch"
-msgstr ""
+msgstr "Det går inte att skicka"
 
 msgid "Unavailable Seconds (UAS)"
-msgstr ""
+msgstr "Otillgängliga Sekunder (UAS)"
 
 msgid "Unknown"
-msgstr ""
+msgstr "Okänd"
 
 msgid "Unknown Error, password not changed!"
-msgstr ""
+msgstr "Okänt fel, lösenordet ändrades inte!"
 
 msgid "Unmanaged"
 msgstr ""
 
 msgid "Unmount"
-msgstr ""
+msgstr "Avmontera"
 
 msgid "Unsaved Changes"
-msgstr ""
+msgstr "Osparade ändringar"
 
 msgid "Unsupported protocol type."
-msgstr ""
+msgstr "Protokolltypen stöds inte."
 
 msgid "Update lists"
-msgstr ""
+msgstr "Uppdatera listor"
 
 msgid ""
 "Upload a sysupgrade-compatible image here to replace the running firmware. "
@@ -3333,19 +3350,19 @@ msgid ""
 msgstr ""
 
 msgid "Upload archive..."
-msgstr ""
+msgstr "Ladda upp arkiv..."
 
 msgid "Uploaded File"
-msgstr ""
+msgstr "Laddade upp fil"
 
 msgid "Uptime"
-msgstr ""
+msgstr "Upptid"
 
 msgid "Use <code>/etc/ethers</code>"
-msgstr ""
+msgstr "Använd <code>/etc/ethers</code>"
 
 msgid "Use DHCP gateway"
-msgstr ""
+msgstr "Använd DHCP-gateway"
 
 msgid "Use DNS servers advertised by peer"
 msgstr ""
@@ -3363,7 +3380,7 @@ msgid "Use as external overlay (/overlay)"
 msgstr ""
 
 msgid "Use as root filesystem (/)"
-msgstr ""
+msgstr "Använd som root-filsystem (/)"
 
 msgid "Use broadcast flag"
 msgstr ""
@@ -3372,10 +3389,10 @@ msgid "Use builtin IPv6-management"
 msgstr ""
 
 msgid "Use custom DNS servers"
-msgstr ""
+msgstr "Använd anpassade DNS-servrar"
 
 msgid "Use default gateway"
-msgstr ""
+msgstr "Använd standard-gateway"
 
 msgid "Use gateway metric"
 msgstr ""
@@ -3403,19 +3420,19 @@ msgid ""
 msgstr ""
 
 msgid "User certificate (PEM encoded)"
-msgstr ""
+msgstr "Användarcertifikat (PEM-krypterad)"
 
 msgid "User key (PEM encoded)"
-msgstr ""
+msgstr "Användarnyckel (PEM-krypterad)"
 
 msgid "Username"
-msgstr ""
+msgstr "Användarnamn"
 
 msgid "VC-Mux"
-msgstr ""
+msgstr "VC-Mux"
 
 msgid "VDSL"
-msgstr ""
+msgstr "VDSL"
 
 msgid "VLANs on %q"
 msgstr ""
@@ -3424,16 +3441,16 @@ msgid "VLANs on %q (%s)"
 msgstr ""
 
 msgid "VPN Local address"
-msgstr ""
+msgstr "Lokal adress för VPN"
 
 msgid "VPN Local port"
-msgstr ""
+msgstr "Lokal port för VPN"
 
 msgid "VPN Server"
-msgstr ""
+msgstr "VPN-server"
 
 msgid "VPN Server port"
-msgstr ""
+msgstr "Port för VPN-server"
 
 msgid "VPN Server's certificate SHA1 hash"
 msgstr ""
@@ -3442,40 +3459,40 @@ msgid "VPNC (CISCO 3000 (and others) VPN)"
 msgstr ""
 
 msgid "Vendor"
-msgstr ""
+msgstr "Tillverkare"
 
 msgid "Vendor Class to send when requesting DHCP"
 msgstr ""
 
 msgid "Verbose"
-msgstr ""
+msgstr "Utförlig"
 
 msgid "Verbose logging by aiccu daemon"
 msgstr ""
 
 msgid "Verify"
-msgstr ""
+msgstr "Verkställ"
 
 msgid "Version"
-msgstr ""
+msgstr "Version"
 
 msgid "WDS"
-msgstr ""
+msgstr "WDS"
 
 msgid "WEP Open System"
-msgstr ""
+msgstr "Öppet System WEP"
 
 msgid "WEP Shared Key"
 msgstr ""
 
 msgid "WEP passphrase"
-msgstr ""
+msgstr "WEP-lösenordsfras"
 
 msgid "WMM Mode"
-msgstr ""
+msgstr "WMM-läge"
 
 msgid "WPA passphrase"
-msgstr ""
+msgstr "WPA-lösenordsfras"
 
 msgid ""
 "WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP "
@@ -3487,19 +3504,19 @@ msgid ""
 msgstr ""
 
 msgid "Waiting for changes to be applied..."
-msgstr ""
+msgstr "Väntar på att ändringarna ska tillämpas..."
 
 msgid "Waiting for command to complete..."
-msgstr ""
+msgstr "Väntar på att kommandot ska avsluta..."
 
 msgid "Waiting for device..."
-msgstr ""
+msgstr "Väntar på enheten..."
 
 msgid "Warning"
-msgstr ""
+msgstr "Varning"
 
 msgid "Warning: There are unsaved changes that will get lost on reboot!"
-msgstr ""
+msgstr "Varning: Det finns osparade ändringar som kommer att förloras vid omstart!"
 
 msgid "Whether to create an IPv6 default route over the tunnel"
 msgstr ""
@@ -3508,49 +3525,56 @@ msgid "Whether to route only packets from delegated prefixes"
 msgstr ""
 
 msgid "Width"
-msgstr ""
+msgstr "Bredd"
 
 msgid "WireGuard VPN"
 msgstr ""
 
 msgid "Wireless"
-msgstr ""
+msgstr "Trådlöst"
 
 msgid "Wireless Adapter"
-msgstr ""
+msgstr "Trådlös adapter"
 
 msgid "Wireless Network"
-msgstr ""
+msgstr "Trådlöst nätverk"
 
 msgid "Wireless Overview"
-msgstr ""
+msgstr "Trådlös överblick"
 
 msgid "Wireless Security"
-msgstr ""
+msgstr "Trådlös säkerhet"
 
 msgid "Wireless is disabled or not associated"
-msgstr ""
+msgstr "Trådlöst är avstängt eller inte associerat"
 
 msgid "Wireless is restarting..."
-msgstr ""
+msgstr "Trådlöst startar om..."
 
 msgid "Wireless network is disabled"
-msgstr ""
+msgstr "Trådlöst nätverk är avstängt"
 
 msgid "Wireless network is enabled"
-msgstr ""
+msgstr "Trådlöst nätverk är aktiverat"
 
 msgid "Wireless restarted"
-msgstr ""
+msgstr "Trådlöst startade om"
 
 msgid "Wireless shut down"
+msgstr "Trådlöst stängde ner"
+
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
 msgstr ""
 
 msgid "Write received DNS requests to syslog"
-msgstr ""
+msgstr "Skriv mottagna DNS-förfrågningar till syslogg"
 
 msgid "Write system log to file"
-msgstr ""
+msgstr "Skriv systemlogg till fil"
 
 msgid ""
 "You can enable or disable installed init scripts here. Changes will applied "
@@ -3561,42 +3585,46 @@ msgstr ""
 msgid ""
 "You must enable JavaScript in your browser or LuCI will not work properly."
 msgstr ""
+"Du måste aktivera JavaScript i din webbläsare, annars kommer inte LuCi att fungera korrekt."
 
 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 ""
+"Din Internet Explorer är för gammal för att visa den här sidan korrekt. Vänligen "
+"uppgradera den till minst version 7 eller använd en annan webbläsare till exempel Firefox, Opera "
+"eller Safari."
 
 msgid "any"
-msgstr ""
+msgstr "något"
 
 msgid "auto"
-msgstr ""
+msgstr "auto"
 
 msgid "baseT"
 msgstr ""
 
 msgid "bridged"
-msgstr ""
+msgstr "bryggad"
 
 msgid "create:"
-msgstr ""
+msgstr "skapa:"
 
 msgid "creates a bridge over specified interface(s)"
-msgstr ""
+msgstr "skapar en brygga över angivna gränssnitt(en)"
 
 msgid "dB"
-msgstr ""
+msgstr "dB"
 
 msgid "dBm"
-msgstr ""
+msgstr "dBm"
 
 msgid "disable"
-msgstr ""
+msgstr "stäng ner"
 
 msgid "disabled"
-msgstr ""
+msgstr "avstängd"
 
 msgid "expired"
 msgstr ""
@@ -3607,79 +3635,79 @@ msgid ""
 msgstr ""
 
 msgid "forward"
-msgstr ""
+msgstr "vidarebefordra"
 
 msgid "full-duplex"
-msgstr ""
+msgstr "full-duplex"
 
 msgid "half-duplex"
-msgstr ""
+msgstr "halv-duplex"
 
 msgid "help"
-msgstr ""
+msgstr "hjälp"
 
 msgid "hidden"
-msgstr ""
+msgstr "gömd"
 
 msgid "hybrid mode"
-msgstr ""
+msgstr "hybrid-läge"
 
 msgid "if target is a network"
-msgstr ""
+msgstr "om målet är ett nätverk"
 
 msgid "input"
-msgstr ""
+msgstr "inmatning"
 
 msgid "kB"
-msgstr ""
+msgstr "kB"
 
 msgid "kB/s"
-msgstr ""
+msgstr "kB/s"
 
 msgid "kbit/s"
-msgstr ""
+msgstr "kbit/s"
 
 msgid "local <abbr title=\"Domain Name System\">DNS</abbr> file"
-msgstr ""
+msgstr "lokal <abbr title=\"Domain Name System\">DNS</abbr>-fil"
 
 msgid "minimum 1280, maximum 1480"
 msgstr ""
 
 msgid "minutes"
-msgstr ""
+msgstr "minuter"
 
 msgid "no"
-msgstr ""
+msgstr "nej"
 
 msgid "no link"
-msgstr ""
+msgstr "ingen länk"
 
 msgid "none"
 msgstr ""
 
 msgid "not present"
-msgstr ""
+msgstr "inte tillgängligt"
 
 msgid "off"
-msgstr ""
+msgstr "av"
 
 msgid "on"
-msgstr ""
+msgstr ""
 
 msgid "open"
-msgstr ""
+msgstr "öppen"
 
 msgid "overlay"
 msgstr ""
 
 msgid "relay mode"
-msgstr ""
+msgstr "relä-läge"
 
 msgid "routed"
 msgstr ""
 
 msgid "server mode"
-msgstr ""
+msgstr "server-läge"
 
 msgid "stateful-only"
 msgstr ""
@@ -3691,28 +3719,28 @@ msgid "stateless + stateful"
 msgstr ""
 
 msgid "tagged"
-msgstr ""
+msgstr "taggad"
 
 msgid "time units (TUs / 1.024 ms) [1000-65535]"
 msgstr ""
 
 msgid "unknown"
-msgstr ""
+msgstr "okänd"
 
 msgid "unlimited"
-msgstr ""
+msgstr "obegränsat"
 
 msgid "unspecified"
-msgstr ""
+msgstr "ospecifierat"
 
 msgid "unspecified -or- create:"
-msgstr ""
+msgstr "ospecifierat -eller- skapa:"
 
 msgid "untagged"
-msgstr ""
+msgstr "otaggat"
 
 msgid "yes"
-msgstr ""
+msgstr "ja"
 
 msgid "« Back"
-msgstr ""
+msgstr "« Bakåt"
index a8a336a6e42b790b7b5b95146b34d97eebff6ac3..ba569aaa81741dc011b0393549068a6115d8ba43 100644 (file)
@@ -970,6 +970,9 @@ msgstr ""
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3533,6 +3536,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index 5efad9e82b2ae1bdcc31899e06fc6bbeaf54e1d0..7c95a348718dc0a4aa3a9ac7578d80edadd10e33 100644 (file)
@@ -990,6 +990,9 @@ msgstr ""
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3553,6 +3556,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index d2db414ed2d43692aae63a3f084c54d6376a843f..787a90279c466b22a3d31315fc9d16da3d2762d8 100644 (file)
@@ -1051,6 +1051,9 @@ msgstr "Увімкнути підтримку VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "Увімкнути learning та aging"
 
@@ -3762,6 +3765,13 @@ msgstr "Бездротова мережа перезапущена"
 msgid "Wireless shut down"
 msgstr "Бездротова мережа припинила роботу"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "Записувати отримані DNS-запити до системного журналу"
 
index 2294c9cb906d75f8c4b52759fcc67ac8e19e415e..6600c90bd91b9f7720a1ae94e966c7d77ec9c1f8 100644 (file)
@@ -995,6 +995,9 @@ msgstr ""
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr ""
 
@@ -3595,6 +3598,13 @@ msgstr ""
 msgid "Wireless shut down"
 msgstr ""
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr ""
 
index f0eef125bb63e3fcdbff6317b1c84e7f20ad58e2..109110cc5a4c41dff8f7f035d9108eba912926dd 100644 (file)
@@ -1001,6 +1001,9 @@ msgstr "启用 VLAN"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr "启用 WPS 一键加密按钮,需要 WPA(2)-PSK"
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "启用智能交换学习"
 
@@ -3641,6 +3644,13 @@ msgstr "无线已重启"
 msgid "Wireless shut down"
 msgstr "无线已关闭"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "将收到的 DNS 请求写入系统日志"
 
index 53afa72bebbeb20c193fb6921c91a3b0244da1b5..e0ca7780b5c14da8483c0cea7bef1a9a9b709829 100644 (file)
@@ -1007,6 +1007,9 @@ msgstr "啟用VLAN功能"
 msgid "Enable WPS pushbutton, requires WPA(2)-PSK"
 msgstr ""
 
+msgid "Enable key reinstallation (KRACK) countermeasures"
+msgstr ""
+
 msgid "Enable learning and aging"
 msgstr "啟用智慧學習功能"
 
@@ -3634,6 +3637,13 @@ msgstr "無線網路已重啟"
 msgid "Wireless shut down"
 msgstr "無線網路關閉"
 
+msgid ""
+"Complicates key reinstallation attacks on the client side by disabling "
+"retransmission of EAPOL-Key frames that are used to install keys. This "
+"workaround might cause interoperability issues and reduced robustness of key "
+"negotiation especially in environments with heavy traffic load."
+msgstr ""
+
 msgid "Write received DNS requests to syslog"
 msgstr "寫入已接收的DNS請求到系統日誌中"
 
index 51913729dc6489bb178903e284bf8b4fc6236d81..f9a2dee6ce45bc6ed8fc7d5b56686b3aa132f98b 100644 (file)
@@ -460,7 +460,7 @@ if hwtype == "mac80211" then
        wmm:depends({mode="ap"})
        wmm:depends({mode="ap-wds"})
        wmm.default = wmm.enabled
-       
+
        isolate = s:taboption("advanced", Flag, "isolate", translate("Isolate Clients"),
         translate("Prevents client-to-client communication"))
        isolate:depends({mode="ap"})
@@ -981,43 +981,54 @@ end
 
 -- 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
+       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
+
+       local key_retries = s:taboption("encryption", Flag, "wpa_disable_eapol_key_retries",
+               translate("Enable key reinstallation (KRACK) countermeasures"),
+               translate("Complicates key reinstallation attacks on the client side by disabling retransmission of EAPOL-Key frames that are used to install keys. This workaround might cause interoperability issues and reduced robustness of key negotiation especially in environments with heavy traffic load."))
+
+       key_retries:depends({mode="ap", encryption="wpa2"})
+       key_retries:depends({mode="ap", encryption="psk2"})
+       key_retries:depends({mode="ap", encryption="psk-mixed"})
+       key_retries:depends({mode="ap-wds", encryption="wpa2"})
+       key_retries:depends({mode="ap-wds", encryption="psk2"})
+       key_retries:depends({mode="ap-wds", encryption="psk-mixed"})
 end
 
 if hwtype == "mac80211" or hwtype == "prism2" then
index c119b572963b8f94056785e6db14e45f5fdaaf89..1a8770ef88f93a877685024a20e5f187f168bf3e 100644 (file)
@@ -7,6 +7,6 @@
 <%+header%>
 <h2 name="content"><%:Kernel Log%></h2>
 <div id="content_syslog">
-<textarea readonly="readonly" wrap="off" rows="<%=dmesg:cmatch("\n")+2%>" id="syslog"><%=dmesg:pcdata()%></textarea>
+<textarea style="font-size: 12px;" readonly="readonly" wrap="off" rows="<%=dmesg:cmatch("\n")+2%>" id="syslog"><%=dmesg:pcdata()%></textarea>
 </div>
 <%+footer%>
index b87f21d08d307c33349454b2db076e8a05d6c6df..fb734a76d96f7ef46f9c5fe165a80a8966cc51dd 100644 (file)
@@ -7,6 +7,6 @@
 <%+header%>
 <h2 name="content"><%:System Log%></h2>
 <div id="content_syslog">
-<textarea readonly="readonly" wrap="off" rows="<%=syslog:cmatch("\n")+2%>" id="syslog"><%=syslog:pcdata()%></textarea>
+<textarea style="font-size: 12px;" readonly="readonly" wrap="off" rows="<%=syslog:cmatch("\n")+2%>" id="syslog"><%=syslog:pcdata()%></textarea>
 </div>
 <%+footer%>